RAVEOLUTION
David Quiray CPE 471 Final Project
GOAL:
- Simulate a rave with my newfound knowledge of graphics.
- Create an interesting form of interaction.
- Practice implementing animations for characters and objects.
TECHNICAL DIFFICULTIES:
- Building characters
- Building characters here was a matter of bringing in our robots
from Assignment 2 and reconfiguring them to look a little more
aesthetically pleasing. In order to do that, I gave them a little
box at their center to give a little color to them
- In using the old builds, I added a few more functions to be able
to control them better, putting them in a new environment.
-
I also needed to put the characters in their own class to give
them new functions and features.
- Animating the characters
- Thankfully, since in Assignment 2 the characters were rendered
recursively, animating limbs was fairly simple.
- In order to have the movement look somewhat decent, I needed
to use cosine functions to cycle the animations and animate each
joint separately to give it some realism.
- Given more time, I'd tweak with the animations more, and possibly
look into inverse kinematics to control joints more fluidly.
- Giving the stage life
- Raves and concerts have a lot of stuff going on to entertain the audience,
especially raves since the DJs are not actually doing much and are anchored
for the most part to their setup. So what I ended up doing was dynamically
lighting up the stage and making it look more interesting
- Given more time, I'd add a variety of different animation/colorings to keep
it from getting stale.
- I would also add more objects to make it look more detailed.
- Implementing an interesting form of interaction
- I had many ideas, but they all proved to by fairly difficult to
try and implement. I initially wanted to throw glowsticks at idle
characters to amp them up to join the rave, but it required more time
than I had.
- Implementing audio
- I tried to use a few different libraries to import and play audio
but in the end it was a process that I was too unfamiliar with and
ended up not being able to include it in the final build.
- Implementing bloom
- Going into the project, I really wanted to give it a bloom effect to
make all of the bright lights look prettier, but a lot of effort went to
waste and I wasn't able to manage my time enough to implement it.