c.a. davis

// filmmaker | editor | storyteller \\

Indie Diaries #5 - Milestone 1/∞

It's been a little over a month since GDC...

And I've made some concrete progress on I Don't Think So. In just five hours, I was able create, touch up, and export an idling, running, and falling animation of my character and then implement those sprite sheets in Unity 4.3's 2D engine. It may not look like much of anything at this point, but when I think about the slow progression from my original sketched-out idea to seeing my character moving at my finger tips, I can't help but feel I've reached a clear and significant milestone.

But I didn't do it on my own. The only way I was able to code in the appropriate physics and movement mechanics was to watch hours of tutorials - which brings me to the point of this post. I wanted to share with anybody making their own transition into games the two tutorials that allowed me to create what you saw in that video above. (This really only applies to 2D platforming games.)


2D Character Controllers

Thanks to Mike Geig, I now have a solid understanding of movement programming inside Unity. If you're like me - not a programmer - then you'll find diving into any game engine conceptually frustrating. Well, look to Mike's captured live training session from Unity Studios to learn the basics of controller movement and physics. Once you set the foundation he lays out, all you have to do is tweak and build upon it to make it feel right for your particular game.

Camera Tracking

Another seemingly simple task one has when faced with a scrolling platformer game is that of following the player's character via camera tracking. I went through dozens of forums and coded multiple variations of the same basic idea - all of which produced the incorrect effect or simply didn't work at all - before I finally stumbled upon the video here. What's great about Brent M's video (and the one above) is that it forces you to actively learn and practice what you're watching by writing the code yourself, rather than just copying and pasting into MonoDevelop. Now if I could only figure out how to offset the coordinates from (0, 0)...


Those have been the best tutorials I've encountered thus far, and they've clearly helped me learn those fundamental skills I'll need as I continue on the project. I hope they'll be of help to many others down the road as well!