Jump to content
  • Advertisement
Sign in to follow this  
redindex20

Voxel-Like Engine

This topic is 2566 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello all. Does anyone know how I can get started with a voxel engine or how I can start one.

Maybe a good tutorial or something. I want to experiment with the voxels because it would just be a good learning experience with 3D like stuff.

Share this post


Link to post
Share on other sites
Advertisement
A Voxel is a 3d pixel, you could render a cube for each pixel and store you're world in a 3d array.

The 3d array probably wouldn't be able to store you're entire world so you could do what minecraft does and split your world into chunks and only loading the nearest 9 chunks.

You're engine would probably end up looking alot like minecraft but with much smaller cubes.

This engine would run unimaginable slow without occlusion and backface culling so make sure you implement those.

Good luck.

Share this post


Link to post
Share on other sites

A Voxel is a 3d pixel, you could render a cube for each pixel and store you're world in a 3d array.

The 3d array probably wouldn't be able to store you're entire world so you could do what minecraft does and split your world into chunks and only loading the nearest 9 chunks.

You're engine would probably end up looking alot like minecraft but with much smaller cubes.

This engine would run unimaginable slow without occlusion and backface culling so make sure you implement those.

Good luck.


Voxels doesn't necessarily imply a Minecraft-like game. Minecraft may use voxels (extremely large ones) for terrain, but it uses a traditional triangle rasterizer for rendering. It's not what I would call a "voxel engine". Voxels are rendered using ray casting and can be used for more than just terrain.

Share this post


Link to post
Share on other sites

[quote name='ic0de' timestamp='1323060852' post='4890592']
A Voxel is a 3d pixel, you could render a cube for each pixel and store you're world in a 3d array.

The 3d array probably wouldn't be able to store you're entire world so you could do what minecraft does and split your world into chunks and only loading the nearest 9 chunks.

You're engine would probably end up looking alot like minecraft but with much smaller cubes.

This engine would run unimaginable slow without occlusion and backface culling so make sure you implement those.

Good luck.


Voxels doesn't necessarily imply a Minecraft-like game. Minecraft may use voxels (extremely large ones) for terrain, but it uses a traditional triangle rasterizer for rendering. It's not what I would call a "voxel engine". Voxels are rendered using ray casting and can be used for more than just terrain.
[/quote]

I only meant that the engine code would resemble that of Minecraft not the actual rendered image. Since this was posted under OpenGL I gave a way to do it using basic OpenGL geometry.

Share this post


Link to post
Share on other sites
If you want to use an existing voxel renderer, check out:
http://thermite3d.org/joomla/
http://www.jonof.id....pic=1664.0;wap2
Voxels are rendered using ray casting and can be used for more than just terrain.
If you want to get pedantic, there's no "one true way" to visualise voxels, just like there isn't for pixels.
Is a pixel a little rectangle (that's how it looks when visualized with nearest-neighbour interpolation)? Is a pixel a little blob (that's how it looks when visualized with bilinear interpolation)? Is it a little circle? No, it's a "sample" - a zero-sized point in space paired with a value, typically a colour. A pixel has neither size nor shape, until we choose to visualise it in such a way.
A voxel is the same, but in 3D instead of 2D. It has no size or shape or natural way of being visualized. They can also hold different values, such as colours, and/or densities, and/or distance-fields, etc...
You can visualize voxels as a 3D grid of cubes (whether rasterized or ray-traced), but that's just one way to interpret the underlying data. You could extract an isosurface from a voxel-grid of density values, but again, you're not actually looking at the voxels, but a property derived from their data.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!