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.
References