Project A: Proposal
Descrption: I tried several different motions in these three drafts, including oscillation, size translation, circular motion and linear motion to prepare for my imaginary creature.
My imaginary creature is one kind of slime mold that changes opacity and color from time to time, depending on how long it had lived and what it had eaten. I mainly used the random walker model (credit: The Coding Train), changed how the dot moves and changes sizes to make it feel like growing. When it had grown out of the canvas, it would die (stop growing) and another mold will be growing from a random position on the canvas. The opacity of the stroke will increase as the mold grows, to imitate the gathering process of this creature. I used random function and floor function to define the future action of the mold (to move to which direction), and used several if functions to describe the movement of the circle. My code can be found here.
I’m planning to add some keyboard actions to this project, so the player can choose to feed this mold. For example, when it is fed with strawberry, it will grow red; when fed with blueberry, it will grow blue. The player can also feed it with poizon to kill the mold immediately and have a new one grow again, if they don’t like it.
I also tried to apply random walker model to circular motion, but its performance was not ideal. Perhaps I can just add more choices to the original one to make the movement more dynamic. I used map function to connect the position or time values to color values to make the change of color more subtle and harmonious than filling the shapes with completely random color.
In addition to this, I tries to change the radius and angle of the circular movement at the same time to make the circle move in a spiral track. This technique can be applied to draw some beautiful background for this project.