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. We are updating our Terms of Service for all Unity subscription plans, effective October 13, 2022, to create a more streamlined, user-friendly set of terms. Please review them here: unity.com/legal/terms-of-service.
    Dismiss Notice
  3. Have a look at our Games Focus blog post series which will show what Unity is doing for all game developers – now, next year, and in the future.
    Dismiss Notice
  4. Join us on Thursday, September 29, for a day with Unity's SRP teams here on the forum or on Reddit, and discuss topics around URP, HDRP, and the Scriptable Render Pipeline in general.
    Dismiss Notice

TerraWorld - Automatic Level Designer for Real-World Locations

Discussion in 'Assets and Asset Store' started by TerraUnity, Nov 27, 2019.

  1. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  2. jason0663

    jason0663

    Joined:
    Dec 4, 2020
    Posts:
    29
    Hi, is it possible to use your own terrain with this program. Can I load my own terrain into it as I want to use world machine terrain
     
  3. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Current version obtains data from ESRI & OSM geo-referenced servers but you can still use LIVE SYNC feature in WorldTools to change terrain heights and textures to your own whether created in World Machine or any other terrain generators: https://forum.unity.com/threads/ter...al-world-locations.784217/page-6#post-7028986

    WorldTools is showcased in this video tutorial to get started:



    So when you import your own heightmap using stock terrain tools on terrain, then LIVE SYNC feature in TW adopts all created layers in world with latest height changes and then you can also go ahead and change each generated layers' settings and placement as shwon in this video tutorial:

     
    StevenPicard likes this.
  4. jason0663

    jason0663

    Joined:
    Dec 4, 2020
    Posts:
    29
    excellent thx
     
    TerraUnity likes this.
  5. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  6. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Download and play with "Little Farm Interactive Demo" to see how you can interact with world elements and global settings like world style (switches between 3 world styles) day/night cycle, snow distribution, wind effect, volumetric fog and...

    Download & Play here: https://terraunity.com/freedownload/Interactive_Little_Farm.zip




    This interactive demo has 3 completely different world styles and uses free Assets available on AssetStore. You can use a gamepad or keyboard to interact with world elements.

    More info: https://terraunity.com/community/topic/interactive-little-farm/
     
    StevenPicard likes this.
  7. Shakkar

    Shakkar

    Joined:
    Sep 18, 2017
    Posts:
    6
    Hey, I had a quick question... I am looking for an asset to assist in creating infinite terrains, is this something that TerraWorld / TerraLand can do? I believe my main concern would be avoiding floating-point error when moving too far away from the 0,0,0 origin.
     
  8. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    @Shakkar Both TerraWorld and TerraLand generate worlds based on real-world data and infinite here only applies to TerraLand's Streaming system where you can have your world in tiles loading in runtime:




    But again, infinite procedural worlds is a different topic which these products won't support, however TerraWorld has this feature in its roadmap.

    Regarding floating point error, we had a solution to cover this since TerraLand's Streaming system existed, for a brief overview of the implementation, refer to this post: https://forum.unity.com/threads/ter...-open-world-environments.532304/#post-3504450
     
    Rowlan likes this.
  9. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  10. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    VRoid With Unity + TerraWorld - Automated Level Designer



    In this video I'm demonstrating the power of Unity with TerraWorld terrain generator and environment - Automated Level Designer to demonstrate how it is possible to create a world of very high quality I use the character created inside the VRoid and imported, if you want details of something just ask that I record a detailed video.
     
  11. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  12. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Lost In The Woodlands By TerraWorld feat. PrOmid • Deep Relaxing & Meditation Music

     
    StevenPicard likes this.
  13. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  14. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Create Detailed Environment For FPS Game In Unity By TerraWorld - Tutorial, Part 10 (Player Tab)

     
  15. dsilverthorn

    dsilverthorn

    Joined:
    May 14, 2017
    Posts:
    758
    Looks like most of your videos are gone. :(
    I never got to see them.
     
  16. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    All videos are live and working! Where is the IP location of yours?
     
    dsilverthorn likes this.
  17. dsilverthorn

    dsilverthorn

    Joined:
    May 14, 2017
    Posts:
    758
    There must have been a glitch on YouTube.
    Almost all of them said “live event is over” and was just a black screen.
    But today they are back. It looks like they had been set to a live event, which means they only are aired during the event, apparently.
    At least they are back to be viewed now.
    thanks for checking into it.
    now I can see the rest.
     
    TerraUnity likes this.
  18. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Thanks for the confirmation and follow-up. Million dollar companies need holiday too :)
     
    dsilverthorn likes this.
  19. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    is it possible to use Terraworld's grass/ detail rendering & GPU rendering (for tree & object spawning) with our own mesh terrain (not heightmap)? if yes, how would be the worfklow? I want to use complete mesh terrain & not only part of it (as shown in your picture attach)
     
  20. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Yes, absolutely! Just follow the instructions in that post and experiment with it. TerraWorld does not care if your mesh surface is partly placed in the area or covers the whole scene! It can update and sync all layers' placement based on underlying surfaces such as your mesh terrain instead of the generated terrain.

    The workflow however involves some manual steps since initially TW creates terrain object and then you need to bring in your own mesh terrain in scene and do the rest of modifications.

    Your mesh should have MeshCollider enabled on it (you can disable it layer after placement though) with a certain Unity Layer on it for your logic and then from WorldTools component on TerraWorld gameobject in scene hierarchy, do the Layer Based Placement Filtering as shown in the images and finally press "FORCE UPDATE" button to sync all layers with latest scene changes.

    Also you can do the same for each single layer if you want to have more placement customizations by going to each layer gameobject under TerraWorld gameobject and from its inspector do the placement filtering for that single layer as shown in this part of video tutorial:

     
  21. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    Thanks for the reply. This is the hierarchy after I generated the terrain. Does this mean that I can unparent no.1 marked below & delete terrain generated by Terraworld (marked as no.2)?
    upload_2022-1-18_4-26-57.png
     
  22. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Yes, you can safely unparent children from the main terrain and delete the terrain or from its settings disable "Draw Heightmap" option for future reference. Before pressing the FORCE UPDATE, make sure you already inserted your own mesh terrain and setup Unity layers. Let me know of your progress here!
     
  23. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    I haven't created the mesh terrain yet. Currently still playing around terrain created with Terraworld. It looks great! :) I want to use Advance Culling (https://assetstore.unity.com/packages/tools/utilities/advanced-culling-system-157875) directly with Terraworld's terrain, but it can't detect the terrain created with Terraworld :( Is there any successful case for combining Terraworld with Advance culling system that you know of? Or is Advance Culling only support mesh terrain?

    Next question, can I still utilize Terraworld's GPU instancing when using with Microsplat?

    Another newbie question, I'm a bit confused when looking at the documentation on "scatter" part. Is my below understanding correct? When should I use which node?:
    1. "Terrain tree" is for tree placement (using Unity standard terrain tree system) -> does this mean it won't utilize GPU? So it's better not to use this??
    2. "Object scatter" is for prefabs -> can use collider/ physics in prefabs, but can it utilize GPU?
    3. "GPU instance" is utilizing GPU but not support collider or physics -> as long as the player is inserted in the "drop player here" in "Player" tab, it will still collide with physics right?
    4. In order to utilize GPU, I need to tick "enable GPU instancing" in the material shader is it correct?

    upload_2022-1-19_0-30-49.png
     
    Last edited: Jan 19, 2022
  24. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Never heard of the mentioned asset but from their showcase video, it seems that it only supports mesh terrains. However, Unity's own Occlusion Culling system supports terrains and subdivides terrain patches as shown in this video:



    In addition, TerraWorld comes with its built-in LOD & Frustum Culling system to bring the best performance in huge detailed worlds for a consistent framerate throughout the entire scene, see the introduction video here:




    Yes sure, you can use Unity's built-in terrain shader or any other 3rd party terrain shaders such as MicroSplat or you can use TerraFormer which is TerraWorld's built-in advanced terrain shader. See this post to get started about it: https://forum.unity.com/threads/ter...al-world-locations.784217/page-6#post-7231297

    Bravo, all considerations are true and on point.

    Terrain Tree Scatter places vegetation models on terrain and directly goes to terrainData as you would normally paint on terrains using stock Tree tools but if the material on prefabs have GPU Instancing enabled, they will use GPU Instancing while rendering.

    Object Scatter is like placing normal prefabs in scene with their transform references in scene hierarchy and has the least performance compared the other scatters.

    GPU Instance Scatter uses TerraWorld's advanced GPU Rendering solution which has the best performance among all and also supports any types of interactions like physics, collisions and... for placed models via PLAYER tab. And in order to use this scatter, simply turn on GPU Instancing on prefab's material(s).

    There is also Grass Scatter node which can place millions of blades of grass and flower plants for the entire scene dynamically with minimum performance impact if setup properly.

    Following screenshots are performance comparison between TerraWorld's GPU Instanced Rendering VS. Unity's Terrain Tree tools:


    Terrain Trees - FPS: 18

    TerrainTrees.jpg



    TerraWorld's GPU Instanced Rendering System - FPS: 126

    GPU_Instancer.jpg



    Note: Recommended placement method is GPU Instanced Rendering as TerraWorld's focus is on using GPU cores for rendering the scene and less CPU usage as the standard protocol for modern graphics. And one of the key features in the GPU Rendering system in TerraWorld is the Player Interactions system where it can convert all GPU models into CPU objects (normal prefabs) around set targets like player character or camera to deliver all kinds of interactions like physics and collisions.

    See this post regarding TerraWorld's GPU to CPU conversion of the models aka Player Interactions: https://forum.unity.com/threads/ter...al-world-locations.784217/page-6#post-7529498

    The falling trees when explosion happens uses TerraWorld's Player Interactions system to convert GPU models to interactable models around the player:

     
    Rowlan likes this.
  25. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    @TerraUnity thanks for the explanation. I'll explore both mesh terrain & unity terrain and see which fits better for me.

    In the meantime, I tried to use mesh terrain & unparent the children but I have lots of these errors. Unparent doesn't seems to work. I can't see the grass & vegetation in both editor or playmode.
    upload_2022-1-23_17-49-11.png

    My workflow:
    1. Generate the world in Terraworld like normal (I used forest template) & use microsplat
    2. Place the mesh terrain (with microsplat mesh terrain)
    3. Create new layer "terrain" & assign the mesh terrain to "terrain" layer
    4. Change the "layer mask" for each grass & vegetation to "terrain" layer & click "force update" on each
    5. Unparent the children from Terraworld's main terrain & hide Terraworld's main terrain

    2nd test I tried without unparenting the children from Terraworld's main terrain, I just hide Terraworld's main terrain. Vegetation will appear after player walk "near" them but the grass is completely disappeared. I also have this errors.

    upload_2022-1-23_18-13-25.png

    FYI, I'm using built-in renderer, 2020.3.14f1 and Terraworld 2.30.3
     
    Last edited: Jan 23, 2022
  26. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    @Minzie My bad, it is better to turn off "draw heightmap" instead of deleting it completely since a lot of runtime handlers still reference terrain in scene. The culling group errors may happen if some data is lost, so having your terrain mesh in scene is not related to the culling group errors, usually remake of the world will handle this. For updating the entire scene layers and models in scene from one place, you can select TerraWorld gameobject in hierarchy and from WorldTools component press "FORCE UPDATE". Let me know of your progress.

    P.S. Do you know about TerraMesh in TerraWorld?
     
  27. yogev2255

    yogev2255

    Joined:
    Nov 5, 2017
    Posts:
    31
    Hey, I just installed terraWorld and I am getting this errors :
    Library\PackageCache\com.unity.entities@0.17.0-preview.42\Unity.Entities\Serialization\ManagedObjectBinarySerialization.cs(70,33): error CS0117: 'BinarySerialization' does not contain a definition for 'ToBinary'

    Library\PackageCache\com.unity.entities@0.17.0-preview.42\Unity.Entities\Serialization\ManagedObjectBinarySerialization.cs(148,40): error CS0117: 'BinarySerialization' does not contain a definition for 'FromBinary'

    I have entities and dots on my project
    what should I do?
     
  28. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Hi, it was a known issue with the current store version which has been addressed and fix will be available in the next version which will happen soon. Please stay tuned for the next version.
     
  29. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    Thanks for the reply. TerraMesh as in "terrain mesh generator"? I used that node but it's not working for my usage as I want to replace the whole unity terrain to mesh terrain. Turning off "draw" in terrain setting works for me, but I hope I can completely remove the whole unity terrain to save build size & avoid clutter.

    Terraworld is a great asset, but it would be better if Terraworld functionality is more modular and not dependent on each other. I hope you can consider to make it more modular in the future :)
     
  30. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    With TerraMesh "Terrain Mesh Generator" node, you can replace the whole terrain with mesh, you need to input an area mask which covers the (e.g. Slope filter with 0~90 degrees in its range).

    TW is designed to work based on terrains at first and if you want to hide it, give it the lowest resolutions of data and turn off its draw heightmap so that it won't affect performance with little of extra build size. Also you can always change generated terrain's heightmap or settings right after world generation via built-in Unity terrain settings. For instance, when the terrain is generated, you can go into terrain settings and change its heightmap to a lower resolution one or any other modifications and finally from WorldTools on TerraWorld gameobject in scene hierarchy, press the button "FORCE UPDATE" to sync all the layers with latest heightmap/texture changes in your terrain.

    Regarding modularity, you are absolutely right and we try our best to make them work along each other with minimum dependency but as mentioned earlier, having terrain and in future terrain tiles was a must for TW scenes. However we are getting close to the stage to support mobile/VR/AR platforms officially so we will bring an option to choose between terrains and meshes.

    So check with the terrain replacement as I guided you and get back to me with the results.
     
  31. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    60
    Well, I tried this with no luck. There was error message related to "out of memory" (can't remember the exact error) when regenerating the world. I inserted slope filter with 0-90 degrees as you mentioned & selected the terrain material in "terrain mesh generator" node (I don't see option to direct select the terrain mesh??). I think "out of memory" issue is because of my huge mesh terrain size. So, I'll skip this method.
    I had other issue when testing this. I changed the "texture resolution" to the lowest & "force update" it (picture below is the original value).
    upload_2022-2-7_3-40-14.png
    However, all the details were "floating in the air". So I changed the heightmap resolution & control resolution to 1K (near to the original), but it made the details "sticking out" from the terrain instead. I'm not sure if you can see it clearly from this picture, but the details are not following the terrain shape (like "floating"). This issue is not appearing if I don't mess with the resolution & only turn off "draw" from terrain setting.
    upload_2022-2-7_3-41-7.png
    Another thing, sometimes I got below errors when I tried "force update" from world tool many times. The "player interaction" script lost reference image.
    upload_2022-2-7_3-55-33.png

    Thanks for your assistant anyway. I'll stick with turning off the "draw" for this time being & revisit this again after you've implemented the mesh terrain option :)
     
  32. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    First of all, thanks for the efforts and letting us know about your progress.

    I can guess the out of memory error is coming from the very high resolution TerraMesh which is generating, so easily reduce its resolution by changing the "Resolution" parameter as shown below (Taken from here):

    TW_TerraMesh.JPG


    Also don't be scared to experiment with other settings there and see the output since we tried to cover most of scenarios within the settings.


    "Control Texture Resolution" will set splatmap resolution which is used for texture blending on terrain and "Heightmap Resolution" obviously changes terrain shape and details, so if you change the heightmap resolution for any reason, you then need to re-sync all placements. You can do it easily by selecting TerraWorld gameobject in scene hierarchy and from WorldTools component on it, simply press EDIT WORLD and then FORCE UPDATE so that all layers will be adopted based on latest heightmap/texture changes on terrain. In order to setup placement for single layers separately, simply select their parent gameobjects under TerraWorld object and from the inspector do the modifications (in your case change the Position Offset's Y value). Following video tutorial shows how you can edit each layer in the world after world generation and any manual editing:




    I see, Unity changes its GUI API in every minor version and these kinds of warnings are inevitable, so you can ignore them and clear them from console and usually a revisit of the inspector, going back and forth in Play mode or restarting Unity will solve this Unity glitch.
     
  33. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  34. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Lately, a lot of users have asked about building to mobile platforms, performance and scene details. Below are a few fact statements which you need to take into consideration while using a level designer solution like TerraWorld in your projects.

    TerraWorld is a modular world generator and level designer system where you define different parameters and details for the target platform. So you as the app developer should know your target platform's limitations and consider them all and simply create scenes with TW and build. There is nothing to stop you from using TW in any platforms since Unity can port your scenes for that platform.


    Performance (application's FPS value) is a broad topic but note the following statement to keep in mind while developing your app:


    Templates & Project Settings for Target Platform (Desktop, Console, Mobile, VR/AR)

    Default presets in Quality Settings does not bring good performance and visuals to detailed environments TerraWorld creates and you need to have this window side by side your scene for visuals and stats for performance to achieve an optimal balance. Some of the most effective parameters for performance are: "Lod Bias", "V Sync Count", "Shadow Distance", "Shadow Resolution", & "Anti Aliasing (Set it to disabled since Post Processing handles it)" , "Color Space", "HDR Camera Rendering" and... Also download and play Alps demo and press Tab while playing to see the FPS and performance in a production level build in a very detailed environment with max quality settings and effects. In addition, 3D models and/or materials that come with the package may not be optimized for your target platform so feel free to use any 3rd party art and environment assets and feed them in Scatter nodes for placement which give much better performance along with VFX settings.



    Performance in General

    Never ask performance questions like this because you won't get a proper answer... Obviously because it depends on the mixture of target platform (Desktop, Mobile, VR), machine specs (CPU, GPU, Ram), screen resolution, assets count, rendering quality, LODs, shader complexity, post processing and effects, terrain data resolutions, placement items densities, shadow settings, lighting quality, GPU Instance settings, runtime handlers, physics and... which generate a FPS value in the end!



    Flexibility of TerraWorld Level Designer

    Generated worlds can be in any style and detail as you can feed in your own resources of prefabs, models, textures, terrain layers, effects... in the graph. Regarding performance, it's a broad topic and depends on many factors in generated scenes but TW is a modular system where you can control all densities, resolutions and complexities to set it for target platform so it's always useless to ask such questions for a dynamic world generator like TerraWorld.



    Details of the Generated World

    If your scene is detailed and populated densely then 8k is considered large already, if you need bigger area size you have to play with the graph/node settings to make the scene optimized. Generally it is an iterative process where you go into a trial & error process to get the best results and balance quality and performance. Hopefully all TerraWorld features are modular so you can enable/disable/edit all settings to set desired optimal setup.


    Download & play the free FPS demo scene by our team to have a grasp of what can be achieved with TerraWorld: https://terraunity.com/community/topic/first-person-shooter-military-game-windows/


     
    fabricadegame likes this.
  35. seldemirov

    seldemirov

    Joined:
    Nov 6, 2018
    Posts:
    46
    This asset was last updated on May 3, 2021.
    Is it time to bury him or will you start releasing updates? You have a good roadmap, but it hasn't moved in over a year.
     
  36. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Yes, that's true, we are heavily working on the new update and it will be released in a month from now as our biggest update yet and changes are major in terms of consistency and bugfixes.

    Do you own TerraWorld? Asking to see if current version has any issues in your projects! We have an active community on Discord which we listen to every question and feedback from our users, join here: https://discord.gg/9J6Jk7B
     
    seldemirov likes this.
  37. seldemirov

    seldemirov

    Joined:
    Nov 6, 2018
    Posts:
    46
    Yes. I own this asset and have been waiting for the promised support for HDRP for 2 years now.
    I thought about using the terra in my work. But I do not see that this asset would develop. He looks abandoned.
     
  38. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Again, please do not use the word abandoned or dead just because it did not get any recent updates as I've explained the situation and you can explore our active community.

    HDRP & URP support was there since 6 months ago on October 2021 right when announced on public roadmap, read about it here: https://terraunity.com/community/to...from-standard-rendering-pipeline-to-hdrp-urp/

    Believe me, HDRP, URP... is nothing but the same Unity with different materials! We have developed a scene converter described at the above link and made TerraWorld fully compatible with SRPs.
     
  39. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Here is a brief introduction of Scatter Nodes in the BIOMES tab which take a prefab of your own and place them on map based on specified real-world and procedural rules:

    TerraWorld has 4 kinds of Scatter nodes which you input your own prefab model and it handles placing and rendering them for you. These 4 Scatter node types are:

    1. GPU Scatter (Can input anything from vegetation, solid models like rocks or buildings along with PLAYER INTERACTIONS in PLAYER tab to unlock runtime interactions with them like physics and collisions...)
    2. Object Scatter (Can input anything from vegetation, solid models like rocks or buildings...)
    3. Terrain Trees Scatter (Inserted prefabs of vegetation goes through Unity Terrain Data as you would paint on terrains normally)
    4. Grass Scatter (Used to render high density grass, plant and flowers by inputting a material with texture of a grass/plant texture)

    TerraWorld creates natural environments based on real-world satellite and landcover data but does not cover geo-referenced cities/towns or procedural building/road system. It has a Scatter system through nodes where takes user-defined procedural rules and prefabs as resources to place them in scenes whether it's a tree, rock or building; so you can place any models in scene based on filtered areas and settings to even create a city or town based on populated models. An example of this which used Scatter nodes to place buildings is here:




    Don't forget to see this tutorial series on our YouTube channel to get started with TerraWorld capabilities starting from this video:




    TerraWorld also comes with Runtime GameObject Spawner component to place objects around set target (player). The following video shows how we placed buildings and houses using this system:




    This tutorial video shows how you can use your own models and prefabs to place in scenes:

     
  40. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
  41. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Did you know that TerraWorld comes with Runtime Spawners to place your prefabs around player?

    For example, you created your scene with TerraWorld in the editor, but need high density interactable NPCs or vegetation only around player, then use one of the Runtime Spawners to cover that for you. You can place any amount of layers from any model type you want, to bring high details around the player.

    Some of the benefits of the Runtime Spawner compared to baked data for placement are:
    • Faster Scene load time
    • Much higher density
    • Much higher performance & FPS
    • Extremely low memory footprint and no memory bandwidth limits
    • Dynamic and real-time adoption of placement to scene changes
    • No data pre-baking is required
    • No seialization/deserialization of baked data and no impact in scene save/load time

    Runtime Spawners in TerraWorld come in 3 modes of "GPU Instance", "GameObject" & "FX".

    GPU Instance Spawner: Placed models are GPU Instances for faster rendering suited for vegetation and high density scattered props for lush environments.




    GameObject Spawner: Placed models are Unity's normal gameobjects accessible through scene hierarchy suited for any kinds of animated NPCs or objects with specific and complex behaviors on them.




    FX Spawner: Effects will be spawned around the player based on given time & delay settings to keep them alive or born/kill them as one-time effects. Spawned particles are suited for rain, snow and dust storm effects in a performant manner.

     
    Last edited: Apr 26, 2022
    MorpheusXI likes this.
  42. JPilky

    JPilky

    Joined:
    May 7, 2022
    Posts:
    7
    Hi @TerraUnity,

    I purchased your terraworld asset a few days ago and have been enjoying having a play with it but I'm currently stuck

    I've been watching your 'Create Detailed Environment For FPS Game In Unity by TerraWorld' 10 part series on youtube

    I have a specific use case for terraworld and that is to reproduce real world environments for a mountain biking game. To do this I want three things from the terrain generation: (1) real world heightmaps (2) satellite colour data based realistic placement of environmental features such as forest, fields and lakes (3) use satellite images as template for the mountain bike trail routes/paths. I think these are all possible in terraworld but I can't figure out the last two.

    In part two of your youtube series (~1:58) on the colour tab you use the 'Terrain detail layer' processor and then use slopemaps to texture the environment. I don't want to do this (don't want to texture based on slope angle and don't need to place trees etc. based on slope angle as more mellow gradient). In the video you mention the 'Terrain global layer' processor and about being able to use satellite colour data to extract regions - this sounds exactly what I want (e.g. I want to be texture and place trees/objects in four distinct regions based on the distinct colours in the satellite image - large forest (dark green), small forest (mid green), grassland (light green) and dirt tracks (brown)). For example I want to use a forest floor texture in the dark regions of the area and populate it with large conifer trees. Are there any tutorials on how to do this? (or generally more information on how the terrain global layer processor works - I see documentation shows there are three different methods for this but I can't find any tutorial)

    The area I'm looking at is a 2.5km2 around the co-ordinates 51.713665741654694, -3.385056003567655

    I'm fairly new to Unity and completely new to Terraworld so still learning.

    One other side note is the first area I'm looking at appears to be present when I go on openstreetmap.org but that layer isn't available for that area on terraworld (just ESRI satellite data). Is there a reason for this?

    Many thanks
     
  43. Artini

    Artini

    Joined:
    Jan 29, 2016
    Posts:
    154
    Amazing asset and great tutorials.
    Any recommendations/tips about how to create roads for TerraWorld?
    Can we use some other tools like EasyRoads or Path Painter II to create roads?
    I would like to drive some vehicles on such roads.
     
    TerraUnity likes this.
  44. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    @JPilky What you are looking for to extract masks out of satellite image is done via "Color Filter" node from Masks dropdown in COLORS tab where you define a color and tolerance value for extraction of the color from the image (in this case Satellite Image node's image). You can then pass this area mask to any nodes for texturing, placement or other logics.

    Please keep watching video tutorials on our YouTube carefully since they contain a lot of useful information regarding customizing graphs and best bet is to load built-in templates and see nodes in graph to see what's going on behind the scenes and try to replicate the same steps.

    Regarding availability of layers between Openstreetmap and TW, please elaborate more and be more specific of the layer you are referring to!
     
  45. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Thanks for the kind words and we are glad you liked it so far. Regarding painting roads, you can pretty much use any 3rd party assets or in-house solutions which work on top of Unity's terrain system as TW does. So EasyRoads, Path Painter or any other terrain related assets are simply supported.

    To filter placement of TW layers whether if the road is painted as textures or generated as 3D meshes, take a look at these 2 posts and read through them to get started:

    Terrain layer based filtering: https://forum.unity.com/threads/ter...al-world-locations.784217/page-6#post-7028986




    Unity layer based filtering: https://forum.unity.com/threads/ter...al-world-locations.784217/page-6#post-7029001
     
  46. Artini

    Artini

    Joined:
    Jan 29, 2016
    Posts:
    154
    Thanks a lot for the explanation - you are the best.
    TerraWorld is a truly remarkable asset.
    It brings so much fun to developing with Unity.
    Thank you very much for creating it.
     
    TerraUnity likes this.
  47. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    @Artini so glad you found TerraWorld useful in your projects and we try our best to make it better with every update. Stay tuned to our latest releases from our Discord server here: https://discord.gg/9J6Jk7B
     
  48. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Next update is coming and FPS Shooter Demo is on the way :D

     
  49. TerraUnity

    TerraUnity

    Joined:
    Aug 3, 2012
    Posts:
    1,113
    Guys, finally... TerraWorld 2.5 is live on store. This is TerraWorld's biggest update yet as if it is a new product with massive changes and improvements.

    Join our Discord server to get all the info and fun there: https://discord.gg/9J6Jk7B

    Some of the new templates are:

    Realistic Forest
    Forest_Realistic.png


    Stylish Savannah
    Savanna_Stylish.png


    Stylish Forest
    Forest_Stylish.png


    Stylish Grassland
    GrassLand_Stylish.png


    Stylish Desert
    Desert_Stylish.png


    We would love to hear your opinions and feedback on the new update as we feed in all changes more deeply in the coming weeks.

    Hope you enjoy getting creative with the brand new TerraWorld!
     
    Rowlan likes this.
  50. Artini

    Artini

    Joined:
    Jan 29, 2016
    Posts:
    154
    It is great.
    Just wonder, why have you removed all the other templates from Realistic
    and left only Realistic Forest.
    Realistic Forest looks awesome, but I miss the other Realistic templates,
    especially the desert and the grass ones.
    Could you please put them back. Pretty please.
    Thanks in advance.
     
    TerraUnity and StevenPicard like this.
unityunity