Crysis' voxel-based terrain engine

Started by
20 comments, last by GameDev.net 17 years, 1 month ago
Hey, Those of you that have seen the GDC07 demo of the CryEngine 2 Sandbox Level Editor may have noticed that they said that the terrain system they are using is voxel-based (like the old Outcast game), thereby allowing them to create detailed terrain features like overhangs and caves via a terrain 'brush' in the editor. It looks amazing! I was wondering if anyone had any recent links to papers describing how such terrain could be implemented? Specifically how to efficiently tesselate a 3d voxel grid for modern GPUs? Thanks :-)
Advertisement
To achieve the visualization of large voxel volumes, there are many ways.

The following methods are designed to visualize large polygon meshes. However, in case that all voxels are converted to polygons by marching cubes or a similar algorithm before, its about equal.

[1] Adaptive TetraPuzzles - Efficient Visualization of Gigantic Polygonal Models

[2] GoLD: Interactive Display of Huge Colored and Textured Models

[3] HLODs for Faster Display of Large Environments

[4] Far Voxels - A Multiresolution Framework for Interactive Rendering of Huge Complex 3D Models on Commodity Graphics Platforms

Alternatively, the two following methods are usable directly on voxels:

[5] Interactive View-Dependent Rendering of Large IsoSurfaces

[6] Visualization of Large Isosurfaces Based on Nested Clipboxes

I'm not sure which method they used - but I guess it will be either [2] or [3], as they are the most practical for the game-industry. All meshes can be pre-computed and rendered as static meshes without much CPU cost.

Here other related links to other voxel-based terrain engines:
Iehova (by Peter Venis)
Hvox (by me)
Voxlap (by Ken Silverman)

Oh,btw - here a video from the GDC07 where it is shown.
http://www.gametrailers.com/umwatcher.php?id=47885

Greez, Sven

Sven Forstmann
http://www.p0werup.de

[Edited by - spacerat on April 2, 2009 12:07:33 AM]
Thanks a lot for all that info Sven! I'll check them out.

Cheers,
Mark.
Quote:Original post by spacerat
To achieve the visualization of large voxel volumes, there are many ways.

The following methods are designed to visualize large polygon meshes. However, in case that all voxels are converted to polygons by marching cubes or a similar algorithm before, its about equal.


Careful! Isnt Marching Cubes patented? ;)

I remember the Delta Force series also used a voxel engine, maybe you can find a post-mortem of some sort.

As far as I remeber, the patent expired this year or already the last one.
However, its just an example - there are many alternative ways for the conversion like this one, which are not patented.
The crysis engine uses something similar to marching cubes to build bit's of geometry to put in holes made the big heightmap, it is actually something you could have done by hand in the first engine, so in theory it's nothing uncommon or even that advanced, but their implementation of it is pretty sweet.
Does anybody think this will be the next new rendering method for terrain? Seems pretty slow to me, plus I'm sure in all their demo videos of Crysis they're running it on the Intel Dual Core X6700 or the Quad Core 6800 with an Nvidia 8800, which we all don't have.
Author Freeworld3Dhttp://www.freeworld3d.org
I don't see why not. It allows for completely destructible terrains with overhangs, caves and cliffs, appears to lend itself to existing terrain LOD algorithms such as clipmaps and I can only imagine how good it would look combined with id's MegaTexture. [smile]

FYI, GraphicsDev.net is holding a discussion on Crysis Technology Breakdown tomorrow (more info here)
[smile]

Sven, I remembering seeing your volumetric terrain screenshots ages ago on Flipcode IOTD, seriously impressive stuff

All the Best,
ViLiO
Richard 'ViLiO' Thomasv.net | Twitter | YouTube
I just watched the following video from GDC
http://www.crysis-online.com/video_downloader.php?dir=/video/SD/(Crysis-Online) GDC 2007 Sandbox Demo 2.wmv

And it doesn't seem like they use a voxel approach for their entire terrain. It seems they only render small pieces of the terrain using a voxel method and the rest is still a regular heightmap. If anybody has watched the video, am I wrong?
Author Freeworld3Dhttp://www.freeworld3d.org
yeah, I think you're right - looks like they've augmented the CryEngine terrain renderer with a voxel component for drawing small chunks of terrain to handle natural terrain features. Makes sense, and gives the best of both worlds.

This topic is closed to new replies.

Advertisement