Sunday, 30 January 2011

Golf, the beginning

I wanted to buy a book about physics for a while to learn how to make things behave realistically in the future games I wanted to do.  So for Christmas I bought myself "Physics for Game Programmers" by Grant Palmer.  I started reading it then and I was asking myself what kind of game I could make, alone, to use some of the things I've learn in this book.  It's the only physics book I've read so far, but I still recommend it.

So at the beginning of 2011 I started working on a golf game.  There is some physics, but not too much, so it's a good place to start.  I don't have to model complicated 3D things... except if I want to add a character hitting the ball.  So I thought, why not.

So far I concentrated on the UI, so it would be functional and would do what I need it to do... it's not very pretty I guess, but I will spend more time maybe in the future to make nicer textures.  There's also a mini map showing you where the ball is on the terrain.  This map is auto generated when the terrain model is loaded by saving an orthogonal view of the terrain in a texture.

What I also did is use what I've learned about the physics of projectiles in the book to model the flight of the ball.  I need to work on the "rolling part".  But for the "flying part", the ball is "launched" at a certain angle depending on the club you select and with a certain power depending on where you stopped on the meter.  Gravity is affecting the flight pattern as well as air resistance.  The wind, displayed on the UI, also affects the flight of the ball.  You can also affect the spin on the ball in two ways.  First by moving the cursor up or down on the ball, which would make the ball fly higher or fall to the ground faster and depending where you stop the "power meter" the ball could make a hook (spin to the left) or a slice (spin to the right).

It's only a beginning, but here's a video of what I've done so far.

Thursday, 27 January 2011

Ninja game

For a couple of months last year I was working on a 2D tile based platform game.  I created an editor to help me build the levels.  The game features a little ninja going about a level trying to find the exit.  You also need to get new abilities to be able to access the exit.  I want to add some enemies at some point, but for now I'm taking a break from this so I can concentrate on a new project I started in the beginning of 2011.

The following videos are best watched in 720p and in full screen because the tiles are pretty small.

Here's an early version of the editor

and a video of the game play when I stopped working on it

Billiard game

I worked on this for fun in 2009.  It was never finished as a game, but I learned from it.  Mostly about lighting, user input and camera movement.  I don't think I will go back to it at any point, this was just to have fun and many things would have to be rewritten.

Setup completed

I've just finish setting up this blog.  I've been postponing the creation for a while, but now I thought it was overdue.
I will post here about the game development projects I work on in my spare time.
I'm hoping that people reading will post comments, questions and feedbacks.

First off, I'm using C# with XNA for my game development.  It's a good combination for a single developer I think... or for a small group of developers. It lets you do the actual game programming without much of the low level setup required by DirectX or OpenGL.