Three tracks

Wanted to work on the menu structures and among things, I wanted to create a track selection screen only to realize I only had one track yet. Time to create some new tracks.

Back in time

Just wanted to point out an old game I created a few years ago Rapid Aerial Deployment. It was a mix of strategy and shoot’m up. It could be played by two players on the same computer using split screen. It was a reasonable success having had more than 20 thousand downloads. I noticed someone created a youtube movie of it. Cool.

You can Download the game it here

Back from Harvard

I’ve been following a 3d animation course by NYFA at Harvard. We had 4 weeks to master the 3d animation package Maya and to make a small movie. 4 weeks is an extremely short time to learn Maya and make a movie, but anyways here is the result of my work: short movie Zero Kelvin (quicktime).

Right now I’m working on some SFX, smoke/mud that appears when the motocycle is accelarating. Also added a base class Actor which is the base class for all objects in the game, currently only Motor and SmokeCloud.

Smoke/mud clouds

Creating a title screen and doing some refactoring

Up until now, I have been doing a lot of result driven development. Basically I had only two classes, game and motor. Now that I wanted to add a menu to the game I needed to refactor things a bit. I have created an abstract class called ‘GamePhase’ containing all the methods required by the XNA engine (Initialize, loadcontent,unloadconten, update and draw). I created two new classes derived from the ‘GamePhase’ class and called them ‘MenuPhase’ and ‘RacePhase’. Moved all the code from Game to the ‘RacePhase’ and added new code to the ‘MenuPhase’ to display the Menu screen. The refactoring went pretty smoothly and now we have a title screen.

I have used Blender3d to create the the motocrosser jumping through the banner.  The text and background texture have been created with photoshop.

Testing deployment to the XBOX 360

Had Romiko over on sunday and tried to deploy the game to my local xbox 360.  Deploying went pretty easy although I had to pay 99 euro’s to be able to upload my own games to the XBOX. After some hacking around with the screen resolution settings in the game we finally got it working.

Working on AI

Added Physics, which made it possible for the motorcycle to jump. Right now I’m working on the AI of the computer controled motorcycles. It uses a very simple algoritm to drive over the road, but it is working very well. Basically  I have two  invisible antenna’s placed at 20 degrees angle of the direction that the motorcycle is going. It measures the distance to the side of the road. The motor turns in the direction of the longest antenna. I added some code to make sure the motorcycle slowsdown when the antenna is very short (on a sharp corner). It’s amazing that this algoritm is enough to have the motorcycle drive around the track. Right now there is some basic collision detection between the motorcycles, if a motorcycle is too close in front of another cycle it just brakes.

I have uploaded a video demonstrating a number of motorcycles driving around the track.

Testing AI

First test succesfull.

After doing the prep work creating the graphics I can get started with programming.

I installed Visual studio 2008 express and XNA. I wrote a small application to drive the motor cycle over the background using my Xbox controller. The XNA framework turns out to work really easy. the motor sprite is also animating nice and smoothly.

I can now move on to the next step.  Collision detection.

xna development environment.


The cross-motor model is finished, I ‘super deformed’ the heads of the drivers a bit, the models look a bit better that way when they are downsized to such small sprites.  Next step is render the model from all directions. Here is a small mockup using some test renders.


New project started

Upcoming project: Mini Motorcross

Platform: XNA (xbox/PC)


Track mask

Motor 1st render

Return top


Welcome to Leon's personal web page. Come here to check up on updates of my projects.