Dubious Engine

October 8, 2009

Well I went and did the thing I promised myself I wouldn’t do… I started yet another re-write of this thing. This time it’s in the form of a new game engine, the Dubious Engine. What brought this on? Well I just finally admitted to myself that making another space ship model didn’t seem nearly as much fun as fixing the math and physics. Especially the physics. I do enjoy physics. So I started over with a math engine that made some sense. Mostly it’s just a re-write of the vector classes. I got so tired of constantly being confused about whether a vector was normalized, non-normalized, rotation, in world space, in local space, etc etc etc. So the new math library has distinct types for each of those things.

From there it was time to fix the physics. Up until now I’ve been sort of getting by with a “just enough is good enough” engine. I wanted to see what it would take to write a physics simulator that actually made sense. Turns out I wasn’t all that far off before. Mostly this is the REngine physics, but with better book keeping. Instead of just returning the first point that hits and a “best guess” normal I actually take the time to find a point and normal that make sense. The results are encouraging. I set myself the goal of being able to create a demo where a bunch of cubes fall together and bounce around on a table, and I’m pleased to report that I’ve pulled it off. It’s still far from perfect, but it’s worlds better and looks convincing enough. I’m gonna keep working at it, I have some ideas for improvements (better handling of intersecting polyhedra for one) but for now it’s good enough to release.

So, if you are interested in game engines or physics simulators, maybe you will enjoy it. You can grab your copy here.

posted by james wells at 5:09 pm

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment