Search Unity

[RELEASED] Voxelab - Real time procedural meshing of voxels, and more !

Discussion in 'Assets and Asset Store' started by KiwyVoxel, Apr 13, 2016.

  1. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    PackagingShot860x359.png

    Voxelab

    Voxelab is a real time procedural meshing solution based on voxels. Use one of the three meshing method available to extract your custom isosurface. Modify in real time your boundless world. Use triplanar shaders to easily display your textures.
    Are you a developper? Do you want to start learning about voxels and procedural meshing?
    For the first time on the asset store, is gathered everything you need to create your own world of voxels. Available on PC, Mac and Linux platforms.

    Features :
    Voxel Meshing :
    1. - Dual Contouring is fast, faithful to the shape and conserve sharp features. To approximate you can use the common QEF or schmitz's based on particle method.
    2. - Marching Cubes is one of the oldest and most renown technique. It is a fast method on which D.C. is based upon.
    3. - Boxel is the basic representation of voxels by cubes. Easy to understand and perfect to start learning about voxel meshing.
    4. - Multithreading to get the best performance out of your multi-core CPU.
    5. - Real time modification with constructive solid geometry. Simplexe noise, height map, cube, sphere and planes included.
    Chunk Management :
    1. - The world is divided into chunks to manage the work load and create a bounded or infinite world.
    2. - Chunk pool to avoid in-game instantiation by recycling chunks.
    3. - Frustrum culling available with a work priority.
    4. - Finite State Machine to know exactly at which state in the meshing pipeline the chunk is.
    Triplanar Shaders :
    1. - Allow to shade your meshes up to three textures on three axes without the need of setting UVs. Based on world's or object's normals, for a total of 18 shaders. It is perfect for procedural worlds and large terrains.
    2. - Diffuse, Specular, Bump, Emission, Parallax, Opacity blending and Rim Lighting.
    3. - Custom editor Shader UI to easily set your shaders' options.
    Learning Tools :
    1. - Fully available and docummented code in C#.
    2. - Free tutorials (in English and French) and online documentation on voxelab.fr .
    3. - C# hierarchy and patterns to create your own iso-surface.

    Demonstration on Youtube :


    Voxelab - Complete Edition : On Unity's asset store

    This package contains all the features listed above.

    How to create a mesh from voxels? How to use Dual Contouring (with QEF method or based on particle), Marching Cubes or Boxel? How to manage the multi-threaded work load? And the world's chunks? How to display our textures?

    SmoothEdit480x226.PNG

    Voxelab - Meshing Scripts : On Unity's asset store

    This package only contains the three meshing scripts : Dual Contouring, Marching Cubes and Boxel.

    Do you want to learn how to create mesh based on voxels? Do you find the SIGGRAPH papers too complicated? This package include the most renowned meshing scripts, in terme of simplicity, speed or fidelity.

    DCWF480x309.PNG


    Voxelab - Triplanar Shaders : On Unity's asset store

    This package contains every triplanar shaders.

    Do you have trouble getting rid of texture stretching on large terrain or procedural meshes? Do you want to avoid skinning and UV mapping? Even if you dont use voxels, you can use those shaders on anyone of your projects. Display up to three textures on three different axis.

    TriplanarShaders480x265.png

    Support :

    Would you like to know more? Do you have questions? Contact me at contact@voxelab.fr
    If you want to talk about voxels and this project, you can follow it on Unity's forum.
    You want to learn about voxels, but have no money to spend? You can use the free tutorials (french and english) on Unity's forum or voxelab.fr.
     
    Last edited: Apr 13, 2016
    ikemen_blueD likes this.
  2. ikemen_blueD

    ikemen_blueD

    Joined:
    Jan 19, 2013
    Posts:
    341
    I'm so glad that you finish your Voxel systems. I will purchase Voxellab soon mainly for learning purpose. Hopefully, more tutorials about Voxels from you, and more cool updates in future. Dual Contouring, Marching Cubes, Boxel algorithms are such nice topics, but not much "easy-to-understand" tutorials about them, unless one can read research papers, which is hard (for me) ;)
     
  3. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Thank you for your support. Dont hesitate to give me feedbaks. I hope you will enjoy my work. :)
     
  4. ikemen_blueD

    ikemen_blueD

    Joined:
    Jan 19, 2013
    Posts:
    341
    Purchased. Full source + Written Tutorials for a niche topic ;) Btw, just let u know your forum link from your AS page is broken. I will study your system soon enough when I finish some of my current works. Happy coding, mate!!!
     
  5. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Thanks again ! If you have any questions I am here to help. :)
     
  6. Bitstream

    Bitstream

    Joined:
    Mar 3, 2015
    Posts:
    8
    Voxelab is designed for desktop use, but could the engine run on mobile devices?

    Is Voxelab only for terrain or could you also create buildings/structures, ramps/stairs...?

    Is it possible to mix for example Dual Contouring terrain with Marching Cubes Buildings?
     
  7. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    The engine is design for desktop use because voxels requiere the processing of a huge amount of data. Mobile devices have less cpu capacities. Hence if you want the exact same abilities (Dual Contouring, Boundless World, lots of voxels, etc...), it will run on a lower fps. But you can use some part of that engine to make your own voxel engine on mobile. For example Minecraft runs fine on mobile.

    You can represent any shapes you want. The only limitations that you could encounter is the sharpness or fidelity to the shape of the meshing technique (Dual Contouring is the best) , and the number of voxels sampled (the more voxels you have, the more informations you have).

    As is in Voxelab it is not possible to mix meshing techniques. Because Dual Contouring can do what the others do. But it would not be hard to use different techniques in the same world or mesh.

    Do you have a particular goal in mind ? I could probably give you more answers.
     
    Last edited: Apr 21, 2016
  8. jovino

    jovino

    Joined:
    Jun 5, 2013
    Posts:
    24
    I tested your PC demo a lot with Dual Contouring and it breaks for me all times after few minutes. I can't say what's happening because no errors are thrown, but terrain generation and modification suddenly stops working.
    Any idea about what is happening?
     
  9. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Hello, sorry for the delay, i was in vaccation from Thursday to yesterday.

    As is, the chunk management will make every mesh modification that you ask for. So if you click a lot and fast you can overwhelm your CPU.
    Also it is important to note that in a boundless world, chunks meshes will be made untill you stop moving and all the loading distance is done. Hence your CPU may be already working, even if player's modification have the priority.

    But I have encountered a similar bug, that should have been fixed. So I will look further into it. Please could you give me more details, as which kind of world did you made ? Did you clicked a lot ? Moved your camera view ?

    Thank you for your feedback.
     
    jovino likes this.
  10. jovino

    jovino

    Joined:
    Jun 5, 2013
    Posts:
    24
    Hi there:

    Thank you for answering, I saw also your email, nice customer support here, even with the potential ones :)
    I choosed the default settings for a "boundless world" with "Dual Contouring " and also I can reproduce with "Marching cubes", it seems to work fine with "Boxed".

    I also noticed a big delay sometimes when editing the terrain, my first impression was like you said, "your CPU may be already working", but waiting for terrain to build and editing the terrain with minimal size brush, around 3 seconds between clicks, minimal camera movement, don't makes any difference. What is more, the bbox highlight shows the block placed but no mesh is drawn.
    When this happens, terrain generation stops working, that is, I can fall into the void.
    Good thing, the last sentence I wrote made me think about collisions, I runned another test and worked fine until I collided with terrain while editing it very close.

    My system specs:
    - i7-3630QM @ 2.4Ghz
    - 8 GB Ram
    - Radeon HD 7600M (laptop)
    - Windows 10
    By the way, the demo always shows a crazy fast fps, that's the main reason why I'm interested.
     
  11. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Thank you for your feedback and informations, I am looking into it and I will come back with an answer as soon as possible.
     
    jovino likes this.
  12. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    The renegade bug has been found and destroyed !

    The fixe will be available in the next project's update.
    For whose cant wait, you have to move this line
    Code (CSharp):
    1. chunk.Priority = MeshingMethod.Priority.update;
    From the ChunkManager script at line 319 (ChunkToUpdate() function) to the line 102 (in the ChunkStateUpdate() coroutine).

    See you around.
     
    jovino likes this.
  13. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Voxelab 1.01 is on his way !

    The update will be available on the asset store as soon as Unity accept it.

    Content :
    In the meantime you can try the Windows | Mac | Linux demonstration scene.
     
  14. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Voxelab 1.02 is comming soon !

    Same as before, it will be available after Unity's approval.

    Content :

    Try it Windows | Mac | Linux
     
  15. Kevz93

    Kevz93

    Joined:
    Feb 11, 2015
    Posts:
    2
    Hello! This is awesome !
    Can I use it on point clouds in realtime ? ( where I keep feeding in different pointcloud data @30fps )
     
  16. KiwyVoxel

    KiwyVoxel

    Joined:
    Jan 14, 2015
    Posts:
    64
    Hello,
    Yes you can but it depends on how much data (how many points) you are using and which coutouring you want to use.