Princess Florum will perform a customizable dance. The user will use keystrokes to select between three iconic dance moves. Blocks and bubbles will animate in the background. There will also be a music loop playing.
Princess Florum will move with the users mouse, but her tentacles will drag naturally as if through fluid. Mouse clicks will control her expression and make her sing. Blocks and bubbles will animate in the background. Music will play.
I have decided to go with concept one, because it seem like more fun to see Florum's different dance moves.
I am going to create the random rectangles for the background as objects. Borrowing from the method Orlando Rivera established in the link below, I should be able to make the rectangle objects randomize once a second.
The random, repeating bubbles will remain as objects. I don't plan to change those at this time.
For Florum, I think I will keep her instances as functions, since I don't need hundreds of her. She will start with a static position. Users will be able to activate different dance moves with keystrokes; this will require me to use conditional loops to call the functions containing the animated dance moves.
Move One: Her tentacles animate like a sine wave. This will require me to learn how to create this animation programmatically, but I remember seeing something similar to this on the Processing website.
Move Two: Her tail segments will wiggle back and forth. Again, I will have to learn how to embed this animation in this instance of Florum, but I believe have have the references to make it happen.
Move Three: Florum will sway back and forth (hopefully to the beat). I think if a use a timer to control the motion of her body and tentacles, then I should be able to keep her on the beat.
I have not added a sound loop in Processing yet, so I will have to learn the method for this. The reference material makes this part look pretty simple and straightforward.
*I am also thinking about having Florum say "Woop" when the user clicks the mouse. I think that would need just a simple conditional to activate the sound.
Thank you, Orlando Rivera! Orlando's execution of the coding for this project really stood out to me as excellent. Although the changing starfield in the background of this sketch seems simple, the code to make it happen is not. I tried several methods to get the same effect with different objects, but I was not successful. Taking a deep look at the way Orlando has accomplished this gives me hope that I will be able to extrapolate from this method and apply it to solve my background problem.