A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Discussion in 'Assets and Asset Store' started by tomaszek, Oct 22, 2013.
Thanks for answering,
I'm using Unity 5.5 and as soon as i get home i'll check RTP version.
Any idea why activating tesselation and recompiling gives me a flat color landscape?
You have to create a height & normalmap and assign it to the relief script.
Just go and have a look at the documentation to find a detailed step by step description
I've been using 3.3e with Unity 5.5.2f1. I'll update both and see if anything changes.
Edit: After updating both, looks like it worked.
Sigh, yet another issue. Any idea why when I reload my scene, the whole terrain is black?
Also, can the snow part be added to grass and trees as well?
Hey, recently bought RTP and I'm starting to use it. I've encountered this problem using grass detail, does anyone know how to fix it? thx!
Grass/trees are not part of RTP. Still I plan to release something "global" in the future.
In tessellation terrain surface doesn't match terrain collider. If you have terrain height resolution high enough you can match it better (2-3cm errors for moderately wavy terrain) reapply heights from tessellation heightmap to Unity heights (the button shown in my tessellatin YT video - placed next to heights&normals texture slot in ReliefTerrain script inspector).
Thanks Tom, its working
We recently switched to deferred lighting in our project to better use multiple lights, use screen space shadows, and for many other reasons. However, I'm finding that while using deferred lighting I get an error when I try to save the atlas textures of the diffuse textures. I can save the heightmaps and normal maps fine. This results in my terrains becoming much brigther:
Despite the error when I save the texture, RTP grays out the save button so it seems to save the texture, but with obvious issues. Refreshing the textures so that the images aren't saved returns the texture colors to normal, but, again, then the textures aren't saved.
I was able to find someone talking about it on this forum several years ago and you mentioned something about the splatmap and heightmap resolution needing to be the same size. However, the person asking the question was "acquiring" maps and not saving atlas's. Also, when I tried it with a test scene it also didn't appear to work (I really really really don't want to have to do this with existing scenes as it would reset textures or heightmaps).
I'm using Unity 5.6.0f3 and have RTP3.3g. Settings:
Any insight would be most helpful. Thanks!
Hmmm. Try to change sRGB flag in saved atlas.
That was it! As simple as that. You're knowledge of the asset, Unity, and your quick replies are why I recommend this asset so highly.
Yes and I do read documentation. I've managed to blend the road edges with vertex painting, but this was kind of workaround.
The implementation of a good road is indeed an interesting topic. I have at least not found a perfect solution for my type of game yet. The next things on my list I'm going to try is good old RTP colormap using advanced settings (pebbels example) and also I want to try cloth. Cloth as a road on top of a terrain might do the trick.
I'm experiencing an issue with Unity 5.6.1p1 and RTP 3.3g where my perlin noise appears as I expect in the editor window, but is not showing up in the scene in playmode or at runtime. I am getting an unexpected and unwanted gloss, though.
In the editor...
And at runtime...
I've double and triple-checked my settings, toggled various post processing settings (and even removed the post chain altogether), and have looked through all my lighting settings, with no success. I have also double-checked my grass texture, the albedo map has the alpha layer set to black. Any ideas?
I can't tell if perlin noise is missing looking at your screenshots. Actual texture used is shown at combined textures tab. You could save this texture or even reuse this from example scene which is already saved. Combined texture is created when you go into perlin settings tab for the first time.
For gloss - looks like lighting issue. Unity lighting will bring glossiness even for materials with gloss=0 because of how fresnel effects are modelled. To completely remove specularity we would need to output pure black specular color. In metalic workflow it mean dielectric (metalness=0) color should be also 0. Not sure why it works for you in editor and not in build. In forward rendering I overwrite lighting and we can set dielectric color to 0 using script (look at my example scene terrain object). For deferred we need to use dedicated lighting shader in grpahics settings (shader included in package). I guess in build it might be the reason that deferred lighting shader is not exported properly (and Unity default one is used).
Perlin is there in editor window, but does not appear at all at runtime. It could be a lighting issue (my skills are basic). I'll dig around in there and see what I can come up with.
I have RTP 3.3 and TerrainComposer together in a project. When I click "Activate RTP" in the "TC_Terrain Area" script under the "RTP Detected" section, my terrain becomes completely white at a distance.
The "_RTP_LODManager" is created, and I recompile the shaders (after turning off "Glitter" and "Enable Hole Cuts", but the whole terrain goes white.
Are there some other steps I should be taking to get RTP to work with TerrainComposer2 terrain?
What is the RTP version do you use ? (look at verinfo.txt file included). In deferred you need add script to main directional light. As I see your closeup terrain isn't white mean you've got more than 4 layers used but rendered in 2 passes. In Deferred use "8 layers" mode in LOD manager so that all layers (8 exactly) are rendered in one pass otherwise problems with specularity might occur.
version is "RTP3.3g for U5.5 & U5.6 (submitted from Unity5.5.0p3)"
Rendering Path for all Tiers is set to "Forward"
This happens every time I compile the shaders. The fix is to re-install RTP package from the Asset Store. However, if I change _anything_ (for example, I just want to disable terrain hole cuts) and compile the shaders, then I get this issue again.
I have tried compiling both with and without the option to use 8 layers, but the issue is not resolved.
Weird. Let's try to narrow the scope of issue. Give me exact Unity version. Try to install RTP only on fresh project and check if that makes difference. Might be something very specific to your project.
I just installed a new (separate) version of Unity 5.6.0 after being on 5.3 for a long time because of an old project.
I imported RTP as usual. There was no mention of an available update - well, actaully I just imported directly because of that. Now RTP doesn't work - all is white and there was a few mentins of shader errors both on import and on activating RTP (from inside TC2).
Verinfo says version is RTP 3.3d !!
From forum I can see that RTP is on at least 3.3g if not more.... Why can't I update it?? I tried downloading it again (blue button "Download" - not yellow button "Update" - verinfo still says 3.3d
It must be the issue... How do I upgrade to the latest if Asset Store doesn't let me download it??
Edit: Just tried it again. I deleted RTP from Unity 5.6 project. I searched for other places that RTP could be installed on my PC. Ofc RTP is part of older projects that I still use with Unity version 5.3 but I cannot find anything relating to RTP outside of that. I downloaded - Asset store even says it is version 3.3g. But when I import I get version 3.3d (verinfo)... and on top of that 8 shader errors...
Hello @tomaszek . I'd like to know if there is a way to run "ReliefTerrain.Awake()" in an other thread of a CPU or doing something which leads to eliminate making the lag? Here I have 651 terrains that are being loaded as "Additive Scene" (it is being streamed) when player goes near those terrains - I'm using WorldStreamer asset - But the "ReliefeTerrain.Awake()" function (specially the "Refresh" method in the function) causes a big spike. (the image below shows how the function impacts FPS drop)
I don't want player to wait till the method is done, I want the method to be done in the background. So that there would be no lag and frame rate drop. Would you please help. Thanks.
It's known AssetStore issue. Google for clear unity package cache. They are stored on your HD. Then download again under U5.6 and you should get 3.3g which is tested on U5.6.
You would need to analyze (maybe deep profiling) what's actually called on Awake(). There are a few operations RTP need to do. Refreshing/building terrain material. Checking LOD_manager, etc. RTP is actually shader with scripts that help manage it. So - in the end you might even cleanup your scenes removing RTP while material on the terrain would be still present. Instead of "full scripting" you can limit it to your own, small script that might init things that are not stored in terrain material (like global values - for example snow level).
I thought as much. Just forgot how to find Appdata folder
The only problem now is that it didn't work....
I deleted two RTP packages v32. + v3.3 in the folder named Tomasz Stobiersky/Editor Extensions under C./Users/Username/Appdata/Unity/Asset Store-5.x.
Before that I ofc removed everything RTP from the project and restarted Unity.
Downloaded, imported..... Same thing = verinfo 3.3d.... (funny thing is on the list it suddenly said onle RTP 3.3 (not 3.3g) as before... but after download+import it reversed to saying 3.3g... Except it is 3.3d.
I do not know what to do. Sorry
Crap, me either...
I will write to asset store staff about this issue. Still I'm sure there's a ton of users that downloaded 3.3g w/o any problem... 5.5.0 package you see in the attachment screenshot is 3.3g.
P.S. If you still can't solve this issue drop me your order number and purchase date for verification via private message. We will think about the soltion, although it's pure wrong to deliver users my package directly. It's assetstore meant for this .
Hi Tom, I am struggling with getting RTP (v 3.3) to work with Unity3d v 5.5.2. RTP won't allow me to open normal maps. And as soon as I loaded RTP the terrain remain white despite having added my terrain textures. Any ideas please? Thanks for your help. (Please take a look at the attached video) http://www.3d-art.co.uk/www.3d-art.co.uk/Samples3.html
White terrain might be related to not suitavble RTP version. 3.3g is supposed to work fine (look at verinfo.txt file in ReliefPack folder). If shader uses atlas (8 layers mode) and atlas can't be generated it probably also output white diffuse color. For normals - they are combined in paris. I can't see the error message in your console looking at your video. It's probably something about texture size not match. Texture size for layer 0,1 has to match. The same for next pari (layer 2,3), and so on. Make sure your normal textures are really of the same size. Sometimes Unity resists anyway (reporting wrong texture size for my scripts?). The only solution was to copy stubborn texture (Ctrl+D) and use copy.Take care that max size in texture importer properties is not the same as texture size - this is the case when texture is smaller than max size set.
Firstly, thank you for your work. Your RTP, UBER, and VolumeGrass are the best among the likes. I just wanted to know if you're planning to continue working on VolumeGrass? My project contains a terrain of 10 square kilometers grass, and no one can help me better than you, if you release VolumeGrass 2
Do you have the time and the desire to release VolumeGrass 2 in the near future?
If so, can this happen within a few months, or is it from the discharge sometime?
With best wishes, Michael.
Hi there I have purchased RTPV3 with the hope of using it with TC2. but I cant work out how to. As you list Terrain composer as a compatible product. Could you do a video on how to use the two together.
Thanks for any help you can give. I'll keep an eye out on your YouTube.
All the texture sizes are identical (2048x2048) and the layer properties won't accept the duplicated normal map either. Terrain remaining white. I have upgraded to Unity3D 5.6.1 but sadly it made no difference, same problem as before.
What do you mean by: "Take care that max size in texture importer properties is not the same as texture size - this is the case when texture is smaller than max size set?" All my textures are the same size.
This is actually very tough question to be answered. The problem is that I'd love to improve it for long time while I'm engaged with projects that make it impossible to manage it all (improving RTP, UBER, VolumeGrass, keeping compatible with new Unity versions). What I can tell is that I still plan to release something nice for large terrains. I'm engaged in project where I've got it implemented, still it's early stage of game developement, so first we need to release something (and get funds for it), then I plan to push some new technical solutions to AssetStore. If it's matter of months - gosh, I really don't know. Anyway - my intention is to provide Unity community with next good products in the future. For terain, for shading, for vegetation, for grass, etc.
As far as I know TC has video tutorial showing the process of creating terrain landscape in TC, then automatically adding RTP component to it. You can always do it manually. RTP & TC are independent products. TC manage Unity terrains. RTP can render Unity terrains better than default (actually RTP can render over any mesh, not only over terrain). So - first you would need to learn how to use RTP alone, then it will become clear how RTP and TC are related.
Make terrain (with 4 or 8 layers). Do it in TC or in whatever terrain creation/management tool you want. Then attach RTP component which takes control over how terrain is rendered. RTP replaces material/shader used for rendering terrain and helps adjusting all parameters. You can think about it as of "terrain material inspector" moved to script (simply beause ReliefTerrain.cs script shows parameters, then pushes it to material that renders terrain).
Does RTP throws any error/warning message to console when you try to replace textures in inspector? I could take a look at this interactively if you contact me via private message. We could establish skype screenshare session and talkover your issue.
Thanks for the answer, Tom. Good luck with your project. We will wait for new victories from you)
Which is the best option for managing multiple terrains? Shall I use TerrainComposer and export directly to Unity using the RTP integration or is there any other option with my custom tiled mesh scenery?
I believe TC is fair option, especially when you plan to interactively adjust your scenery to test different options. TC can save you some time, esp. in case you've got an environment split to a lot of terrain tiles.
I'm currently porting my project to Unity 5.6.1 and one issue I ran into was that the (mesh-based) terrains (I use two, one for closer areas, and one for distant areas) became all black. I could fix this by switching off Realtime Global Illumination and Baked Global Illumination (it may be sufficient to disable one of those, haven't tried that, yet; EDIT: Baked Global Illumination breaks it, Realtime Global Illumination works).
I tried rebuilding the shaders and Refresh All / Purge Scene but that didn't help. I'm using "Directional" and all lightmaps related shading options (in the LODmanager) are not ticked (so lightmaps features are all active). I noticed in Unity 5.5 that going from directional specular to directional killed my shadows.
Anyways, looking at the log I found this error:
"Shader error in 'Relief Pack/Terrain2Geometry': invalid subscript 'instanceID' 'UnitySetupInstanceID': no matching 1 parameter function at line 502 (on d3d11)"
Is this a known issue? Is there a way to fix this on my end?
I'm using 3.3g, so I believe I'm using the most current version.
Is 3.3g mark what you took from verinfo.txt file after installing the package ? As I use surface shaders, all instancing/lighting processing goes thru Unity preropessor which turns surface shader into "low-level" one. So I'm wondering what can it be. Could you give me exact lightmapping config you use and scene setup, so I can try to reproduce your issue ? Please provide me also with LOD manager features used/number of layers (4 or 8), lighting path (forward/deferred).
Sure! Find attached screenshots - that should cover all info; let me know if there's any relevant info missing. I've tried Subtractive and Baked Indirect for Baked GI.
Using "Realtime Global Illumination", it works. Also works with pure realtime lighting.
This is after baking "Baked Global Illumination"; tried both "Baked Indirect" and "Subtractive":
And here are all my LODManager settings:
Hi, I will inspect the problem on Monday. Meanwhile you can check if the issue is not related to the fact we dont' have any realtime light info available whiole RTP uses it for some internal purposes. The info is direction of main light. It's als the issue for deferred or when main directional light intensity goes below some threshold (like 0.01). Try to attach script to main directional light (the same as on my example scene). If it doesn't help - try to force light to influence terrain - even if it would be some dummy/proxy light with low intensity (so it doesn't interfere with the look of your scene). Check if this work (this additional very low intensity light, but still over 0.01). Then check the performance if Unity draws terrain twice (first with baked lighting and and then with dummy light). In such case it would be very bad workaround of course and I would need to find some better way to handle terrain with baked light to not degrade performance badly (I mean to draw terrain with one pass only and with working lighting, not black).
Let me know how the above hints work (or not).
first let my say i am very new to unity and game development, and so i began to stick my nose into terrain.
I realized that this is a far more complex area, then i thought before.
Meanwhile i managed to build my first terrain so it is satisfactory for me and included it into my scene. It looks great, but it also costs lot of performance, reducing the fps from 130, 140 to 25 when looking at it.
The terrain i have created is quite big, is it a real world pacific island with a length of 20 km and the terrain itself is 28 x 28 km. This is just a test concept terrain. The terrain i will need in my project needs to be much bigger. The terrain itself does not need to be very high detailed, because it is a naval game and one will just able to see it from the seaside.
Probably i want to have the option, to have certain areas in a higher detail, for instance harbors or bases.
All that brought me to the conclusion, that i need terrain in a much lower resolution, but it needs still look pretty when you come closer. And i must have the possibility to have dense vegetation on it (low lod speed trees).
And that i need a better control over the terrain lod (mesh & base map), so the shape and colors match more on the near and the far terrain.
After some research, i found the ring streaming feature of WorldStreamer, and it seems it could help me achive some of the goals above.
My questions now are:
- would RTP3 help me in the initial creation process of the base terrain less verts but still dens vegetation, and good shape? (i am using WorldCreator and TerrainComposer2 now)
- is it possible to use RTP3 and WorldStreamer together?
- would RTP3 help me controlling the lod better also combined with WorldStreamer streaming ?
- would RTP3 help me control color and shape of the very low poly mesh for ring streaming ?
As far as I know RTP works with World Streamer. Dense and performant vegetation is quite different story (not related to RTP which is about rendering terrain surface). To gain performance you can use tessellation. Terrain can be then quite low poly hile will be refined at GPU with tessellator based on distance (far away - a few oplys that will act as big mountain while upclose it get refined to triangles of inch size).
thanks for your answer.
I see that i have written a lot of text, and did not managed to make myslef fully clear. Sorry about that, but its a bit hard for me as a noob .
I fully understand that this pruduct has nothing to do with Object placement on the terrain itself. But as far as i understand the terrain creation thing, that when the tarrain resolution gets lower, the procedural placement of objects (vegetation) can not be done so dense anymore, by tools like TerrainComposer or WorldCreator? Please correct if i am wrong here.
So would it be still possible to place dense vegitation when i use RTP tesselation shader to reduce polycount?
Or is this question better asked in TerrainComposer/WorldCreator forum?
sorry again for this dumb questions i am trying to understand the whole thing
Yes, I think it's better to ask there.
Light cookie on directional light causes terrain to become black?
Also, console is spitting the following error, "Debug.LogError("Can't access alphamapTexture directly...");
I'm using 3.3g with Unity 5.6.1p1 and running into some issues.
When I first recompiled shaders my terrain went black. As soon as I added a directional light it lit up - So I'm guessing ambient light and realtime GI/baked GI do not effect the terrain anymore.
When I compiled my shaders (8 textures, with overlap for all shaders selected) I have found that my 5th and 6th shaders are black in the middle? See pic below. Everything else still paints fine and works as expected. I've tried adjusting all manner of options and still have this issue. This is my first try with RTP so sorry if I'm missing something obvious.
This is in Forward Rendering Linear ColorSpace (VR Game)
Seeing a couple other terrain assets that make use of texture arrays, I can't help but ask if there are plans to add support for that to RTP anytime soon?
1. Problem detected. Will be fixed soon.
2. As far as I remember the problem has been fixed long time ago and was only present in some specific Unity version. What's your exact Unity ver/RTP ver ? Does this problem happen when installing newest RTP on newest Unity (and in example scene) ? Is hard to reproduce on my side is like shooting in the dark...
So you've got 8 layers in your terrain then attached RTP script to it ? Are these only 5th & 6th layer problematic ? I'd suspect that all layers from 2nd quad (5-8) might be broken in case atlas can't be prepared. Look at our console - RTP should report layers that have not matching sizes. For diffuse color all layers in quad need to to have the same size. For detail normals they are paired (layer 1&2 3&4 and so on). It's easy to detect which combined texture failed - visit combined textures tab and look if both atlases are correctly made, the same for normal paris (should be 4 correct textures - inspect both RGB and A channel, detail hegithmaps are combined in 2 RGBA textures).
Directional light is necessary for RTP to work correctly. Don't worry - it doesn't bring any additional overhead (Unity will draw terrain in 1 pass anyway). Simply put the light and set low intensity to not change the terrain look. At the same time you can't put the intesity of light below certain threshold (like 0.01) because then Unity would assume there is no light and it will again make your terrain black.
RTP4 - by all means will make good usage of texture arrays. Unfortunately release date is not certain now. Not much soon I'd say. I've got a lot things already developed for it but want to have it shine. I'm very engaged in game project now - that's why I slowed down with new AssetStore releases. Anyway - bright side of this is that technology and experience battle tested and developed for game will most probably land in my AssetStore products in the future anyway (think - cosmic/military technology landing in civil industry in the end ).
@tomaszek the console error really isn't bothering me, but I'm using the most recent RTP package with 2017.1.0b1. I actually deleted the RTP package and re-installed. I suppose I could try again.