Voxel-based Infestation
zex
Join Date: 2009-10-07 Member: 68978Members
Since there are some limitations to polygon-based dynamic infestation, which are presumably delaying it's introduction into the game, I'm going to suggest a different kind of system based on voxels. There has been a ton of progress recently in the field of sparse voxel octree rendering allowing essentially infinite fractal detail in games. It is most commonly used for far-distance terrain rendering in games, but I think this technique would be ideal for Infestation in NS2.
<center><object width="450" height="356"><param name="movie" value="http://www.youtube.com/v/QsUm42DJQZI"></param><embed src="http://www.youtube.com/v/QsUm42DJQZI" type="application/x-shockwave-flash" width="450" height="356"></embed></object></center>
<center><object width="450" height="356"><param name="movie" value="http://www.youtube.com/v/1sfWYUgxGBE"></param><embed src="http://www.youtube.com/v/1sfWYUgxGBE" type="application/x-shockwave-flash" width="450" height="356"></embed></object></center>
<center><object width="450" height="356"><param name="movie" value="http://www.youtube.com/v/QsUm42DJQZI"></param><embed src="http://www.youtube.com/v/QsUm42DJQZI" type="application/x-shockwave-flash" width="450" height="356"></embed></object></center>
<center><object width="450" height="356"><param name="movie" value="http://www.youtube.com/v/1sfWYUgxGBE"></param><embed src="http://www.youtube.com/v/1sfWYUgxGBE" type="application/x-shockwave-flash" width="450" height="356"></embed></object></center>
Comments
hm. isnt that kinda... ah, well forget it.
yup, sounds good.
i'd like a uwe programmers opinion on this
I rather imagine Max is shying away for similar reasons. You wouldn't expect the man capable of implementing a lighting system that handles 30 dynamic lights and zero dynamic lights equally well to turn around and implement infestation in a way that degrades over time.
Stuff like voxels and tessellation seem great in this regard because it looks like rendering a flat surface will be equally difficult to rendering a highly deformed one. Takes a bigger performance hit up front, but ensures the framerate remains steady throughout the game.
Personally I'm wondering about the merits of incorporating DirectX texture blending, and having infestation abilities modify the alpha maps of the textures on the level geometry itself.
I don't know much at all about programming games or graphics/rendering. From what little demos and writing I've seen on voxel rendering I can't say why it's not more popular. You bring up a good point with the rendering of distant landscapes/terrain, though -- seems perfect for that.
I should read more about it. Voxels seem cool enough.
The original infestation demo uses marching cubes.
I played Red Faction on the PS2 and remember it having an impressive capability for geometry destrution. Not saying NS2 needs to have destructible environments, but the idea of having map deformation sounds awesome. I admit the dynamic lighting and infestation changes rooms on their own, though.
All cool stuff. I'll be happy with UWE getting the dynamic power/lighting and infestation stuff perfected. A lot of work ahead!
I know john carmack said in an interview that he'd like it for idtech six or something, but everything currently uses polygons, you'd need an entirely new set of tools to handle texturing and modelling with voxels, and entirely new rendering approaches to support it on a large scale.
I mean it would be lovely if we had it, it'd be wonderful to be able to unify textures and geometry into one system, and to not have to worry about things like LOD meshes and polycounts, and as mentioned, more detail meaning more cost, but I really don't think we're there yet. I expect that someday voxels will be the common approach to 3d environments, but generally you don't get change until everyone in the world can handle it. I mean we've had 64 bit processors for years but almost everything still uses 32 bit as standard.
Give it 10 years, maybe 20.
There are videos all over youtube of realtime, interactive voxel rendering in a "game" context. I posted one in the OP here. No commercial game AFAIK has used the tech yet, but that doesn't mean it isn't possible.