Michael’s Update: VIPM mesh generation (FINALLY)

No Gravatar

Yep. Finally! Its been fully completed. I remember some time a few months ago I went and implemented about 80 – 90% of this thing in my game engine only to be hindered by a bunch of run time errors. At that time I had a very good idea on how things should be done but not completely. I decided then to just not worry about it since I already had frustum culled VBO terrain that was loaded from an external file. But knowing me it just wasnt enough. I wanted quad tree formations and I wanted it now!

There really wasnt that many run time bugs to get through, mainly logic problems. That, and I had to create a new class which allowed me to generate my own heightmaps on the fly in my game engine. This is a lot more useful than just loading an external file and using that. Theres the added fun that no matter how many times you load the game now. It’ll always generate a different terrain. Not to mention you can generate three different types of terrain using three different algorithms.

I also went about and fixed up the rendering of objects some more. I still want to get that scene graph finally going but nothing is going to happen until I get some solid work done on my I&J assignment. I’m planning to really get into it this week coming. I’ll try knocking out my part of the design document, then get straight into the design and implementation of the website. And after all thats been set up, just simply work on the coding for the assignment. Should be all good.

And now my log summary of the whole thing:

Outlining changes made to the project…
1) First off. Finally fully implemented VIPM terrain generation in the game engine. Its about fucking time!
2) Modified AppModel to reflect the loading and passing of the new terrain…
3) Modified Vector3 to not include a vector like operation. This was instead moved and is now contained in the Terrain class. It is an embedded terrain specific function call for its own vector struct thats used in the quad mesh.
4) Modified RendererOpenGL to harbour the rendering of the VIPM mesh. Also changed around how things are rendered. (For the better).
5) Modified CurvedSkyplane (minor).
6) Created a new class called HeightmapGenerator which does what its name suggests, that is, creates heightmaps for us from the choice of three different heightmap algorithms. They are: Midpoint, faultline, hill. Does a lot of other cool stuff.
7) Changed Terrain.cpp and .h significantly to harbour these changes. There was also a lot of code that was fixed in order to display the mesh correctly etc.
8 ) Updated stdafx.h to reflect some std::max and min definition problems…
9) Updated vcproj.
10) Updated project exec.

Surprised that it was only that big?

I bet you were. I have a video demo on my skydome stuff but I cant exactly show you what I’m doing until after we get permissions and all that other crap granted.

So I’ll leave the notice here just to notify my team members that theres a video waiting for them if they want to see what I’ve been up to…


Leave a Reply