Search Unity

GAIA - AAA terrain generator, procedural texturing, planting and scene creation

Discussion in 'Assets and Asset Store' started by AdamGoodrich, May 21, 2015.

?

Would you pay an upgrade fee for Gaia 2 so that we can hire to accelerate its development?

Poll closed Sep 3, 2018.
  1. Yeah super cool - I would pay a $15 upgrade fee to get it faster!

    83 vote(s)
    80.6%
  2. No way - you promised free and i am happy to wait!

    20 vote(s)
    19.4%
  1. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    You can check which assets contribute the most to the build size in the build log and try to reduce & compress, etc:
    https://docs.unity3d.com/Manual/ReducingFilesize.html

    Other than that you could look into techniques to load things dynamically, for example here is a thread on loading scenes dynamically in WebGL, not sure if the info there is still valid though:
    https://forum.unity.com/threads/webgl-with-streaming-option-like-webplayer.316620/

    But it is also a question why you want to publish your game on the Web - for smaller games WebGL can be nice since you can run it right away in the browser, but for the rich gaming experience a desktop version usually is more suitable, alone when looking at the performance gain from Desktop vs. WebGL.
     
  2. mattes3

    mattes3

    Joined:
    Apr 23, 2019
    Posts:
    15
    Hi Peter,

    thanks for the 2 pointers, I'll have a look at them!

    Two reasons why I want to publish on the web:
    • I want to be able to update the game regularly, directly on the server, without a new install on the clients. I do not know how this can be done if the app is installed on the desktop.
    • I tried to generate a version for desktop (Mac OSX) but the resulting app always crashes on startup. With the latest versions of OSX and Unity, it does not crash any more but fails to display the scene.
    Cheers
    Matthias
     
  3. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    You could publish desktop builds on itch.io and Gamejolt, both offer clients like steam that would update the game on the users computer automatically, (as long as they are using those clients, of course).
    Then there would be publishing on Steam as well, if the publishing fee is not a blocking reason.
     
  4. mattes3

    mattes3

    Joined:
    Apr 23, 2019
    Posts:
    15
    Oh cool, I'll have a look at those, too! Thank you.
     
  5. Harald_Heide

    Harald_Heide

    Joined:
    Jul 22, 2015
    Posts:
    51
    Any chance of a stronger integration with Azure[Sky]??
     
  6. digiross

    digiross

    Joined:
    Jun 29, 2012
    Posts:
    200
    I'm starting a new project and own Gaia. When Gaia 2 is complete (whenever that is, no rush), will it migrate easily or will I have to redo everything? Also, a ballpark date say 3rd quarter 2019? Thanks
     
  7. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Can you tell us what kind of integration you would like to see? The integrations under the GX menu can be made by the other asset developers themselves if they are interested: http://www.procedural-worlds.com/gaia/gaia-extensions/how-to-create-a-gaia-extension/

    But also without any kind of integration, in general any other sky asset should work as long as you don't set up the Ambient Sky Samples that come with Gaia and then use the sky asset as if Gaia was not involved in any way at all. In case you did already set up skies with Gaia you can always remove them again from the GX menu as well to make room for another sky asset.
     
  8. marvalshot

    marvalshot

    Joined:
    Dec 29, 2013
    Posts:
    153
    Great tool however very heavy.
    Any suggestions (We need GAIA light :) ) when importing to what files are essential. I just want to bring in the bare min into Unity and then add the extra goodies as needed.
     
  9. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    You should be able to migrate, we are trying to keep everything compatible. 3rd quarter sounds about right. ;)
     
    JBR-games and digiross like this.
  10. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Yes, we are aware of that it is too bloated at the moment and we will improve on that. Part of the problem is that we currently need to put everything that we want to publish in one single package, so we probably can't work around the large download, but it should be possible to make it so that all extra assets are easily identifiable for deselection during import.
     
    digiross likes this.
  11. Givago

    Givago

    Joined:
    Oct 22, 2015
    Posts:
    26
    Good night,
    I'm trying to make spawner in runtime, though I did not succeed.
    Has anyone managed to change so that trees are created in runtime?
     
  12. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,231
    Hope you dont mind if I ask for an update on version 2.0. I know things arent easy when Unity themselves are changing/adding terrain-related features, but 2019.1 has been out a while now, the terrain brush pack is available, terrain holes just got added to latest 2019.3 alpha and I dont think there is too much else on the Unity roadmap apart from 'Layered Environments Package in Preview' currently scheduled for 2020.1 according to May roadmap slides ( https://www.dropbox.com/s/bj8l1s7meiw00dj/Roadmap - Q2 - 2019.pdf?dl=0 )

    So, whats happening?
     
  13. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Runtime generation is not officially supported, but in theory you can call the Gaia Stamper and Spawners and other tools at runtime as well to populate a terrain. Try looking into the spawning and stamping buttons from the respective editor, if you look into the code you will find that they boil down to call a single function that applies the stamp or does the spawn, so you could call those from your own script as well. When you try to run this in a build you might need to add a few workarounds though to make "editor only" functionality available in the build.

    For example if you look into SpawnerEditor.cs, the code file responsible for displaying the spawner in the unity editor, you will notice that the spawn button does some basic checks, like looking if the required resources are on the terrain, but after that it is just one line of code that is needed to do the actual spawning:

    Code (CSharp):
    1. m_spawner.RunSpawnerIteration();
    So all you would need is a reference to a spawner that is either preconfigured by you in the scene hierarchy, or that you configure with your own code, and then you would need to call "RunSpawnerIteration" and it should behave the same way as if you would have clicked the button for spawning.
     
  14. Volferi

    Volferi

    Joined:
    Jan 5, 2019
    Posts:
    2
    I have a strange problem. Yesterday I tried yousing your tool to paint texture on terrain, but nothing happens when I'm trying to paint. I mean, even with 100 opacity it does nothing. Before that it worked perfectly, I have no idea what could have happened. I work in a dev studio and have already asked programmers if they broke something :(
     
    Last edited: Jun 11, 2019
  15. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Hmm, there actually is no tool to paint textures on the terrain in Gaia - with Gaia you use the texture spawners that process the terrain as a whole rather than paint manually.
    Since you mentioned the opacity, this sounds like the built-in Unity terrain texture brush maybe. Are you using an additional terrain shader such as CTS maybe?
     
  16. Volferi

    Volferi

    Joined:
    Jan 5, 2019
    Posts:
    2
    Actually it turned out that somehow texture quality in Project Settings influenced the ability to paint textures. When I changed it to highest possible quality it suddenly started working... Thanks for help though! :)
     
  17. brichard0625

    brichard0625

    Joined:
    Dec 18, 2016
    Posts:
    26
    I also had this problem and turning off Auto API fixed painting issues.
     
  18. jrackley

    jrackley

    Joined:
    Jan 26, 2017
    Posts:
    55
    Hello,
    I have four errors when I import Gaia:

    Assets/Gaia/3rd Party Samplers/Ambient Samples/Scripts/GaiaUnderWaterEffects.cs(4, 29) error CS0234: The type or namespace name 'PostProcessing' does not exist in the namespace 'UnityEngine.Rendering'. Are you missing an assembly reference?

    Assets/Gaia/Scripts/Utils/Scripts/GaiaPipelineUtils.cs(29, 29) error CS0234: The type or namespace name 'PostProcessing' does not exist in the namespace 'UnityEngine.Rendering'. Are you missing an assembly reference?

    Assets/Gaia/3rd Party Samplers/Ambient Samples/Scripts/GaiaUnderWaterEffects.cs(109,16) error CS0246: The type or namespace name 'PostProcessVoume' could not be found. Are you missing an assembly reference?

    Assets/Gaia/3rd Party Samplers/Ambient Samples/Scripts/GaiaUnderWaterEffects.cs(110,16) error CS0246: The type or namespace name 'PostProcessVoume' could not be found. Are you missing an assembly reference?

    I have tried reimporting, and still get the four. Any help?
     
  19. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    From the sound of these error messages I would assume you have had installed Post Processing and uninstalled it again at some point, but there is still the entry for it present in the scripting defines in the player settings. Do you have Post Processing installed at the moment?
    If not, could you please open
    Edit > Project Settings > Player
    and then check whether there is an entry called
    UNITY_POST_PROCESSING_STACK_V2
    in the Scripting Defines?
    PlayerSettings (1).jpg

    If that entry is there but PP is not installed at the moment, please remove the entry and press enter while the cursor is still in the input field. This should trigger a recompile and the errors should be gone, Gaia will install a matching version of Post Processing when you open the Gaia Manager the first time.
     
  20. MorpheusXI

    MorpheusXI

    Joined:
    Jan 18, 2018
    Posts:
    26
    ***********
    Twoonebe / AdamGoodrich / DavidLieder / PWPeter

    As I'd like to do a 100km world as 32k is too small, I've picked up on these threads.

    In editor issues I think can be resolved with GPU Instancer, also + Sectr Core/Stream.

    I'd say a development would be for AdamGoodrich & team to look at removing the restriction on 32k max in the future with enhancements to their multiple tools to facilitate the process of going beyond 32k :) As far as how long it takes to spawn initial world objects to create the Gaia world.....anyone who wants the larger world just leave PC on longer or invest in £2k GPU + i8 card if you need it quicker... I also have Amplify Imposters, so Gaia team should not worry about performance, just the techinical issues to Sectorize lager map/texturing each sectr and Gena integration across those Sectr's. Can this be added for roadmap?
     
    Last edited: Jun 30, 2019
  21. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    I want to ask a frank question.

    What is the status of Gaia 2.0 and multi tile terrain support? And is it going to be an extra charge?

    I bought Gaia YEARS ago when this feature was promised. At the time it was said "Buy it now before the price goes up when we add all these new features" so I did, now years later that still doesn't exist and I'm going to have to pay more ANYWAY so yeah. Seems like after I bought all the development got diverted into other assets like GeNa.

    Can you give an honest answer as to what is going on with this?
     
    Rockwall33 and Quast like this.
  22. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    It is on the roadmap already: In Gaia 2 you will be able to create larger multi-terrain worlds right off the bat, e.g. you can choose like "I want a world of size A divided in B * C terrains with the following terrain resolution settings"
    Please note that in the current Gaia version you can go beyond 32k on a single terrain already if you increase the terrain width and length manually in the terrain settings in the unity inspector. The problem is the terrain resolution values will most likely not give a satisfying quality then.
    You can also go the multi-terrain route with current Gaia now and create multiple terrains one by one until you have reached your actual world size of 100km , but it is not very comfortable to do so since you would need to work on every single terrain tile individually and then also close the seams between them with manual retouching.
     
    MorpheusXI and JBR-games like this.
  23. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Gaia 2 is in active development and will be a free update to honor the original announcement when it was said it is going to be free.
     
    MorpheusXI, Rockwall33 and JBR-games like this.
  24. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    That's good to hear. Do you have any sort of time frame? I don't expect an exact date but do you at least have a goal in mind? Are we talking weeks, months?

    I am currently working on a project that needs to use multiple terrain tiles. One tile just won't work. I need to figure out if I'm going to be able to do this with Gaia or if I have to turn to another solution.

    Are people doing any sort of ad-hoc multi tile workflows with Gaia now? If so what is the common method?
     
  25. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    With Gaia could I sculpt up a terrain the way I want and then export that terrain as a mesh?
     
  26. SickaGamer

    SickaGamer

    Joined:
    Jan 15, 2018
    Posts:
    669
    Gaia 2 will be Q1 2020 ;)
     
  27. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    We are still in the "months" range with it.

    What you can do at the moment is to create multiple terrains in your scene and then work one by one on them and deactivate the other terrains for that moment. During Stamping Gaia will want to position the terrain centered at 0,0,0 so you would need to move the terrain back after spawning to its correct world position.
    Another issue you need to work around is that you will need to fix up the borders between the terrains as Gaia can't stamp across multiple terrains yet, but since Unity 2018.3 the internal unity heightmap tools can do so if the terrains are set up as neighbors.
    But other than that you can use Gaia on multiple terrains one by one and use the same spawners and settings for them.

    Another method is to make one larger terrain with Gaia and then split that up into smaller terrains with SECTR or a script. This method has the advantage that you don't need to fiddle around with activating and deactivating terrains and fixing seams between them, but you are somewhat limited in terrain resolution values with the single origin terrain.
     
    MorpheusXI likes this.
  28. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    I did plan to use SECTR to stream multiple tiles, but starting with a single very large terrain isn't a valid way to approach it because 1) We need terrain larger than a single tile can handle even at maximum and 2) That approach as you indicate would result in a very low resolution terrain mapping.

    I started looking into the first approach, and using Unity's new stamping feature to stamp across multiple terrains but ran into a few issues. The first is I can't seem to get CTS to work on multiple Unity terrains, though it seems to work when I make multiple terrains with Gaia. Not sure what's up with that but I posted in the CTS thread. The other issue I ran into though is sadly Unity restricts the size of the stamp so at most you can only stamp something across a couple terrains.

    I think I'm going to have to step back and figure out just how to handle the larger features that I need (some of which are like 10+ km in size). The original goal was to break everything into 1km x 1km Unity terrains and use SECTR to stream them in as necessary. But painting the large features down across these terrains is proving to be a hitch :(
     
  29. JBR-games

    JBR-games

    Joined:
    Sep 26, 2012
    Posts:
    559
    Since Gaia-2 is still a ways off, i tested terrain stitcher and it worked really well.. issue is after building several terrains with Gaia the average height of each terrain was pretty far off.. this caused awkward blending..

    is there any easy way to raise or lower the complete terrain data on a terrain? as changing the height of the transform did not work. idea here is to make blending reasonably close.
     
  30. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    Unfortunately without some tool to stamp across multiple tiles, I'm pretty much at a wall with my original plans. Going to instead spend some time seeing how far I can get with MapMagic, at least to make the large terrain features and then maybe I can find a way to go back into those generated terrains with Gaia to finish them up? Not sure.
     
    JBR-games likes this.
  31. JBR-games

    JBR-games

    Joined:
    Sep 26, 2012
    Posts:
    559
    You can certain have multiple maps with gaia you can only stamp 1 at a time and they must be centered. So you can recenter each piece and stamp...
     
  32. jwvanderbeck

    jwvanderbeck

    Joined:
    Dec 4, 2014
    Posts:
    530
    But I need to stamp one stamp across multiple tiles, which Gaia won't do.
     
  33. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Almost forgot to answer that one: Yes that is possible, there is a mesh exporter built in in Gaia:
    meshexport.JPG
     
  34. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Check the terrain utilities, and in there the "Add To Terrain" and "Subtract From Terrain" operations, those are exactly what you would need.
    add.JPG
     
    JBR-games likes this.
  35. Harjawalda

    Harjawalda

    Joined:
    Sep 1, 2018
    Posts:
    10
    Hi guys, I have some issues creating grass, while grass texture placement does work in unity as well as in the GAIA spawner for the plain texture variant, I cannot get grass-groups (as in meshgroup out of several identical grass textures) or gras meshes from speedtree to work. Painting those in unity default does not work, spawning them via the GAIA detail spawner does not yield results either, he says the spawned a number of instances but they are not visible. I can spawn in the grass meshes via the tree spawner as well as place them in unity via the tree tool but that cant be the right way to do it?
     
  36. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    The issue sounds like it is caused because the grass groups or the speedtree grass meshes have features that are not supported by the terrain detail engine: The unity terrain grass system only supports simple meshes that are then displayed with a very simple vertex lit shader. If you have more complex GameObjects for your grass with Levels of Details (LOD) and custom shaders, those usually won't work as terrain details.
    One workaround can be to pick one LOD and turn that into a prefab to use as terrain detail. If the textures allow it, you can also pick one of the textures and use those as grass textures in the terrain detail system.
    Another workaround can be, as you discovered already, to spawn the grass as trees instead since the tree system supports LODs as well.
    If all that fails, the grass needs to be spawned as GameObject.
     
    JBR-games likes this.
  37. Jbs_GameZone

    Jbs_GameZone

    Joined:
    Dec 14, 2018
    Posts:
    99
    Hi Peter,

    Only now that I managed to allocate time for debugging this.
    Indeed, it was the IOS compression (PVRTC 4bits) that was causing the degradation in how the textures were displayed. The best compromise for me was to modify the Compressor Quality from Normal to Best (at the expense of allocating a bit more CPU at compile time) which further improved the appearance of the texture. It still can't be compared with the original uncompressed quality, but it's definitely very good for something that occupies 1/8 of the original size.

    Thanks for the pointers
     
    PWPeter likes this.
  38. PrimusThe3rd

    PrimusThe3rd

    Joined:
    Jul 3, 2017
    Posts:
    14
    Hi,
    I guess where option in Terrain.party is set to 10km we are actually dealing with a terrain size of 100km2. I constatly watch various reviews (tutorials*) like where "if for example 8km is selected than you get a 8 km2 size of terrain"...but in fact it's 64km2. So minimum size of Terrain.party map is 64 km2 (if you want to scale it in 1:1 in Unity3D). I'm I right? :)
    Best regards,
    Primus

    *
     
  39. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Yes, you are correct: The option in terrain.party refers to the side length of the capturing rectangle. So it is not "10 square kilometers", but "10 kilometers squared" which equals to "100 square kilometers" ;)
     
    PrimusThe3rd likes this.
  40. PrimusThe3rd

    PrimusThe3rd

    Joined:
    Jul 3, 2017
    Posts:
    14
    Thanks Peter!

    I'm building a big terrain for my cycling sim app... and I'm experimenting with some of the Assets (and Gaia).
    Can you please guide me (I can't find any tutorial on this issue) how to construct a new Gaia terrain combined with a purchased Assets (https://assetstore.unity.com/packages/3d/vegetation/trees/polygon-nature-pack-120152). I have opened a nice Demoscene (attached screenshot) but when I create a new terrain in Gaia I get nowhere near such nice results (I'm using default settings (VR/Synty) at the moment).
    Thanks for any help .. much appreciated!
    Primus .

    I have
     
  41. noobynobody

    noobynobody

    Joined:
    May 9, 2019
    Posts:
    31
    I'm also planning to use Gaia with the Nature Pack so it'd be awesome if you could get it to work.
     
  42. joeee19

    joeee19

    Joined:
    Jul 14, 2012
    Posts:
    43
    Hello.
    I am working in LWRP mode.
    However, Stamp Preview will be pink in stamper.
    Is there a way to solve it?

    Unity ver2019.1
    GAIA ver1.9.5.1
     

    Attached Files:

  43. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    The screenshot you posted looks like you just spawned the synty textures on an otherwise empty terrain - that is of course not looking very good in comparison to the handcrafted demo scene that actually uses trees, grass, rocks, etc.
    What you need to do is you need to add the textures, trees, grass, gameobjects to a Gaia resource file to make them usable with Gaia and then spawn them on your terrain. Please refer to the "Resources" tutorial videos in the Gaia tutorials and or the sections on resource management in the Gaia Manual to learn how to add new entries to a resource file and how to control where to spawn them on the terrain:
    http://www.procedural-worlds.com/gaia/?section=tutorials
     
    PrimusThe3rd likes this.
  44. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Gaia creates standard terrain as output, so any pack that works on / with standard unity terrain should work with Gaia as well. What can be a problem is when packs introduce assets that are not intended to be spawned "the regular way" because they are not 100% compatible with the unity terrain tech:
    For example some asset packs contain speed tree grass, which usually uses Level Of Details (LODs). The unity terrain detail / grass system does not support LODs, so you need to spawn such grass assets as trees or gameobjects then instead - but that is then not a Gaia issue, but a pure Unity issue that would hit you without Gaia being involved as well.
     
    PrimusThe3rd likes this.
  45. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    Hi, please check the directory
    Assets > Gaia > Materials
    inside you should find a GaiaStamperMaterial
    this is the Material the Gaia Stamper uses for the preview mesh. Please assign it a LWRP compatible shader with the shader dropdown at the top. (If I remember correctly it is LWRP > Standard)
    upload_2019-7-12_2-53-2.png
    You can then continue to configure the material to your liking and the preview mesh should adapt these changes.
     
  46. joeee19

    joeee19

    Joined:
    Jul 14, 2012
    Posts:
    43
    Thank you!
    I can resolved perfectly!
    スクリーンショット 2019-07-12 10.24.05.png
     
    PWPeter likes this.
  47. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,622
    Gaia 2 is making massive progress. Can't wait to show off whats coming!
     
  48. PrimusThe3rd

    PrimusThe3rd

    Joined:
    Jul 3, 2017
    Posts:
    14
    Peter one question regarding terrain size... If I create a terrain with an option in Gaia of: 8129 Meters Sq...we are dealing with a 64km2 terrain? Thanks in advance!
     
  49. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    360
    yes, roughly: the number 8192 is referring to the width & length of the terrain, so you got a terrain of 8192 meters x 8192 meters = 67,11 km2

    The pre-defined numbers are chosen to match the underlying heightmap and splatmap resolutions, those are always "Power Of Two" textures and therefore you get a more even distribution of height- & splatmap across the terrain when your terrain has a side length in power of two dimensions as well. If you need to hit precisely 64 km2 for your terrain size, I would recommend to create with 8192, then simply select the terrain and turn down the width and length to 8000 instead in the terrain inspector.
     
    PrimusThe3rd likes this.
  50. PrimusThe3rd

    PrimusThe3rd

    Joined:
    Jul 3, 2017
    Posts:
    14
    Great, thanks for really fast & simple answer that I was looking for. :) Wish you all the best with the upcoming launch of Gaia2 update. :)