Welcome!

Hello and welcome to the internet presence of Randall Knapp (that's me!). I am a Game Developer from the Seattle, WA area currently working at Signal Studios in Bothell. We just shipped Toy Soldiers: Cold War for XBLA, so check it out! I graduated from DigiPen Institute of Technology, and spent some time teaching classes at the Singapore campus.

If you'd like to get to know me a little better professionally, go ahead and click Resume up there. To see what I've done, take a look at my projects. If you want to see what I can do, check out the code samples. I used to be a web developer too, so if you would like to see some of the sites I made for some pretty great people, please browse my web work.

If you'd like to get to know me personally, heck, give me a call and we'll have a beer sometime!

So send me an email just to say hi or visit the rest of my site and let me know what you think!

Resume: Adobe PDF (recommended)

An Adobe PDF version of my resume. If you can't read this file, you can get the free Adobe Reader here.

Run! (Featured!)

Platform: PC
Genre: 3D Action Platformer
Team: Interdisciplinary team of 5 programmers, 6 artists and 1 producer
Languages: C++, Lua, XML

3D action escape platformer game based on parkour set in a Victorian-esque steampunk city. Large, team-based junior project.

Function Delegate (C++)

In this code sample, the problem I solved (that sounds sort of pretentious, how about "attempted to solve") is that C++ has no function objects like C#, Lua or ActionScript. So I created the Delegate class, which can hold on to either member methods or global functions. It's typeless, so the end-user doesn't need to know the class or method that will be called, but type safe, so the end-user will get a run-time error if they pass in incorrectly typed parameters.

I became quite familiar with C++ Template Metaprogramming through this exercise, and it was a really cool thing to learn. I use it heavily throughout the project.