Search Unity

  1. Unity 2019.1 is now released.
    Dismiss Notice

Realistic OpenWorld Workflow

Discussion in 'World Building' started by samuelbrunner, Dec 6, 2018.

  1. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Hello,

    First, i get the data, https://opentopography.org/ (select data-raster)



    I cut 5 small 30km pieces of terrain and save them to png using MicroDem (This software is free)

    Open Gimp, resize images to 1k pixel each, clean gaps, save, import in unity

    Then im gonna use the Gaia Scanner and sculpt the terrain with my stamps.


    When the terrain look good i use Vegetation Studio With the heatmap view to place my textures. ( Dont use Gaia texture spawner is a pain to use )


    Its a bit tricky to spawn textures with VS and work with CTS


    I spawn the trees using textures rules and spawn a character usinf ootii well made Character Wizard


    The next steps are adding feature like post process, grass, more tree, rock etc
     
    Last edited: Dec 6, 2018
  2. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Finnished it look like this ( I use enviro for the sky )



     
    Last edited: Dec 6, 2018
  3. Print3d

    Print3d

    Joined:
    Oct 22, 2017
    Posts:
    35
    Hello Samuel, i can't tell you how much i was looking forward to a thread like this. Glad you made one, i was just thinking about it :)
    Now, i have an arsenal of terrain assets at my disposal, but i'm really struggling in getting something cool out of it (my bad).
    i may post a new thread if needed but for now i'll reply here.

    So here is the list (alphabetical order):
    CTS - Complete Terrain Shader
    EasyRoads3D Pro V3
    GeNa2
    GoMap
    Gaia
    MapMagic World Generator
    Path Painter
    Relief Terrain Pack V3.3
    Real World Terrain
    Terraland 3 - in my opinion the best asset at what it does!
    Terrain Composer 2
    Voxeland
    World Composer

    So my ideal workflow would be:
    1) Use Terraland 3 to generate multiple terrains* with satellite imagery grouped together (works like magic and it's fully automatic - i believe this would help you as well to speed up the initial generation);
    2) Delete Terraland 3 plugin and keep only the necessary downloaded heightmaps and satellite textures;
    3) Directly work with the terrain to paint the satellite imagery with different good looking textures and spawn specific plants, grass, trees at specific colors or altitude. Do you know if there's anything i could use among the assets i already bought to reach my goal?
    I checked out Vegetation Studio and seems interesting, but i'd rather use what i already have at the moment.
    Thanks to you and anyone taking time to answer!

    *Using multiple terrain makes many assets unusable at the moment.
     
    Last edited: Dec 9, 2018
  4. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    I totally agree

    Now im doing a 300km terrain for flying and a got alot of crach, can t share my work easely and take awhile to compute the terrain, but is a challenge

    But i will say, using real world terrain and texture is boring and unusable, except maybe for a flying sim

    The fun part is to make a new world, to use your creativity, to create a magical place that isn t exist on earth

    I think you don t need the same scale as real terrain, 1/3 work fine, and real world are boring in fact, so its why i like the gaia stamps, you take real terrain and make a new one

    Also i think you don t need VS since you can t do the vegetation with MapMagic and it look fine ( testing in now, if my terrain don t crash )

    Here is some screens 300kmap.png 300kmap2.png 300kmap3.png 300kmap4.png , all is done in Map Magic, exept the terrain datas from srtm
     
    protopop and HeadClot88 like this.
  5. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    559
    got a 120 bucks for another tool? ,World Machine - but Free to try or 513 max output size though:-( ,

    I had to save for months...
    but now that I have used it for two weeks , I cant beleive I lived without a tool like this, or waited so long.

    I created a macro (automation tool) for satellite imagery / height maps from Terraland 3, so I can upsize height maps to 4K with erosion, roads/paths, rivers, etc..and generate up to 16K, new & improved color maps/normal maps...

    then back to Terraland 3 to split them all up for big world streaming..

    The detail I can create from any location/satellite textures is simply..amazing.
    And it will match with CTS Near Far blend shader..nicely, It can also create vegetation maps, for vegetation studio.
    example soon..

    I am basically re-creating the entire location & upsizing..with additions!
    and am hoping to get a pretty close re-creation in Unity.

    and about the screen shots below..the satellite image, doesn't line up anymore with the height map, I messed it up..but guess what?,...it does not matter, I create a new beach texture as well!, from your own ground texture.

    I might release it for free..if I can figure out what all those erosions masks are for..really, so far...just winging it.... time for some geo research : http://gotbooks.miracosta.edu/geology/images/rock_cycle_big.jpg




    and from a web siteI found today, I created this...oh, the time I wasted, manually picking colors!




    See The whole new color map

    For me, All other Pro Terrain Gen software was $250.00+, WM Standard's was cheaper and max output size limit, is on your available RAM.

    The great thing is, with a web color key creator, Picking colors for Terraland 3 , from satellite imagery is now a breeze...do you know about those?

    p-
     
    Last edited: Dec 13, 2018
    Print3d likes this.
  6. Print3d

    Print3d

    Joined:
    Oct 22, 2017
    Posts:
    35
    Hey read your post, seems we are going for the same stuff!
    I'm extremely interested about the

    part!

    Basically, you are combining Terraland 3 with World Machine if i got that correctly.
    Are you referring to something like this
    ?
    Unfortunately i bought many assets which promised a lot but in the end i could not use, either because a clunky interface or because they were abandoned right when i bought them.

    Check this one for example:


    Isn't that a great feature?

    Unfortunately seems it's not available anymore. The developer seems to be a nice guy but he has other projects...
     
    awesomedata likes this.
  7. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Thanks for the replies

    Here is how im doing a 300km map with Real World and Map Magic

    1: With RealWorld
    - Get the Heightmap and Colormap with Real World
    - Save the heightmap as RWouput.raw ( flipped )
    - Use the texture to create a oceanmask.jpg
    tuts01.jpg tuts02.jpg


    2: With MapMagic
    - Import RWoutput in Map Magic. Scale the terrain at 1/100 for performance
    - Some erosion will add details, set sediment to 0.1.
    - Use oceanmask.jpg and curve to raise the terrain (cause the ocean is at height 0, and the erosion low the terrain)
    - Do the texture with reference
    - Scale the terrain at 1/1, adding the original terrain texture at 0.2 opacity with clouds removed
    - Export the terrain with this script https://www.dropbox.com/s/tnb3v1s6r5h1ss0/ExportTerrainData.cs?dl=0

    tuts04.jpg
    tuts05.jpg
     
  8. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    559
    That looks a lot bigger than 300 km!
    • and what do you do w/ 300 km of game map?
    • and what happens at 2000 m high...and 1 m low..what does the player see?
    • what shaders are you going to run this with? and at what is your texture size?
    • are you using splat maps?
    • how are you going to light bake something so huge, with trees and props?
    • what platform are you shooting for?
    • what about a background map layer, of the same spot, that's even bigger, and lower res.
    • do I need 4K heights, or can I use normal maps/ lower res mesh terrains?
    some of the questions, I ask myself, before even starting a map like that..


    I started a new 220 km map last night..and I am still answering those questions.
    p-
     
  9. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    559
    I will create a short video, when I start moving these assets to unity, and add all the game generated assets, from my tool, but I wanted a bigger map, a better 'real world' example (pun intended)...20 Km , snowy mountain scene & 220 Km Geo Desert, I found...




    need to dial down erosion, I was just testing, maxing out for effect!
    -p
     
    Last edited: Dec 15, 2018
    Print3d likes this.
  10. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Sorry i forgot to put the link for the finnished map

    https://www.reddit.com/r/Unity3D/comments/a5u9kf/330_km_terrain_free_to_use_download_link_in/

    The terrain is made for flying jet simulation, yes im using splatmap, i don t need to bake lights i use realtime lighting ( when you uncheck both lights generation option)

    This project will run fast on everyting, here is the cube at 1m and at 2000m ( using cts for better visual )

    What im targeting, probably PC

    1m.png 2600m.png

    I used a 2k heightmap for this terrain, cause the texture won t generate in 4k, so my terrain is less detailed than it should be. It could look way better, but i wan t everyone able to open the project

    Im still struggleling to add vegetation, cause VS seem to only work with terrains shorter than 8k ( here is 40x 8k chunked terrain)
    2018.13.jpg

    Here is a screen with enviro ( not compatible with jets cause you cant see clouds from above) and Post process

    300km.png
     
    Last edited: Dec 14, 2018
    Print3d likes this.
  11. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Using Unity limitation, max distance before floating point error is 10k unit from center. So my terrain size will be 10k max from center. So my terrain will be 20km large.

    I will using 0.6 scale to do my world, so 30km IRL would be 20km in unity, then i' am adding an extra terrain both sides, i call it surrounding terrains, i set the parameter to have 3X3 Terrains, like in the good old bf2 engine

    - Using the real world asset to catch the terrain ( should work the same in terrain composer), i generate the roads with the easyroads extension

    tuts01.jpg

    I export the central terrain, flipped. I add a MapMagic terrain, with the same width and heights, and import the exported raw in. I add some erosion with sediment to 0.

    tuts02.jpg

    I open the central satellite image in gimp, then i convert my image to 12 colors, and then i use these colors to do texture masks

    tuts03.jpg

    I go back to RVB so add black and withe colors
    I select each texture and make de mask ( blur your masks ! )

    tuts04.jpg

    When its done, i use masks to spawn textures ( here is free textures i use ) https://1drv.ms/u/s!AkxoqYb10mtugQjK50mUNjA9-5LN

    tuts05.jpg

    - next part soon
     
    Last edited: Dec 16, 2018
    Gabriel_SG likes this.
  12. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    When im happy with the textures, i export my terrain with the MM export script ( be carefull MM while share is terrain data with the exported terrain, also it while update it if you made a change in MM ).
    I drag n drop the exported terrain to scene, add cts to it, configure texture color etc, add the satellite texture as colormap, so now, the terrain while look good from far away and from the ground too tuts07.jpg

    Messing with CTS, i change color tint to match the terrain and add the satellite texture at 0.1 opacity

    tuts08.jpg

    Messing with VS, enviro, post process etc

    Result i had yesterday beforee unity destroyed all my work
    map01.jpg
     
    Last edited: Dec 16, 2018
    Print3d and Flurgle like this.
  13. ghtx1138

    ghtx1138

    Joined:
    Dec 11, 2017
    Posts:
    113
    I am very obviously way behind all of you and recently started on the same problem https://forum.unity.com/threads/large-terrain-problem-how-to-recreate-this-in-unity.608152

    @samuelbrunner I hope you started again after your crash - the pic above looks incredible

    @ForceVFX I found your SatMapRetexturizer tool on the TL3 (which I purchased last night) thread and have been reading your posts all day - incredible work

    I really am a newbie and am struggling with the relationship between Terrain Tile Size, Diffuse texture resolution (I am using HDRP and Terrain layers), Heightmap resolution (it can go to 4k?), terrain textures, splats (which I think are just blendmaps), masks for procedural object placement, etc. Am just now learning about Terrain normals.

    hope to hear more from all of you.

    Cheers
     
  14. samuelbrunner

    samuelbrunner

    Joined:
    Jan 29, 2017
    Posts:
    51
    Hi

    Now im using 10X10 maps for a 60km map (120 km irl but scaled at 1/2 ingame ), but i still fear the floating point origin bug, for now, im struggling with de shadows shaking.

    I use a 512 heightmap resolution, 1024 use too much ram, but on a final result i will use 1024 or even 2k resolution.

    I use map magic to change how many tiles i have, and its really quick, i can hidde some and work only on a tile, i can do all the terrain texture too with mask i do in gimp (from sat texture) and some slope, erosion or height rules.

    Then i use the textures i generated from mask magic for mass vegetation placement.



    From sky https://ibb.co/SrggmWC
     
    sharkapps likes this.
  15. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    559
    that looks great!
     
  16. ghtx1138

    ghtx1138

    Joined:
    Dec 11, 2017
    Posts:
    113
    Are you guys familiar with Scrawks terrain topology tools?
    https://github.com/Scrawk/Terrain-Topology-Algorithms

    Might be another tool for procedurally determining biomes on terrains

    Eg "The slope map describes the steepness of the terrain and is handy for texturing the terrain. Like the normal map this also requires the first order derivatives."



    I came across this guy - https://github.com/Zibe/Dryade who is using "heterogenous relief procedural generation, using multifractals." :confused: - this is procedural but I was wondering if it could add details via a splat mask - similar perhaps in principle to what @ForceVFX is doing with worldmachine (If I understand correctly)



    Scrawk also has an erosion tool https://github.com/Scrawk/Interactive-Erosion "The idea behind this project is to erode a height map through a series of natural processes to help create a more realistic height map. Three processes are applied to the height map each frame and can be classed as force-based erosion, dissolution-based erosion and material slippage."



    @samuelbrunner TL3 has a floating origin script in it. There's this from the wiki http://wiki.unity3d.com/index.php/Floating_Origin and this thread on Reddit https://www.reddit.com/r/Unity3D/comments/2wty0u/better_floating_origin/

    Cheers
     
    HeadClot88 likes this.