Search Unity

[TerrainEngine] Voxel Terrain : Smooth,Cubic,2D,Hexagonal Infinite Procedural Terrain

Discussion in 'Assets and Asset Store' started by dyox, Mar 19, 2013.

  1. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559

    Hi everyone.
    I'm working on last systems (Biomes/Vegetation) for TerrainEngine.
    I was not satisfied by MegaSplat shader, i've decided to create a new shader to better fit to TerrainEngine Features :
    -Per Pixel Normal
    -Per pixel SplatMap
    -Reflection / Specular
    -Voxel/Splatmap blending

    Terrain Size (8km2)
    Desktop Screenshot 2019.10.29 - 21.07.10.21.png Desktop Screenshot 2019.10.29 - 21.06.59.28.png Desktop Screenshot 2019.10.29 - 21.00.44.86.png Desktop Screenshot 2019.10.29 - 20.59.29.28.png Desktop Screenshot 2019.10.29 - 20.59.10.45.png
     
    Last edited: Oct 29, 2019
    Ascensi, DJ_Design and Tethys like this.
  2. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,788
    So you are limited to 4-5 blending again? May I suggest you to look at ghost recon wildland? They have a similar but per pixel splatting up to 255 maps (one channel splat) with bilinear blending between splatted.
     
    dyox likes this.
  3. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    No, Im using texture array. (255 textures)
    The same channel packing as megasplat to keep backward compatibility.
    (Diffuse rgb height,normal r=spec,ba=normal)

    I also already made a bilinear blending for splatmap and terrain normal.
     
  4. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    577
    How is the FPS using tessellation and would it have enough performance to work with VR? Does it have GPU Occlusion culling? or comparability with Godoc https://assetstore.unity.com/packages/tools/utilities/gdoc-dynamic-gpu-occlusion-culling-139079
    There is another asset I'd like to see work with displacement handling but it may give you ideas to build yourself rather than interest to integrate 3rd party and that is screen space displacement mapping to negate the need for tessellation https://forum.unity.com/threads/screen-space-displacement-mapping-no-tesselation-progress.611659/ -this may have been mentioned already.
     
    dyox and Tethys like this.
  5. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559

    -Biomes
    -Vegetation Editor
    -Runtime nodes
    -ECS Colliders
    -AssetBundle/Resources Management
    -360° billboards
    -ScreenSize LOD (realtime)
    -And more ...
     
    Last edited: Nov 17, 2019
    x4000, Tethys, ROMA_VALERIUS and 2 others like this.
  6. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    -UnityPhysics
    -Vegetation Colliders
     
    Last edited: Nov 17, 2019
    x4000, ROMA_VALERIUS and blacksun666 like this.
  7. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,788
    What's your computer specs?
     
    dyox likes this.
  8. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    Windows 7
    I7-4770k 3.5ghz
    16gb ddr3
    Nvidia gtx 1080 founder edition
    500go ssd
     
    neoshaman likes this.
  9. Tethys

    Tethys

    Joined:
    Jul 2, 2012
    Posts:
    666
    WOW!!!!!! I must have!
     
    dyox likes this.
  10. danielsenna

    danielsenna

    Joined:
    Oct 24, 2018
    Posts:
    3
    how come I can't find this in the asset store?
     
  11. whatbus2000

    whatbus2000

    Joined:
    Nov 21, 2014
    Posts:
    59
    It has never been in the asset store, but will be, eventually when it is ready. I cant wait.
     
    dyox likes this.
  12. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    780
    just wanna know where can I buy this asset?
     
    dyox likes this.
  13. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,262
    That´s what we all want to know since years :)
     
    dyox likes this.
  14. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    780
    I'm learning voxel coding and marching cubes algorithm now, will follow the creator's steps and make a voxel system for experiments while waiting the creator's amazing work :)
     
    dyox likes this.
  15. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    Hi, TerrainEngineNext Beta 2 is almost done.


    Features :
    -Infinite procedural Voxel Terrain ( Burst : 60+ Algorithms, Stamps, UnityTerrain, Cavity, Slope,Height,Voxel,Erosion)
    -Pathfinding : Walk,Climb,Fly (worldposition, normal, voxel)
    -ScreenSize LOD
    -360 Billboards
    -Shader : Parralax, Splatmap, Per Pixel Normal, 255 Textures
    -Mesh to Voxel converter : Convert any mesh to SignedDistanceField
    -Voxel Raycasting
    -Decoration Instancing (Custom Frustrum, Custom shadow Mesh, Instancing)
    -Editor/Runtime World Editor
    -2048*2048 Terrain load time : 0.57s
    -Task system working with Unity Jobs
    -AssetDatabase : Load/Unload assets from resources or AssetBundle (Decoration,Billboards,etc)

    Terrain Tool :
    -Symmetry
    -Modification preview
    -Fracture (Sharp, smooth)
    -Water
    -Rotation, Mirror

    Total of 137 burst jobs.
    Heavily optimized, main thread usage stay < 3ms with a job dispatcher and priority queue.
    A complete Blittable NativeArray system with realtime memory usage info and pooling

    Burst Job :
    -Blur/GaussianBlur/Cavity
    -Raycast
    -Pathfinding
    -Transvoxel
    -Octree
    -Fracture
    -Terrain Operators
    -60+ Noises
    -World SplatMap/NormalMap generation
    -Frustrum Culling
    -ScreenSize LOD
    -Erosion

    Generic Systems :
    -Create a new terrain operator easily. It will automaticaly use Burst
    -Plugin system : Decoration,Water,Terrain Tool. All systems are built using the plugin interface.
    -NavVoxelAgen : Replaced NavMeshAgent reference to this. It contains same functions and system. Allowing to switch easily from any existing solution.

    And more.

    For more information, contact me : fastmarchingcubes@gmail.com.
    TerrainEngineNext is production ready and is actually used on few projects.
     
    Last edited: Jan 23, 2020 at 12:39 AM
  16. SirStompsalot

    SirStompsalot

    Joined:
    Sep 28, 2013
    Posts:
    101
    I am blown away.

    Damn. Looks like it's been worth the wait.
     
    dyox likes this.
  17. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,788
    That looks amazing! I wonder when you will start planet terrain lol

    HOWEVER I would advise you to ditch the complicated inflated cubemap model for the superior octahedron mapping, which allow so many optimization and less cases to test, as less complex map and also much less distortion.

    IN fact the hemispherical version is the best , rather than the full sphere unwrap (for chunk based system) because it simpler to manipulate, as negative and positive hemisphere, and it has only one clear line to manage at the equator (instead of the weird cross shape seam of the full sphere unwrap). It's also way to simpler to visualize and create map for.
     
    dyox likes this.
  18. phil-harvey

    phil-harvey

    Joined:
    Aug 27, 2014
    Posts:
    62
    Looking very nice.
     
    dyox likes this.
  19. phil-harvey

    phil-harvey

    Joined:
    Aug 27, 2014
    Posts:
    62
    One question, is how does it work for networking and being server authoritative?
     
    dyox likes this.
  20. Tethys

    Tethys

    Joined:
    Jul 2, 2012
    Posts:
    666
    Wow, this is wonderful! This is a huge upgrade, definitely interested in purchasing a seat - well done!
     
    dyox and SirStompsalot like this.
  21. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    780
    I've sent an email to the address up there, but still no response. Just wanna know how can I buy a seat.
     
    dyox likes this.
  22. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    TerrainEngine is built for multiplayer.
    The architecture is ready but I've not made the network interface actually.
    It will support a full / semi authoritative server.

    Can you send me a PM with your email please?
     
    Last edited: Jan 26, 2020 at 9:51 AM
  23. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    Generating a planet is definitively on my list, but there are many obstacles independant of the type of mapping or the planet rendering architecture.
    Generating :
    -Curvature
    -Erosion
    -Fluids
    Is almost impossible for a planet, except if it's pre-generated like on star-citizen and having a database of maps.
    All existing planet rendering solution are looking same and the visual result is not what i'm targeting.

    Also, i do not want to use any GPU system, as i want a fully authoritative server, generation must only use CPU. It's why i'm not using any Compute Shader on TENext.

    Desktop Screenshot 2020.01.26 - 11.13.01.40.png Desktop Screenshot 2020.01.26 - 11.11.53.19.png Desktop Screenshot 2020.01.26 - 11.10.39.44.png Desktop Screenshot 2020.01.26 - 11.07.12.87.png Desktop Screenshot 2020.01.26 - 11.06.54.11.png
     
    Last edited: Jan 26, 2020 at 10:28 AM
  24. dyox

    dyox

    Joined:
    Aug 19, 2011
    Posts:
    559
    Desktop Screenshot 2020.01.26 - 11.06.27.90.png Desktop Screenshot 2020.01.26 - 11.03.21.96.png

    My plan is to implement :
    -Networking
    -Caves
    -Roads
    -Rivers/Lakes
    and increase the current view distance (from 16/32km² to 160/320km²) and after i will work on a planet system for TE.
     
unityunity