Impostors in Irrlicht
Posted on:July 23 2008
Maybe you've seen this already, but something I personally like, Impostors implemented in Irrlicht, hundreds of quake 3 levels! :)
Bitplane wrote this and is still working on it, quite nice.
Hey, nice work there.
I've been avoiding rewriting this for several months, there's some big issues to tackle..
Firstly texture management, there's a lot of wasted space at the moment and because all impostors of a certain size share the same texture and buffer, the smaller ones are sometimes behind the larger ones. It needs some kind of maintenance task to sort them by distance, and to have different sized impostors sharing the same textures (ouch!). Also because of the lack of mip-maps, moving away from something causes unnecessary pixelation.
Secondly, the projection of the billboards. If I project based on the current view there is perspective distortion going on for ones which intersect the screen frustum. If I point the render cam at the nodes then the change between impostor and real node is obvious when far from the centre of the screen.
Then there's that horrible popping. I only render a few impostors each frame, so if you're moving around a lot the render queue becomes large and you can see the impostors changing or popping in to existence. It really needs a nice smooth fade/morph transition between the different LOD levels and viewpoints.
Finally, lighting. Lit objects look horribly flat at the moment, where the hardware supports shaders I'll also render to normal maps, in old hardware and the software drivers regeneration needs to take lights into account.
No promises for a time for iteration 2, best guess would be around Irrlicht 1.6 :)
Those look to be quake 1 (not 3) environments?
The map is the default one that comes with Irrlicht. It's called "Return to Castle: Quake" by Michael Cook and was created in Q3Radiant as a mod for Quake III Team Arena.
Wow, Really nice work Bitplane! Is that a patch/addons to the engine? Or can this be added as simple includes for a project?
I wouldnt mind using that to gererate tons of trees! :-)
If that could work also on animated meshes, we could create a whole army of characters! (Or having trees that move with a simulated wind)
Enter the missing letter in: "Internationa?"
[url] www.example.com [/url]
← Previous Post
Next Post →
Imprint and Data Policy