I think finally tracked the error that made the game crash on some computers. The culprit is OpenGL, more specifically OpenGL 1.X. Since the introduction of OpenGL 2.0 in 2004 there have been a few changes in the way how to do graphics (“it’s called shader baby!”). As my current reference of OpenGL (the OpenGL Super Bible, 5th ed.) tries to break free from the old legacy code (“fixed function pipeline”) I ended up being dependent on this new stuff.
Sorry about that. But if it does not run, you probably should get a new computer anyways.
At least some good news: errors are now nicely reported with a message box. Should your graphics card be incompatible, you will beinformed properly.
Get it from here: iftpop_0.0.2a
A new version with better graphics (OpenGL 2.X!) is coming along as I now finally fixed this error.
To simplify scene management and visual effects I looked at various open-source graphic engines that I might use. I briefly looked at the usual suspects such as Ogre3D and Irrlicht until I found Horde3D, which convinced me by its simple looking API and the compiled library was much smaller than of the others. It also seemed to feature various capabilities that might be interesting (scene graph, shadow mapping) or nice to have things (picking, blur, hdr, etc.).
However being an old-school OpenGL programmer, that mostly draws simple geometries such as cubes, spheres, and similar, it is not quite the way I am used to do stuff. Furthermore, the shaders in the examples seemed much more advanced than I need for now, so I am currently trying to make things more basic. Eventually I want to use the scene graph to do some procedural animation and that I am going to do with these simple geometries. Using more sophisticated models created with blender should not be too hard once I got it running.
So far I incorporated Horde3D to my code and using assets from the example to get some experience with Horde3D and implemented a simple shader. As I had the OpenGL Superbible laying around I thought it would be nice to implement the good old Ambient-Diffuse-Specular lighting model (so far only on a per-vertex basis).
Here are some screenshots of the different steps I took:
Now I can easily specify the material in the XML-files that Horde3D is using. Also, I learned a great deal about Horde3D.
Hopefully I’ll soon be able to draw simple procedurally generated geometries and can then start to look at the animations.
Yesterday I drew something. I tried to capture a very specific mood. It may or may not be iftpop related.
For the game itself there is nothing much to see, as I am currently switching the graphics framework (actually I am switching to *a* framework) and therefore everything is black – yay!
Have a better day!
Grab it from here: iftpop-0.0.1
So far I am working on the controls for both camera and player movement. With the camera I am quite happy, but the player will get some more action features such as wall-jump and duck-slide, etc.
The camera starts to jitter at some point, but I do not yet know why.
Some informations about the game: it will feature some elements from racing games. And platformers. And nightmares.
Just a small screenshot of the current state of my next game, called “IFTPOP!” (what it actually means might be revealed at some point). The code so far is based upon my previous asteroids game but with a lot of new development. Biggest change so far: integration of bullet physics.