Search Unity

CTS - Complete Terrain Shader

Discussion in 'Assets and Asset Store' started by AdamGoodrich, Jun 19, 2017.

  1. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    Actually - this is not the expected behavior at all and while we leverage the Unity LOD system to kick different versions of the CTS shaders in and out for performance reasons, you should not be experiencing this.

    Please lodge a support ticket and share more details about how you managed to get the problem. The link is in my signature below.
     
  2. Shawn67

    Shawn67

    Joined:
    Jan 2, 2014
    Posts:
    2,196
    Just a quick note to everyone regarding this. THIS is exactly why we ask that people use the ticketed support system that Adam linked to in his response. We don't always receive notifications from the Unity forums when replies are posted to the threads and things can fall through the cracks. While the message threads here and the chat server can be great for community support from other users, it is hard for us to guarantee that posts aren't missed.

    So as a reminder, as Adam has posted in all of our threads. The best place to get official support from the team is by creating a problem ticket using the link in either of our signatures.
     
    AdamGoodrich, Mark_01 and S4G4N like this.
  3. Shawn67

    Shawn67

    Joined:
    Jan 2, 2014
    Posts:
    2,196
    Can you provide some screenshots of your settings for that texture from your profile? Do you have all of the textures defined? (Albedo, Normal, Height, and Occlusion) If you are using textures that came with CTS, all of them should have been available. I've never seen the issue you are having personally, but those would be the first things I would look at. Get us screens of your profile settings and hopefully we can help figure them out. When you didn't respond to @OneManBandGames' response to your earlier post, it seemed that their suggestion worked or you had figured it out.
     
  4. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    For anyone else who is having SNOW issues on their LODS, we got to the bottom of it after some investigation and help from @ceebeee.

    There is a bug with the snow cover on far slopes in CTS 1.8. To work around it, make the following settings change in your profiles:

    cts issue.jpg

    Now that we are aware of it we will get it fixed.
     
  5. tredpro

    tredpro

    Joined:
    Nov 18, 2013
    Posts:
    434

    I guess no?
     
  6. LostPhilosopher

    LostPhilosopher

    Joined:
    Feb 25, 2018
    Posts:
    23
    CTS is now on sale but I have a question is CTS 2.0 will be paid update or free as current CTS version is 1.8
     
  7. StayUpLate

    StayUpLate

    Joined:
    Jul 29, 2018
    Posts:
    58
    I believe they said major versions (1.x / 2.x etc) are new products. so paid upgrade.
     
  8. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    CTS 2 will be a paid update. We don't usually charge much for them, so if you are getting on sale now, you will still pay less that full price of CTS.
     
    Shawn67 likes this.
  9. razzraziel

    razzraziel

    Joined:
    Sep 13, 2018
    Posts:
    145
    Hi,

    CTS works great for single terrain. But i need more than 16 textures so trying to implement extra terrains.

    So here is my issue and setup:

    CTS ver. 1.8.0
    Strip Textures disabled

    a terrain uses CTS with profileA
    b terrain uses CTS with profileB

    But when i try to add new textures to any of them, and then bake/apply profile in their CTS profiles, it applies both of terrain a and b. So new texture applies to a profile, but in the meantime b profile messes up with profileA textures. Rolling profileB back doesnt work because it has bug and textures doesnt work properly after this issue (profileB takes same textures from profileA). And i have to rearrenge all textures again, well when i need to bake/apply same problem happens.
     
    Last edited: Nov 29, 2018
  10. OneManBandGames

    OneManBandGames

    Joined:
    Dec 7, 2014
    Posts:
    207
    At the time when you hit "bake textures" in the CTS profile, it will look for new textures on the terrain to include them in the profile. So I think you need to separate the terrains when baking textures in CTS in some way. I don't know if it is enough to disable one terrain so CTS won't pick it up during bake, if it is not I would put terrain B in a separate scene that you can unload while profile A is baking and vice versa.
     
    razzraziel likes this.
  11. razzraziel

    razzraziel

    Joined:
    Sep 13, 2018
    Posts:
    145
    Yeah i found a temporary solution for this.

    Before baking a profile, you need to unprofile other terrains (their profiles to None). So this way you can safely bake but still cant apply because it applies to all terrains (If you need to apply, as you said you can take them into another scene). Just unprofile others so their profiles wont affected.
     
    OneManBandGames likes this.
  12. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    Yep. It's sort of hard to code for every possible scenario. So best to make profiles independently and then apply to the relevant terrains.
     
  13. attaway

    attaway

    Joined:
    Nov 12, 2014
    Posts:
    40
    This may be a simple question, but I'm wondering if CTS & Biomes from Vegetation Studio Pro are compatible.
    Is it possible to use CTS on the textures that each Vegetation studio biome is painting? I'd like to use the following ground texture generation features of Vegetation Pro, but with the nice CTS look.

     
  14. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    I believe so. @NatureManufacture worked closely with Lennart on this.
     
    Mark_01 and attaway like this.
  15. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,365
    CTS is used in that video.

    Lennart
     
    AdamGoodrich, attaway and Mark_01 like this.
  16. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    1,734
    Yes all this cool heigblend on terrain is via CTS:)
     
    AdamGoodrich, attaway and Mark_01 like this.
  17. attaway

    attaway

    Joined:
    Nov 12, 2014
    Posts:
    40
    ok cool!
    Thanks for the great packages. I'm excited to get it all working properly together.
     
  18. Crossway

    Crossway

    Joined:
    May 24, 2016
    Posts:
    403
    How can I have 8 layers? I've changed 6 to 8 in debug mode but I can't add textures to layer 6 and 7! After bake textures I get error that says layer 6&7 are missing.
     
  19. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    Weird - CTS supports up to 16 texture sets.

    Can you please make a little video of your setup and log a support request at the URL in my signature below.
     
    Crossway likes this.
  20. Crossway

    Crossway

    Joined:
    May 24, 2016
    Posts:
    403
    It solved when I create a new profile!

    I just mentioned there is no option for mesh blending and it's weird for a terrain shader! because there is lots of cliffs needs to be blended for a good looking terrain.
     
    Last edited: Dec 7, 2018
    Lars-Steenhoff likes this.
  21. chrisabranch

    chrisabranch

    Joined:
    Aug 15, 2014
    Posts:
    103
    just tried CTS in 2018.3.0f1 ............. broken
     
    Korsigon likes this.
  22. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    We don't support Unity beta's... and this one in particular seems to get API changes every few betas.

    We are dependent on Amplify, and they are dependent on Unity, so it is a bit of a waterfall effect.

    LW SRP support is in development and as soon as we are happy with it we will push a release.

    Same goes with HD SRP. HD SRP will be further out as it is still in quite a significant state of flux.
     
    Last edited: Dec 9, 2018
    lawsochi and Mark_01 like this.
  23. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    We put a lot of time into it and did not get a good solution. It is quite difficult to solve because of normal blending and the complexity of underlying shader. Everything needs to get blended together exactly right and while we had made lot of progress - we did not solve for all cases. We will look at it again when the SRP pipelines settle down.
     
    Crossway likes this.
  24. jamesparksart

    jamesparksart

    Joined:
    Dec 1, 2017
    Posts:
    23
    @AdamGoodrich "We don't support Unity beta's... and this one in particular seems to get API changes every few betas."

    No wonder my CTS is not working properly... I was getting kind of frustrated. I am new to Gaia, CTS, (also bought weather maker) and Vegetation Studio. I usually build everything by hand.. but then it went on sale for BF, I bought them. :) I have been playing around with them and enjoy them (even-though I am not 100% accurate about what I am doing. LOL). I am a beta tester as well (currently on 2018.3.0f1)... so when had the error:

    Terrain Layers cannot be populated at the same time as the splats
    UnityEngine.TerrainData:set_splatPrototypes()
    CTS.CompleteTerrainShader:ReplaceTerrainTexturesFromProfile(Boolean) (at Assets/CTS/Scripts/CompleteTerrainShader.cs:2042)
    CTS.CompleteTerrainShader:set_Profile(CTSProfile) (at Assets/CTS/Scripts/CompleteTerrainShader.cs:72)
    CTS.CompleteTerrainShaderEditor:OnInspectorGUI() (at Assets/CTS/Scripts/Editor/CompleteTerrainShaderEditor.cs:418)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)

    and it caused my terrain to dance like a monkey to music. I went to investigate if or what I did wrong. YouTube has one person who explains how to combine all the mentioned above assets. So, followed step by step and still the dancing continued. LOL. So, was going to write and ask what I am doing wrong. Then I skipped to the end and found this post about how it doesn't support betas and now I see my problem.

    Do you know when the next update will be? I don't mind (and probably will) downloading the recent official version (currently 2018.2.19f1).

    Also, could you make some more instructional videos?
    1.) Vegetation studio integration - I have noticed, at least on the beta, that vegetation studio over writes the terrain textures from CTS and both CTS and vegetation studio (in beta) only supports the "Unity" shader not any of the custom shaders from CTS etc.. Also, I told Vegetation studio to detect collisions, but I pass right through the trees (this is probably me not doing something right). Also, I have to use the legacy trees in mountain tree package built for 2017. If I use the "newer" version of the trees all I get on the terrain are the "trunks" and not foliage.
    2.) Weather maker integration - I just bought this one too. I added it to my scene.. but the "dynamic" clouds and weather system were not working. It still had the skybox from the initial setup from Gaia. I changed the skybox to the weathermakersphere and I got the clouds to work... but UI for it did not. It would not let me "make it rain" :) I had to manually tell it to rain.
    With the integration: (I am new so this maybe easy) but when weather maker "makes it rain" is there a way to tell cts or Gaia to make the glossiness of the textures to increase or make it wet? I know weather maker has a snow shader.. I have not tested it yet, but does it work with CTS, Gaia, and VS as well?

    Sorry for all the questions.. but I am new to these assets. I am very happy with the way they work, just haven't got to use them to their full potential (mainly because of beta, but also my inexperience). Thank you!
    -James
     
  25. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,666
    Welcome James.

    I tend to be very focused on development, so I only come up for air rarely, and you do have a lot of questions there!

    Best bet is to come join our Discord group - its a lot more active than these forums - and chances are one of the community will answer you straight away!

    https://discord.gg/rtKn8rw
     
  26. jamesparksart

    jamesparksart

    Joined:
    Dec 1, 2017
    Posts:
    23

    Thank you Adam! I totally understand. I tend to be over explainative sometimes, and I don't want to cause you any difficulties. I have 3 kids as well, a full time job as 3D Modeler, Graphic Designer, Web Developer, and Video production artist for a civil engineering group and part time game developer. I get it. :) Hope you have a wonderful Christmas!
     
    AdamGoodrich and Mark_01 like this.
  27. Shadowing

    Shadowing

    Joined:
    Jan 29, 2015
    Posts:
    1,428
    @AdamGoodrich Hey Adam in the newest version of CTS if you click on Detail Settings and then unclick it the ability doesn't turn off.
    Using Unity 2018.2.18

    I should also mention I use .NET 4x
    Thats standard now though since the new 2018.3 version.
     
  28. Korsigon

    Korsigon

    Joined:
    Oct 6, 2014
    Posts:
    13
    The CTS shaders don't work on the new Unity Terrain system that is now part of the unity 2018.3 version released a couple of days ago. Any time estimate on an update to CTS?
     
  29. Shadowing

    Shadowing

    Joined:
    Jan 29, 2015
    Posts:
    1,428
    Thanks for reporting that @Korsigon I'm needing to know that as well :)
     
  30. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    Hi everyone,

    I recently joined the Procedural Worlds Team as Support Manager to help you out with any questions and support requests you guys might have with the Procedural Worlds products. Jumping right in:

    There is no ETA yet, there were a lot of changes in this Unity version that affected mutiple Procedural Worlds products and we are working on all of them to get them updated ASAP. I will post an ETA here on the forums and on discord as soon as there is one available.
     
  31. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    As far as I know that is intentional, if you pull the sliders for "Close Power" and "Far Power" all the way to the left, you will notice that the setting becomes "[inactive]" in the editor. This is consistent with the other sections as well: The checkbox only controls displaying the settings within that section, adjusting the settings within turns it inactive.
     
  32. Shadowing

    Shadowing

    Joined:
    Jan 29, 2015
    Posts:
    1,428
    Oh interesting. Could of swore it used to disable it lol. Maybe not then.
     
  33. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    I would need to double check in an older version myself to see if the behavior changed, but I think the important thing is it is consistent across all the sections.
     
  34. Unplug

    Unplug

    Joined:
    Aug 23, 2014
    Posts:
    206
    so yeah, i do my terrain using GAIA, good result. I use the preset to set some basic texture, just fine...I add vegetation studio and I miticulusly paint everything for hours and hours and days, it look great im all happy.

    i add CTS
    ...
    CTS destroy all the splat, replace my texture with other and every texture goes black.
    no question ask.

    what a piece of crap.

    Applying a different profile by accident that have less texture (3 instead of 12) deleted 8 texture and replace the other 3. The first tree could be switch back to the right texture, but the other 8 turn out to be black and are apparently lost. This asset is terrible at not preventing error like that. It should warn, it shouldn't delete texture, it should kill your splat.

    anyone know if it is possible to recover the splat ? Everything is black and even if I rehad the texture into the terrain, the black doesn turn into the texture magically. any hope ? and why the hll did CTS didnt take the texture that was on the damn terrain in the first place. I wish we can undo stuff in unity in regard of terrain.
     
    Last edited: Dec 16, 2018
  35. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    579
    CTS does not create splat maps, It seems pretty non-destructive to me..are you sure..absolutely sure?
    because, if you don't check a box in vegetation studio, it will overwrite your splat maps with it's own.
     
    Last edited: Dec 17, 2018
    llJIMBOBll likes this.
  36. llJIMBOBll

    llJIMBOBll

    Joined:
    Aug 23, 2014
    Posts:
    568
     
  37. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    Hi unplug, if the textures are displayed black it does not mean that they are lost on the splatmap! Can you check if the textures are still visible as prototypes in the unity terrain inspector (where you normally go to if you would paint on your textures by hand)?
    If yes, you should be good. Remove the CTS component from the terrain and go to the terrain settings and switch back from the custom CTS material to the built-in unity material. Now the terrain should render without CTS being involved, and all your textures should still be where you put them originally.
    Now the terrain is back in a state where CTS was not involved and you can either create a new CTS profile from this state, or apply an existing one (with the correct number of textures this time). Please let me know if that helped you, I can then give instructions on when to use "Apply Profile" or "Create Profile" and how to update a profile with textures from the terrain.

    Regardless of this issue I would recommend looking into setting up a backup system for your project. Your hard disk can just fail you any day (happened to me recently), your computer can get stolen, fire damage, water damage, an asset or script you wrote can destroy stuff any time....if you have a backup ready you can continue working on a different computer any time, and an issue like this would be less dramatic if you could go back to the earlier terrain data with a few clicks.
     
  38. Jbs_GameZone

    Jbs_GameZone

    Joined:
    Dec 14, 2018
    Posts:
    112
    I'm having the exact same issue, terrain looks perfect in Unity but on IOS is all black.

    IMG_0756.PNG

    Does anyone know a fix for this ? I don't want to revert to unity default shaders since CTS looks way way better.
     
    Gametyme likes this.
  39. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    451
    I can report that you get black terrain using Unity 2018.3.0f2, which is a shame, the new terrain looks so much better then the old terrain system. The difference between the old and new terrain is like night and day almost. Can't wait to see how great CTS will make it look! :)

    Is there any guesstimate as to when an update will come out ?
     
  40. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    We had a similar issue reported by another user a couple of days ago, we suspect it is caused by texture compression for the target device not being applied to the internal CTS texture arrays. I will keep you updated!

    Note that CTS should still work in 2018.3 if you uncheck the "Draw Instanced" setting in the unity terrain settings. We are working on an update which will support this new terrain feature, there is no ETA for that yet.
     
    Gua and Mark_01 like this.
  41. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    451
    Thank you for that information, I will give it a whirl. It will be exciting for sure. I think except for long term 2017.4 projects, I think many people will want to stay on 2018.3 and beyond.

    Edit: I did as suggest " uncheck the "Draw Instanced" and it worked great.
    It looks so good!!! I can not even Imagine how great it is going to look with CTS updated.

    Thanks for your help @PWPeter

    And to all the Procedural Worlds team, Thank you for your hard work, Merry Christmas and
    Happy New Year wishes to all of you.! :)
     
    Last edited: Dec 20, 2018
  42. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,559
    To my dismay : Terrain Layers cannot be populated at the same time as the splats Error happened. Unity 2018.3
    Unity 2018.3 is official now, so it is not a beta.

    Is there anyway around this? : This happens when I add profile :

    upload_2018-12-22_0-25-8.png

    Ok, it turned out that turning off draw instance as described above works around it. Ok.. for now.

    This is probably not solvable, but I want to ask anyway. Any work around or idea for doing physics with tessellated terrains?
     
    Last edited: Dec 21, 2018
  43. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    Draw Instanced is not supported yet in CTS, we are working on an update for this.
    I only know that there are some approaches like using a more detailed terrain collider that matches the tesselation view, creating a mesh collider on basis of the tesselation data, or place a little replacement collider in the right spot by approximating the tesselation data. But I would not know how to set these up / implement those, never looked into that. Maybe someone else here knows.
     
  44. spinaLcord

    spinaLcord

    Joined:
    May 25, 2015
    Posts:
    29
    You can fix splatmap erros currently with using TerrainLayer instead SplatPrototype with 2018.3. But should be using carefully, because im not a master of the whole cts src. So backup if you want, to make sure to not broke your splats. Using this pattern on splatmaps errors...

    Code (CSharp):
    1.                 /*
    2.                 SplatPrototype[] splats = m_terrain.terrainData.splatPrototypes;
    3.                 if (textureIdx >= 0 && textureIdx < splats.Length)
    4.                 {
    5.                     splats[textureIdx].texture = texture;
    6.                     splats[textureIdx].tileSize = new Vector2(tiling, tiling);
    7.                     m_terrain.terrainData.splatPrototypes = splats;
    8.                     m_terrain.Flush();
    9.                     SetDirty(m_terrain, false, false);
    10.                 }
    11.                 else
    12.                 {
    13.                     Debug.LogWarning("Invalid texture index in replace albedo");
    14.                 }
    15.                 */
    16.  
    17.                 TerrainLayer[] splats = m_terrain.terrainData.terrainLayers;
    18.                 if (textureIdx >= 0 && textureIdx < splats.Length)
    19.                 {
    20.                     splats[textureIdx].diffuseTexture = texture;
    21.                     splats[textureIdx].tileSize = new Vector2(tiling, tiling);
    22.                     m_terrain.terrainData.terrainLayers = splats;
    23.                     m_terrain.Flush();
    24.                     SetDirty(m_terrain, false, false);
    25.                 }
    26.                 else
    27.                 {
    28.                     Debug.LogWarning("Invalid texture index in replace albedo");
    29.                 }
     
  45. Unplug

    Unplug

    Joined:
    Aug 23, 2014
    Posts:
    206
    No, unfortunatly CTS took care of the texture in the terrain. Adding them back havent solve anything so I repainted the whole thing and now I know better what not to do. CTS should warn us when you drag a profile that it doesn't contain the same amount of texture and that it will strip them out... No reason not to. It's a huge thing to loose them and you can't undo and even if you close without saving you still loose them. I hate how everything can be destroyed so quickly with unity terrain

    Backing up the game is one thing, i do local backup and wish to be able to use cloud backup, but not enough space available yet in mine. When the project is 40gig you don't do that everyday necesserly. Loosing 1 day is big enough for me. I'm happy with the result, just wished that CTS wasn't so agressive on destroying stuff without warning the user.
     
  46. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    Sorry to hear that you lost the splatmaps, i will add adding a warning message for apply profile on the to-do list for the development team.

    For local backup I can recommend Directory Synchronize Pro, it will analyze the two directories and do an automated incremental copy only, so that you can mirror your development dir into your backup dir every day without copying the entire 40 GB every time.
     
    tredpro likes this.
  47. Unplug

    Unplug

    Joined:
    Aug 23, 2014
    Posts:
    206
    Thanks PWPeter it will certainly be helpful for those like me that are not poweruser and new to CTS. It's a bit of hit-and-miss when you try to mix all those very good and high quality asset. The terrain has always been a source a frustration to me. In the end, it's impressive how CTS can easily improve the visual.

    I use microsoft sync toy it does a very good job for backup. I also upgraded my cloud storage now and im syncyng my project to google drive. It's a long upload, for some reason it take much more time to sync compared to upload but it should eventually complete. I will feel better when it's done. Google keep a month of file versioning so it should be long enough for future mistake of my own :D
     
    PWPeter likes this.
  48. Sholms

    Sholms

    Joined:
    Nov 15, 2014
    Posts:
    30
    Hello, The cutout effect work with mapmagic?
     
  49. PWPeter

    PWPeter

    Joined:
    Dec 16, 2018
    Posts:
    477
    From what I know about MapMagic I think it should work. In the end MapMagic outputs its textures into a CTS profile, and if that is setup correctly, the cutout effect should work as well.

    The integration of MapMagic and CTS is handled on MapMagic's side, it would probably be best if you ask in the MapMagic forum thread as well if you want to be 100% sure.
     
  50. razzraziel

    razzraziel

    Joined:
    Sep 13, 2018
    Posts:
    145
    When do you think Unity 2018.3 terrain GPU feature will be supported? I mean Draw Instanced. And new multiple terrains will be supported?


    And also i cant make distant heights white enough with even highest snow amount.
    https://i.ibb.co/BLds6nC/image.png

    LOD distance increase doesnt help unless increasing the Mix Distance. But without Mix Distance i would lost a lot of features based on Near/Far differences.
     
    Last edited: Dec 30, 2018
unityunity