MADWORLD

is:
  • a game engine demo I wrote back in 97-98
  • an online persistent world game engine I'm (re)writing right now :)
  • on hiatus for a while

features

  • OpenGL based
  • 3d models with skeletal animation
  • raytraced shadows for lights

screenshots

Some old pix here of the 3Dfx version.

download

You can get the old Internet demo here. It's really basic compared to what's cool these days. Keep in mind this was written for a Pentium 133/3Dfx v1 system.

useful links

05-mar-2004

friday
 
trying to get opengl to do the heavy lifting
Yep, until now I was doing all the 3d math in my code and passing the final coords to OpenGL. So now I'm converting over to letting opengl do it (and therefore only having to calculate my 3d into global coords) I found this article very helpful.
Oi, it's sad though... my homebrewed 3d isn't quite coordinates-compatible with OpenGL. I have the Y axis as positive going south, instead of negative. It's just more intuitive that way to me, especially since MW started out as a 2d tiled scroller design. I guess I need to dig in there and make everything conform. I miss the flexibility of doing my own projection. (I don't miss the performance hit tho ;)
 linkme

29-feb-2004

sunday
 
refactoring
Just been refactoring things still, converting structs to classes with real constructors/destructors etc. Now that 'Room' is a class with virtual void render() I can support both my old map format and whatever new one I come up with. I can even make it a plugin. Yay polymorphism!

complexo
Check out this graph. (from this article). Heh. I have like (maybe) half of them started or done, so that's kinda cool. Some of them I won't need, either. The biggest hole, what I'm really missing, is the persistent db type shit. Luckily for that I can crib ideas from MUSHes etc., which I'm pretty familiar with. I'll probably do the same global DB for all attributes, with flags and such. It's still gonna be a chunk of work. I'm thinking of using sqlite, although it seems like overkill for now.

 linkme

21-feb-2004

saturday
 
cg rOXO
I just got and read through "The Cg Tutorial." Cg is awesome! It lets you program the whole 3d pipeline, but with half of it happening directly on the graphics card, and with single-instruction matrix ops and whatnot. Very exciting! I can't wait to get that working. It seems to do a very good job of letting the programmer think in C while he's actually working on a vector architecture. You just write a little nifty program that does whatever it wants to either a vertex or a fragment (pixel, if it passes the clip test). Newer cards can even parallel process these programs.
The only real downside is that it's kind of nvidia-centric, although it really tries not to be. Well, mostly in that there's no bundled profile for the high-end stuff in other cards, like my FireGL.
Yes, I'm writing MADWORLD to target FireGL. They sure seem impressive now, but in 3 years it'll just be middle of the road, and I'll be half done ;)
 linkme

17-feb-2004

tuesday
 
spherical harmonics
I stayed up late trying to grok this stuff via this paper (PDF format, 1.8 megs, local mirror). Not there yet.
 linkme

16-feb-2004

monday
 
update
Also GL_EXT_fog_coord. I now have the beginning of my 'fog-of-war' effect.

Oh man, I found some seriously stupid old bugs. They've been in there forever! Nice to be rid of them.

 linkme
previous articles...

Everything all copyright n shit Brennan Underwood