Once I got 15 animations completed, I figured it was time to actually work on building the game. My character could stand, walk, jump, land, dash, run, and turn around, so those were the things I wanted to get working in the engine.
I decided to use Unreal Engine 4 (UE4) because of their Blueprints system and because I’m a pretty big fan of the engine in general. Plus, it’s free to develop on as of March 2015!
Blueprints, for the uninitiated, is a visual scripting system that basically makes coding super easy. There’s a bit of a drop in CPU efficiency compared to just programming in C++ or another language, but for rapid prototyping it’s pretty nice. Plus for someone like me who has taken some programming classes, but has never taken on anything as ambitious as coding my own game, this system is a godsend.
Anyway, I did a few tutorials provided by Epic (the makers of UE4), browsed through some sample game projects, and then jumped right in. I threw the animations into the game and bumbled around long enough to start understanding how UE4 operates. This was around November when I started messing around with the engine, and it wasn’t until around January when I felt somewhat comfortable with programming in UE4.
Then I showed a friend my work up to that point. He tore it apart, and it was the biggest favor anyone could have done for me at the time. I completely restructured my spaghetti code, and two months later had the infrastructure not just for what I had up to that point, but also for the rest of the game.
At this point I have the following working:
- Dash dancing
- Fox trotting
- Double jumping
That last one was a huge surprise to me, because I did not intend to put it in the game. I set out to mimic dash dancing in Smash Bros., and by the time I got it how I liked it I realized moonwalking automatically worked. Easily one of the coolest moments in the game development process so far.
Here’s a gfycat of some of the above list in action. Note that many of the animations in this gfy are broken, just focus on the movement and not what the animations are doing.
Here’s a gfycat of dash dancing, fox trotting, and moonwalking. Note the same as above, the animations are broken.