Here are a collection of spheres bouncing off and interacting physically accurately with an arbitrarily complex fish.
I'd like to think that that sentence has never been posted before.
It will all look a lot better when textures are dropped in. I've got texturing working in the editor and it looks a lot better.
The overall idea though is that you construct the environment out of as few physics polygons as possible, but since the quads are forced to multiples of the texture base size (64x64), they are just textured with wrap mode and look like a grid of smaller quads.
This reduces the number of polygon intersection tests.
The editor generates the polygon vertex info and will soon generate the texture co-ordinates as well. I'm planning to atlas the map textures so the map can hopefully be drawn with one DrawPrimitive call.
Oh, further to my revamped graphics wrapper, I've got atlased fonts working. I was suprised to find I can fit Tahoma, size 8, bold A-Z, 0-9, a-z and some punctuation onto a 128x128 texture.
I did try to write a new font file generator with C#, but it seems that GDI+ returns some very weird numbers from MeasureString(). According to various bods on the internet, this is all to do with how clever it is at rendering text in a device-independant manner or something. Just a bit of a bastard as far as I'm concerned.
My current, working font file generator was written ages ago with Borland Builder and since I don't have Builder installed anymore (it won't coexist nicely with Borland's command line compiler, which I still use) I can't alter it.
Might have to rewrite it in straight Win32 to avoid this GDI+ problem.