Search Unity

Terrain Composer2 a next generation GPU powered terrain tool.

Discussion in 'Assets and Asset Store' started by eagle555, Sep 16, 2012.

  1. klund

    klund

    Joined:
    Mar 21, 2011
    Posts:
    33
    the terrain tools in unity works fine for smoothing and modifying the terrain. Just select the terrain object in the unity hierarchy and then the tools will become visible in the inspector. When you have the terrain you want then you should probaly make a backup by exporting the heightmap under settings:)
     
  2. Mick21

    Mick21

    Joined:
    Dec 3, 2013
    Posts:
    11
    Hi,

    To people like me, that have experienced "generate loop" error while trying to create colormap.
    I found working for me exporting .png, and with option "auto assing" colormap is setting properly as global color map - in my case RTP shader.

    I didn't quite figure this out. I followed tutorial from terraincomposer web and got into this issue. Maybe it's something with setting colormap as splatmap?
     
  3. Tovrin

    Tovrin

    Joined:
    Jul 15, 2015
    Posts:
    70
    I had a strange bug once where all my grasses Y axis put it below the terrain. Check if that's occurring. I had to fix it by deleting all the grass from TC (don't forget to <set all> to get all your tiles) and put them in again.
     
  4. FlightOfOne

    FlightOfOne

    Joined:
    Aug 1, 2014
    Posts:
    668
    Hi, I just purchased terrain composer. I am, I supposed to get the world composer with it? I do not see the world button. Thanks.
     
  5. Tinjaw

    Tinjaw

    Joined:
    Jan 9, 2014
    Posts:
    518
    World Composer is not included. It is a separate product. You will need to purchase it separately.
     
  6. CastleIsGreat

    CastleIsGreat

    Joined:
    Nov 10, 2014
    Posts:
    176
    Having an odd issue, my textures which are 16 bit are not importing correctly as the height map, it is only using the texture for 1/4th of the actual terrain...

    Figured it out after scratching my head for an hour or so, it was the local area's Area X and Y being set to 500/1000... What is the intended purpose of those not being at 1000? Because I was seriously confused as to why that would be the default.
     
    Last edited: Sep 19, 2015
  7. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Maybe we can do a skype screenshare and see what the issue is. My account is Nathaniel.Doldersum
    As for the splatmap in the corner of each terrain might be a refresh issue in RTP. If you go to RTP script on a terrain then in Main tab click 'Refresh All' button.

    WorldComposer exports satellite image and a raw heightmap. It automatically creates terrains from this. If you want to do it manually. What WorldComposer does under the hood is applying the satellite image as a splat texture on an Unity terrain and set the tile size to the terrain size.

    Importing a 4k heightmap works fine, TC can do much bigger heightmaps as well and spread them over a multiple terrains. You can flip the x and y axis if you unfold the settings in the raw heightmap filter.

    I think your splatmap texture is fine. So if you make a splat layer and add 4 splat textures to it and set input to image and enable 'Splatmap' in settings. It should work.

    As for the issues you have maybe we can do a skype screenshare, my account is Nathaniel.Doldersum. The steps in terrain are caused if the heightmap resolution of 1 terrain tile is higher then the resolution of the raw heightmap you import.

    What exactly you have issues with?

    There are many step by step tutorials here:
    http://www.terraincomposer.com/tutorials/

    Also you can take a look at the trouble shooting page. Probably you run into the second question.
    http://www.terraincomposer.com/troubleshooting/

    In TC terrain list -> Resolution -> Grass resolution, shift click set all after changing to apply.

    Maybe we can do a skype screenshare (my account is Nathaniel.Doldersum), I want to find out what this issue is.

    Nathaniel
     
  8. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    If you disable the auto assigning is it still happening?

    This happens if you place grass as meshes. It's an old Unity terrain bug...

    On default local area should be on the max. Whatever I try in TC I can't get local area change the area without dragging the sliders manually, so if I change resolution/size of a terrain back and forth the local area stays on the max. If you give me the details on how it changed, I might be able to fix it.

    Nathaniel
     
  9. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    You can use an image mask for it or use raycasting. With raycasting you need to cover the area you want to exclude with colliders.
    There's more information about raycasting on page 31 of the TerrainComposer manual.

    For the image you can export a colormap image from the heightmap of your terrain and then in photoshop make the mask where you can to exclude the area (black is not place, white is place).

    If you need more help let me know...

    Nathaniel
     
  10. CastleIsGreat

    CastleIsGreat

    Joined:
    Nov 10, 2014
    Posts:
    176
    hmmmmm, May have just gotten messed up somehow then, no worries! just making sure it wasn't intended! I have no idea how it got moved to 500 but as long as its working now who cares! :)
     
  11. klund

    klund

    Joined:
    Mar 21, 2011
    Posts:
    33
    Im a using TC + RTP what is the strange circle in this screenshot?
    Skærmbillede 2015-09-19 kl. 20.25.34.png
     
  12. CastleIsGreat

    CastleIsGreat

    Joined:
    Nov 10, 2014
    Posts:
    176
    is there a max amount of grass that can be placed on a terrain? and if so how do you increase that amount? Right now I'm placing grass and at some point it starts deleting/not rendering previously placed grass.
     
  13. Tovrin

    Tovrin

    Joined:
    Jul 15, 2015
    Posts:
    70
    I'm using RTP3. Will this method do?

     
  14. FlightOfOne

    FlightOfOne

    Joined:
    Aug 1, 2014
    Posts:
    668
    Thanks... I ended up getting it. It's amazing!
     
  15. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    has anyone had success with creating procedural biomes using Terrain Composer?
    I've been away from my computer for a couple week due to my wedding, but that's what I'm trying to get in to after I get everything sorted out after a couple more days.

    for example we can sort items, trees, and splats by height, but what if we have different kinds of mountains that only crop up in certain biomes? I'm hoping to create an overall noise map that determines which actual height/splat/tree/obj maps get used. has anyone tried to do this?
     
  16. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I totally missed your response so sorry for not getting back sooner. Thanks for the information. RTP does work with Wii U. I've gotten it to work before. Although I was having some difficulty in the latest Unity release for Wii U, but haven't had time to investigate. I'll give it a try with the mesh export and splat maps and see how that goes. I'm currently looking at some solutions for trees and grass on mesh terrains such as Landscaper. I'm hoping to get that perfect blend of great terrain and great performance using a combination of tools.
     
  17. Matro

    Matro

    Joined:
    Mar 15, 2013
    Posts:
    38
    Thank you Nathaniel for the reply. I got the single splatmap to work with 4 textures, but what I would like to get is 8 textures like you did in the 24 hr tutorial so I don't understand how to get a second splatmap.
     
  18. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    I think this has to do with RTP. It doesn't seem like RTP is enabled. Do you have 'Material' set to 'Custom' on each terrain? (In terrain settings).

    Do you paint as texture or mesh? You can increase grass resolution in TC terrain list -> Resolutions, after changing shift click <Set All> to apply.

    For a second splatmap you can duplicate your splatmap layer (shift click '+') and assign your second splat map layer to it, and choose the other 4 splat textures in that layer.

    Nathaniel
     
  19. Dreamaster

    Dreamaster

    Joined:
    Aug 4, 2014
    Posts:
    148
    Hi Nathaniel how's it going!? Is 2 point OH on track for the end of this month, or is it next month?
     
  20. CastleIsGreat

    CastleIsGreat

    Joined:
    Nov 10, 2014
    Posts:
    176
    Thanks again Nethaniel, I figured it out after a bit, my grass resolution was 512, on a 2k textured terrain lol, so I'd imagine it was deleting once it filled that texture up...
     
  21. Nition

    Nition

    Joined:
    Jul 4, 2012
    Posts:
    781
    I'm not a Terrain Composer user but I've seen this before. Usually it's not the size of a heightmap that causes stepping, it's the bits. 8-bit heightmaps just don't have enough levels to avoid the stepping: You need to use 16-bit raw files.
     
  22. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    how can we create multiple terrains on the fly during runtime?
    I have it regenerating terrains with RuntimeTerrains.js and RegenerateTerrains.js I'm hoping to generate a second terrain next to it. Ever tried this?

    Can the runtime stuff be used to add more terrains that don't yet exist?
     
  23. Todd-Wasson

    Todd-Wasson

    Joined:
    Aug 7, 2014
    Posts:
    1,079
    I haven't run TC in awhile. Just opened it up on a scene created a few months ago and now get this:


    terrain composer assignments.png

    All assignments for all assets have been lost. It looks like everything reset itself for whatever reason.
     
  24. Tinjaw

    Tinjaw

    Joined:
    Jan 9, 2014
    Posts:
    518
    @Todd Wasson

    Did you use File | Save to save your configuration? Then just do File | Load.

    I do not believe It is saved automatically with the project.
     
  25. Todd-Wasson

    Todd-Wasson

    Joined:
    Aug 7, 2014
    Posts:
    1,079
    Before this it automatically loaded everything. I don't know though, since I went to doing two scenes some time back I was always goofing things up this way. Thanks for the tip though, I'll try it. I think I just have a save that's a basic template though because that's how it seemed to be used in one of the videos.
     
  26. Tinjaw

    Tinjaw

    Joined:
    Jan 9, 2014
    Posts:
    518
    It loads whatever was loaded last time, I believe. It may clear on an asset update. So, if you are working on something, it will load until you work on something else. Does that make sense?
     
  27. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I exported a terrain to .obj meshes and I had Splat and Export selected. The meshes are created fine, but they are just gray textured. Where can I find the Splat maps to assign?
     
  28. Todd-Wasson

    Todd-Wasson

    Joined:
    Aug 7, 2014
    Posts:
    1,079
    Thanks. Yeah, that makes sense. I started having troubles when I made a second scene for my game awhile back and switched back to the first one. Haven't touched it forever and was a little irked to see it just blanked out. There's a save object in the scene so I figured it held all that, but apparently it doesn't.

    I'm not sure how to work on multiple scenes within a game with TC. It's a bit confusing to me. It makes me quite nervous though knowing that if I set something aside for awhile and come back to it, poof, it can all be gone.
     
  29. errandfox

    errandfox

    Joined:
    Apr 22, 2015
    Posts:
    42
    Hi, I've been trying to work out how to make a grass/tree mask based on raycast of objects - so that for example i can remove trees and grass under objects. The raycasting options i dont understand, if i select hit instead of height, how can i tell it to hit my objects?
     
  30. Matro

    Matro

    Joined:
    Mar 15, 2013
    Posts:
    38
    Nathaniel, thanks for all the help. I have gotten the second splatmap now working just needs texture tweaking.
    And as you may have guessed I now have another question. I don't see as in the 2 screen shots why you have a slot for the normal map and I do not. Do I have to use Terrain Composer to generate the normal map to get the slot even though World Machine already created one to use?
     

    Attached Files:

  31. RecursiveRuby

    RecursiveRuby

    Joined:
    Jun 5, 2013
    Posts:
    163
    Sorry if it has been answered before but is edge blur broken for splat maps using an image filter? Any time I generate it is not producing a splat map and just appears black. It works when I set the Mode to Select but even then Select is not selecting the proper splat as they appear in numerical order. Again sorry if this has been answered but I can't find anything on it and I don't think I am doing anything wrong.

    It also occasionally gives me this error


    /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/List.cs:633)
    terraincomposer_save.calc_image_value (.image_class preimage, Single local_x, Single local_y) (at Assets/TerrainComposer/Scripts/terraincomposer_save.js:5077)
    terraincomposer_save.calc_filter_value (.filter_class filter, Single counter_y, Single x) (at Assets/TerrainComposer/Scripts/terraincomposer_save.js:3738)
    terraincomposer_save.generate_output (.prelayer_class prelayer3) (at Assets/TerrainComposer/Scripts/terraincomposer_save.js:2920)
    TerrainComposer.Update () (at Assets/TerrainComposer/Editor/TerrainComposer.js:4289)
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:187)
    UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:180)
    UnityEditor.HostView.SendUpdate () (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:245)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:270)



    Error in generate loop, please contact Nathaniel_Doldersum@hotmail.com and send a screenshot of the Unity Console
    UnityEngine.Debug:Log(Object)
    TerrainComposer:Update() (at Assets/TerrainComposer/Editor/TerrainComposer.js:4283)
    UnityEditor.EditorApplication:Internal_CallUpdateFunctions()
     
  32. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    It's going great. My goals are next month. I will come with more information once it is close to release.

    There's a RuntimeTerrains prefab in the TerrainComposer/Runtime folder which uses the script. You can just drag and drop it into your Scene and enable create terrains on the fly. There's a readme included how to use it for creating terrains on the fly.

    That is strange, as TC project is saved with a scene. Only if you load a terraincomposer project manually it doesn't automatically load the terrains. You can however enable this in TC Menu -> Options -> Generate Settings -> Load terrain data.

    TC is saved with a Scene, so shouldn't be an issue. What you have to be careful about is that you don't overwrite your terrainData's in your project. I explain in the trouble shooting:
    My terrains get overwritten in my old Scene from my new Scene, why does this happen?
    http://www.terraincomposer.com/troubleshooting/

    If you enable the 'Splat' and 'Export' button in the top, in the bottom will be the path and file you can put and then you need to click the 'Export .Png' button (where the generate button is normally).

    Nathaniel
     
    Dreamaster likes this.
  33. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    It works great for creating a single set, but once created that's all you get. I need to add and remove additional terrains as the player moves, but I can only seem to manipulate the single/set that is present. Am I'm missing something? I read the readme many times and tried messing with the script a fair amount.

    I'd really like to be able to use your tool to do that if it's possible. I'm doing it by hand atm, but my noise and splat code is not at all as easy to manage.

    ps: thanks again for handling my faulty double purchase. Unity refunded me.
     
  34. tauceti38

    tauceti38

    Joined:
    Sep 20, 2013
    Posts:
    15
    Hi all,

    I'm having difficulty getting an image mask working to restrict where trees are placed. I have a 4x7 terrain that I created using World Composer, and I've taken the satellite imagery and converted them into tree masks. I've configured the mask layer as shown below, but it's not working. I've tried every permutation I can think of, but I either get trees randomly placed across the entire terrain, or nowhere. I've tried it with and without a color range specified, as I've seen examples with and without.



    I'd greatly appreciate any help with this issue.
     
  35. Deleted User

    Deleted User

    Guest

    The exact same thing is happening to me, I used to be able to place trees....with ease...now..after hours, and hours.....I can not ..
    ...my color ranges...now seem to be useless....I thought it was just me.
     
  36. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Yes you can mix filters together based on masks. You need to put the output to 'Change' and level 'Layer'.

    I'm making a runtime script for this at the moment. Will post it here tomorrow.

    The issue is that the tiles are not in the right order. This is a bug in auto search from WorldComposer. I will fix this and tomorrow post the fix for this and will also update TC/WC on the Asset Store.

    The normal map only appears if you have RTP and then in RTP Lod manager you have global normal maps enabled. As standard Unity terrain doesn't have a global normal map option.

    Yes edge blur has a bug. I will try to put the fix in the update tomorrow.

    Nathaniel
     
  37. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    OK, so I went back in and select Export .png and it gave me a single file called A_0 with red, green, and blue coloring. What am I supposed to do with it? You need to assume I have no clue what I'm doing in this particular area. lol. At this point, I've already exported to mesh and have 33 mesh sections for this particular terrain. Now I also have a single rgb splat map. There must be something missing or that I did wrong.
     
  38. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    I included terrain shaders in the MobileShaders folder, and you need to create a Material and use one of the shaders. Then you need to assign the splatmap texture to the splatmap slot in the material. If you have 33 mesh sections (each 64+ vertices) then your heightmap resolution is 1024. This is too high, it only makes sense to convert to mesh for like 4 meshes. Otherwise Unity terrain will be faster as it uses Lod. If you make heightmap resolution 128 it will only create 1 mesh then you can assign the splatmap. Otherwise the splatmap needs to be split in the amount of meshes you have.

    Nathaniel
     
    Last edited: Sep 28, 2015
  39. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    OK, I'll give it a try with a lower res export for the terrain mesh and see how far I get.
     
  40. Tinjaw

    Tinjaw

    Joined:
    Jan 9, 2014
    Posts:
    518
    I really wish this forum gave us the ability to search one thread, because I think this has come up before. When I go to Window | Terrain Composer or Window| World Composer, the windows open but they are blank. This is after opening a project overnight that was working fine last night. What was the resolution to this issue?
     
  41. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I exported at lower res and got just a single mesh and was also able to assign the splat map and textures, but I see that the shaders don't support normal mapping. Is that a limitation of this splat map technique or could normals be added to these shaders in the future?
     
  42. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    I have the RuntimeTerrains script ready, where you can move the camera and it automatically puts the terrains behind/regenerate and show them in front, so unlimited procedural terrain.

    I updated the Readme on how to use it. Basically you only need to enable it and assign the main camera to the script.

    Nathaniel
     

    Attached Files:

  43. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Can you show a screenshot of the error message you get in the Unity console?

    You can try the UnlimitedTerrains.unitypackage. I updated a bug in the TerrainComposer window script were this could happen if RTP is in there. If you show a screenshot I can see if it's this bug.

    Nathaniel
     
  44. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Yes I can add splat normal maps. Will do it for the update I'm working on.

    Nathaniel
     
  45. Tinjaw

    Tinjaw

    Joined:
    Jan 9, 2014
    Posts:
    518
    I don't get any error, the screen is just blank. There is just a gray window with the title tab. I'm at work and this issue is at home. I will post a screenshot when I get home.
     
  46. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    Awesome. Thanks for the info. I look forward to the update.
     
  47. 230000751

    230000751

    Joined:
    Jul 30, 2015
    Posts:
    12
    Hi Just saw this forum and your product looks really impressive. Are we able to texture paint like we can in Unity Default Terrain?
     
  48. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Yes you can just use the Unity terrain brushes with TerrainComposer, as TerrainComposer creates standard Unity terrains.

    Nathaniel
     
  49. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Here is the update MobileShaders package with the splat normal shaders ;). It only works for 4 splat textures and 6 splat textures. 8 splat textures exceeds the amount of allowed texture samples in the shader.

    Nathaniel
     

    Attached Files:

  50. Blank blank

    Blank blank

    Joined:
    Dec 1, 2014
    Posts:
    22
    Hey nathaniel, is it possible to batch objects that have LOD groups with the batching script?
    It seems like it only combines LOD 0, 1, and 2 together. It doesnt seem to be combining the objects. just the LODs of each object.
     
    Last edited: Sep 29, 2015