Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Voting for the Unity Awards are OPEN! We’re looking to celebrate creators across games, industry, film, and many more categories. Cast your vote now for all categories
    Dismiss Notice
  3. Dismiss Notice

[WIP] TOZ Planet and Terrain Renderer

Discussion in 'Assets and Asset Store' started by aubergine, May 24, 2018.

?

Price range should be?

Poll closed Jun 29, 2018.
  1. 20 - 40 USD

    75.0%
  2. 40 - 80 USD

    25.0%
  3. 50 - 100 USD

    0 vote(s)
    0.0%
  1. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Hi,

    6 months into research and prototyping, here is the first WIP version of my LOD Planet Renderer.

    Currently available and bug free features are;
    * Lod stages seamless changing
    * Mesh generation per lod stages
    * 2 types of uv mapping per procedural or handpainted textures / heightmaps
    * Atmospheric scattering shaders for both inside and outside of the atmosphere
    * Planet wide accurate water rendering (needs improvements)
    * Multi threaded, and very fast.

    Needs improvements on;
    * Better normals/tangents generation for use with complex shaders

    Additional features after the above is done, will be;
    * Ability to use the LOD partitioning as a normal terrain rather than full planet.

    Here is a short video of the LOD in action.


    I assume this will be a finished product and will be available in the assetstore in a few weeks time. But it will be a generic version. Will do customization of the package per customer needs if asked for.
     
  2. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Another video to Show progress, very fast procedural heightmap generation is done. Randomization is controlled by a seed value or you can generate from pre-built values. Flickering on lod changes is intentional for debugging purposes.

     
  3. Razmot

    Razmot

    Joined:
    Apr 27, 2013
    Posts:
    345
    That seems interesting !
    Does that mean you will handle the use case of transitioning from sphere mode to plane mode ? The previous spherical worlds assets failed to deliver the full workflow to work in spherical mode (maybe because it's actually too much hassle for anyone ! ).

    Like planting trees and deco, biomes, pathfinding, integration with character controllers ( the standard unity one and anything based on it has Y down gravity hardcoded)
     
  4. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    It means, you can use it as a planar terrain instead of full planet as well, a plane in any direction you want.

    Pathfinding will be supplied with the package, its a mix of my old 3d astar (waypoint based, not grid based) and an octree partitioning.
    Same octree can also be used for the visibility of the detail objects (trees, rocks, stations..etc)

    Important thing is, this is NOT unity terrain and exact functionality is not promised. The planet and/or terrain will be procedural, no hand painting or stuff.
     
    Mark_01 likes this.
  5. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Progress.

    Below video shows bug fixes on lod stages, and approximation of normals (for lighting), also initial version of the atmosphere shader, it is currently a full vertex shader and that is why the cracks are visible.

    Now there are 2 ways i can go with this package; speed before quality or other way around.
    So, need help to make a decision.
    Either way, i will provide customization for each customer anyways.

     
  6. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 4
    Procedural texture generation is done.
    Collision detection is now optimal.

    Almost ready.

     
  7. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 5 - Beta 1

    Package is now in beta stage, and a release candidate is coming up.

    *Water surfaces added, will add improved shaders on the released version.
    *Colliders are optimised for lod stages.
    *Heights are now bound to a seed value, that means every planet will be same if used the same seed number, and they will be different if they use different seed numbers.
    *Every planet has a gradient color for heights and a seperate detail texture for details.
    Planet shader needs improvements for lighting and shadows.

    Here is a video of water in action..
    The first visited planet is of low quality (Works with mobile)
    The second planet is of high quality and has no water surface.
    There is also a medium quality for average machines and an ultra quality to blow your graphics cards.

     
    Mark_01 likes this.
  8. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 6 - Beta 2
    *Atmosphere shader is now optimised and procedurally generated.

     
  9. Razmot

    Razmot

    Joined:
    Apr 27, 2013
    Posts:
    345
    Looking good !
     
  10. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 7 - Beta 3
    Stress testing 3 medium planets with in close range. Normally, the distance between 2 planets should be longer than maximum allowed lod range. Just wanted to see if my ancient computer will explode, it didnt. And still preserved average 130-150fps.

    My development laptop computer specs are:
    3rd generation intel i5 - 2430M - Quadcore (2 physical)
    6gb ram
    intel hd graphics 3000
    nvidia geforce gt 520mx


     
  11. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 8 - Release Candidate 1

    Additional features to the normal lod rendering are;

    * Accurate lighting and shadows on planets
    * Sun shader
    * Multi-threading of all enabled planets, not just one
    * Implementation of a slightly modified version of TOZ Noise for generating all kind of different heightmaps for planets.
    * Scene assets management optimisations, no more leaks.

    I will submit a version this week to AssetStore with initial prize of 80USD and will gradually increase at each update.
    I assume, there will be monthly updates with new features.

    Below you can find a sample video to Show lighting, atmosphere and sun effects.

     
  12. Razmot

    Razmot

    Joined:
    Apr 27, 2013
    Posts:
    345
    Nice work, especially the shaders.

    Still, it seems to me 80 USD as a starting price is quite high, as there are cheaper alternatives on the store and multiple free planet lod quadtree projects on github (some of good quality)

    At this kind of price, I would buy only if/when the package had a proven track record of updates and support. Maybe you can reconsider your launch price ?
     
  13. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Hello @Razmot
    i should say i am a big time fan of frontier elite style games, although there isnt many to consider. And i am trying to make such a thing possible since i learnt programming. So, i followed up most assetstore packs that do lod planets (there arent many either) and those github projects you mentioned.
    But none come close to what i believe i achieved already and what i am planning to add.

    You could say, this package is a lod solar system rather than a lod planet. So, most of the hard work is already done for you to make a space game possible.

    I was not going to release it till i add most of the features in my mind, but then i thought if i get sales meanwhile, i will have more motivation.
    So, i thought 80 is reasonable. And for the price you get the full source code, help and customization for your needs.

    Anyways, what price range do you think is reasonable?
     
    Razmot likes this.
  14. Razmot

    Razmot

    Joined:
    Apr 27, 2013
    Posts:
    345
    I would recommend to do a launch price of 40/50 and then increase the price with each major update.

    I'm not saying that just to get it at half price ;)That's what I would do too as a publisher. Myself I'm currently rewriting one of those naive but clean github quadtree code base to use the unity 2018 job system.
     
  15. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Update 9 - Release Candidate 2

    Features are;


    • Lod stages automatically calculated per distance, shape and variety of variables
    • Collision is calculated automatically per lod stage
    • Fast atmosphere calculation both inside and outside of the atmosphere
    • Planet wide accurate water rendering with lod stages and underwater fog.
    • Multi-threaded architecture, very optimised and very fast.
    • Can render whole solar systems, not only one planet.
    • Accurate lighting, shadows on planet surfaces using most optimised shaders using 2.0 shader model.
    • Can work on mobile platforms (1)
    • Implements a modified version of TOZ Noise for generating heightmaps (2)
    • Doesnt work with WebGL (3)
    Soon on the assetstore.

    (1) Planets has 4 quality options (Low, Medium, High, Ultra), low and medium planets can be used on mobile.
    (2) TOZ Noise is a complete package used for generating all kinds of noise in 1D, 2D and 3D, it includes volume textures rendering, heightmap generation, mesh modification...etc and is completely free on my website.
    (3) WebGL does not support multi-threading, so package wont work on that platform.

    Future updates and planned features are;
    • 2D and/or volumetric Cloud layers, the base code is already in the current version.
    • Implementation of improved heightmap generation, TOZ Noise is already in the current version.
    • Waypoints and pathfinding helpers, user should have their own solution, but the package will provide an automatic waypoint generation system for planet boundaries.
    • and many more...etc

     
    Razmot and Mark_01 like this.
  16. aubergine

    aubergine

    Joined:
    Sep 12, 2009
    Posts:
    2,864
    Just submitted the first version to store, please ask specific questions in this support forum post from now on.