[w]tech combines next generation technologies like full dynamic lighting, voxel based terrain and bullet physics, which are brought to you via a self-explanatory user interface. We are thinking in innovative ways to combine the available technologies and ideas to an edgeless package. Visit wtechportal.com to get more information about the newest features integrated into [w]tech!

Report RSS [w]tech goes for DirectX11 and PolyVox!

Now it's done: The port to DirectX11 is completed and the integration of PolyVox has become usable.

Posted by on

[w]tech goes for DirectX11 and PolyVox!

Many have asked: “Why DirectX10? Why not just 11?”
After I scrapped the DirextX9 engine I thought it would better to go from DirectX9 to 10 and then to 11. It's done: Porting [w]tech to DirectX11 is completed. Now some will ask: I don't have a DirectX11 card! Will [w]tech run on my PC?

Simple answer:
Find it out!

The truth is, that we haven’t told you everything. :-). In fact, we ported the engine to DirectX11 before our last techdemo! (Download: Moddb.com)

With a shorter feature-set DirectX11 is also running on DirectX10 hardware. Even DirectX9 hardware is supported, as long as it is running on Windows Vista or Windows 7. But not of us, [w]tech likes to have a DirectX10 graphics card.

Are there new features thereby?
Not yet. None of us has a DirectX11 graphics card. Anyway we can use new features like the ComputeShaderCS4, by what tesselation can be created. But after the Port something else had a higher priority.

Voxel-made Terrain with PolyVox

Simple voxel volume


But first, what on earth is a „Voxel“??? The word “Voxel” is put together with the two words “Volumetric” and “Pixel”. Because nothing else is a Voxel. A Pixel is a Point in a 2-dimensional picture. A Voxel is the same, but in the third dimension.

So, instead of just using a heightmap for the Terrain, we build the Terrain directly into a picture, a 3D-picture. Then this 3D-picture is surrounded with polygons by the PolyVox Library. This method makes many new options possible: You can build caves right into the engine! You don’t have to (how many do it) build your cave as mesh in e.g. Blender and then import it as mesh. It's the same with rock peaks or even straight walls. Impossible with a Heightmap.

Besides the possibilities in the editor the gameplay gets an important new element: A fully destructible terrain. Grenade exploding? No black spot on the floor like in many other games, no, it makes a real hole into it!

But what happens exactly with all the „Voxels“ and “polygons”? We simplify it and remove one dimension. Here is a 2D-version of a Voxel-volume:

PolyVox explanation

PolyVox will, as you can see, wrap polygons around all Voxels, so we can render it.

In addition it should be said that with [w]tech we don't work with black-and-white "Voxel-pictures" anymore. Since the latest PolyVox-Update we are able to work with smoother Grayscale-volumes. This helps us to smooth the generated meshes quite good.

There is a better explanation (even if more complicated) from the author of the library, David Williams: Thermite3d.org

Don't forget to try his Voxel-Engine, Thermite3D: Thermite3d.org

Here is a video which shows the PolyVox-Feature in action:


Don't forget to watch in HD: Youtube.com

Post comment Comments
Analdin
Analdin - - 177 comments

Nice stuff! Must have included some sleepless nights :)

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

indeed :D

Reply Good karma+1 vote
blackmodeler
blackmodeler - - 1,015 comments

voxels look fun

Reply Good karma Bad karma+1 vote
Ichiman94
Ichiman94 - - 522 comments

voxels is good destruct-able thing

Reply Good karma Bad karma+1 vote
MitchellS
MitchellS - - 1,181 comments

voxel is awesoem

Reply Good karma Bad karma+1 vote
nightz
nightz - - 29 comments

Nice, now all your terrain will look like clay :D
Anyway, good work. I know how its hard to maintain an engine =]

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

Thank you! :) Not all will look like clay (Maybe some parts, who knows?) You can either turn smoothing of the voxels of to get a harder shape, or use a smaller brush to get the corners more corner-ish. Also we are on it to finish the smooth-layer system for the terrain. So you can paint grass or rock wherever you want! This is what we want to show in the next news.

Reply Good karma+1 vote
SairenSA
SairenSA - - 267 comments

Please include material maps and shaders ect. :D looking really good team

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

Already built in! Look at my comment to "nightz" for more information.

Reply Good karma+1 vote
SairenSA
SairenSA - - 267 comments

Wutz i've got an idea (if it is'nt already included in ur engine) combine voxels with fluid dynamics then you got voxel fluid simulation. :)

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

Others had this idea, too. There is also a thread about this in the PolyVox forum ( Thermite3d.org ) The main problem with this is that the mesh regeneration is a bit too slow for this. Though, it is fast enough to regenerate it when a bomb drops :)

Reply Good karma+1 vote
nuverian
nuverian - - 5 comments

Looking realy nice. Does voxel terrain mean that they can be adjusted in game, something like Perimeter or Red Faction?

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

I never played these games, but yes, you can adjust it ingame, just like you see in the editor.

Reply Good karma+1 vote
Megumi
Megumi - - 145 comments

It seems like your draw calls get quite high for bigger terrain..
I know it doesn't matter that much here as its all the same texture but if you have some others too it could create a problem later.

Reply Good karma Bad karma+1 vote
[WuTz]! Author
[WuTz]! - - 103 comments

That's true. But this is only hte case for the editor where you have to modify the terrain in place. Ingame much of the terrain won't be destructable, su we can combine them into one big mesh.

For the destructable terrains we can simply use larger chunks. Since I added multithreading to the mesh generator this doesn't matter so much for just one regeneration.

Reply Good karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: