Sunday, October 14, 2012

Orc Choppin Completed!

  These last three weeks were just crazy work and nothing else. But I just loved working on something so awesome as Orc Choppin. At first everything was going great with the camera movements and using simple textures to create the scene of the game. But then later when the models started coming into the scene, it started getting complex. Handling perfect collision with the target-Orc and trees,rocks to the world boundary was just something.
   
    One of the prime reasons I couldn't update my blog with the game progress was because I was stuck at moving the first person camera on a rough terrain using a terrain model, which made all of us fall behind the schedule. But, it is one of the most challenging things I have encountered while developing this game. I came up with various alternatives for dealing with this problem one of which was using a heightmap and store all the vertices of the terrain so that my camera can move relative to the vertices and the height of the terrain. But, I was really afraid of trying this thing as we were already behind the schedule. I wasted almost 3 days trying to figure out on how to do the camera movement on the rough terrain using different types of collision with BoundingBox, BoundingSphere using rays and triangles and what not. Even, Googling and reading blog didn't help.
  After a while I gave up on the rough terrain and decided to do it later if time allows me to. Gameplay is more important than specific things- like terrain. But, by this time, I had a list of tasks to work on, all piled up on my plate, like-
  • Random orcs, trees,rocks, logs generation.
  • Collision with orcs, trees, world boundary.
  • SkyDome.
  • HUD layer.
  • Clocks and counts.
  • Memory management and resolving FPS drops.
  • Sounds-walking, choping, Orc Crying.
  • Lighting.
  • Animations.
  • Splash Screens.
  • Testing.
  • Working on the loop holes.

    At this point of time I have taken care of all the tasks that I had taken up and the game is up and running. I wasn't able to work well on the FPS dropping down issue because it is a little tricky and I figured out that it can be done in many ways, some of the most trivial and common being-

  1. Using Frustum Culling to render only the objects that are inside the camera view.
  2. Using the Vertex Buffer to store and render the objects every frame from the main memory.
  3. Reducing down the size of model files so that the CPU doesn't go crazy rendering each object per frame.

 These last couple of days, I am going to keep working on the FPS drops and try to keep it to 60. Another thing I can work on is the camera movement on a rough terrain but I am thinking to stick to flat terrain as the theme of the Orc choppin is forest and forests are most of the times flat terrains.

Some sneak-pics of Orc Choppin-