Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Procedural Voxel-based Terrain

Discussion in 'Works In Progress - Archive' started by LSpring, Dec 4, 2014.

  1. LSpring

    LSpring

    Joined:
    Nov 12, 2014
    Posts:
    68
    There's already some multi-threading going on, especially in the mesh generation for various lods, but yeah, there are some hiccups when new blocks of raw terrain data get generated.

    What I'm probably going to do is take that last step and go to a more continuous data generation model based on viewer distance.
     
  2. LSpring

    LSpring

    Joined:
    Nov 12, 2014
    Posts:
    68
    A few new screen captures. I optimized the terrain generation further so I'm able to get more distance detail in realtime. I was doing some computationally expensive things every frame, and now I am distributing those computations across multiple frames.

    Also, in these shots I am trying out some elements from the Azure[Sky] package. I recommend it. I just bought it yesterday and it was well organized and easy enough to integrate with my project and to immediately write some of my own modifications to the shaders and scripts.

    Infinitum_27.jpg

    Infinitum_26.jpg

    Infinitum_33.jpg

    Infinitum_35.jpg
     
    MD_Reptile likes this.
  3. onehand

    onehand

    Joined:
    Dec 3, 2015
    Posts:
    8
    Looking awesome. Keep us posted!
     
  4. LSpring

    LSpring

    Joined:
    Nov 12, 2014
    Posts:
    68
    Resurrecting an old thread.

    For those interested in shaders, I've written a new optimized triplanar shader that works with standard Unity terrain as well as voxel (marching cubes) generated geometry.

    Some special features include:

    Height-blending between splat layers
    Per-layer height displacement (raises or lowers a particular splat surface type)
    Parallax Occlusion Mapping
    Multi-UV distance blending
    Per-layer procedural noise
    Per-layer color/brightness/contrast controls

    All of the above works seamlessly with triplanar projection mapping.

    Here is an image using only 5 sets of textures (excepting the road), each set consisting of an albedo w alpha as height and a normal map.

    shader_02.jpg


    In going for a more "AAA" look, this shader does require DX11, but it is very easy to use, and all the controls are embedded in the shader itself. In the near future I plan on releasing this shader to the community.
     
  5. onehand

    onehand

    Joined:
    Dec 3, 2015
    Posts:
    8
    That looks stunning! Great work. I'd love to play around with this shader. :)
     
    LSpring likes this.