Thursday, January 21, 2010

Editor, Octree, Quadtree, Terrain, Portal culling

I am working on the Octree and Quadtree implementation first using generics so I only have to make each once.

When this is complete, I will work on overloading the Model processor so that vertices are loaded for creation of a bounding sphere and AABB.

Afterwards I will Start work on the ingame editor so that levels can be made easily.
This will allow me to load the level placing each object with the correct scale, position, rotation, and effects.

When I can make levels, the bullets will start flying again accurately.

After bullets are flying, animations and sound will begin leading to a more complete game.
I hope to begin february with some AI development.

Wednesday, January 20, 2010

Culling and Optimization

I mentioned a method of culling scenes based on what room you are in and what rooms you can see from that room, in my interim report. Unfortunately, that is how I described it. The method is actually known as Portal Culling.

I know that it is used in Fallout 3 and should have searched that for details.

I found a video on youtube today which confirms what I wanted to implement. If I can do this then rendering and collision detection in my game will be awesome! (this discovery is one which boosts confidence for a decent game to be created.
http://www.youtube.com/watch?v=Tviftgg1jMI&feature=related


I said in the previous blog that today will be implementation of a quadtree heightmap which will be done followed by an octree for the scene objects and portal culling.

I still need to find a method of displaying dynamic objects without having to constantly rebuild the scene octree. One solution could be to implement a secondary tree for dynamic objects or to sort objects by room. That is for another day.

Tuesday, January 19, 2010

Riemer Tutorials

Today I did the first two 3D riemer tutorials. This involved Height mapping and a simple flying game with quaternan camera.

I did the tutorial to learn more about working with vertices and making a height map for the game.

I will take what I learned to make a heightmapped level tomorrow which a character can walk on at correct heights. The player will also not be able to leave the game area. I will introduce a quad tree which stores the heightmap data to check collisions with it efficiently.


Once that is done, I will make it so that bullets can collide with the heightmap.

This will lead onto object collisions, loading models with vertices and checking detailed collisions with them after bounding object broad phase checks.
Octree development will begin to optimize the scene for collisions and drawing with objects scene objects being added by their AABB


The game problems from previous blog posts have been fixed. Improvements still need to be made but the ability to interact with the environment is the most important aim right now.

After collisions are satisfyably complete, I will add more objectives, animations, sound and begin work on AI. AI development should have begun a few weeks ago but the fully working game as a base was more important.