Jump to content

Mutli Terrain setup not giving accurate texturing results


Disto

Recommended Posts

As we discuss on discord, I open a thread for the issue encountered when trying to use gaia on a multi-tile setup.
So for rembember back, the issue is the controlmaps aren't correctly sampled with the same exact way between tiles, but they all uses the same biome texture spawn rules.

So here is the repro test setup: (I can reproduce those steps 10 times on 10 differents computers, results will be always the same)
First use the manager and create a simple 2x2 tile terrain (this setup is simple and not use the terrain streaming function)

gaia_testsetup.png

Edited by Disto
Link to comment
Share on other sites

now apply this stamp to the entire world, for me the resulting scale is 200,5,200 but set the Y height scale to 10 for having a little more relief.
Normally the terrain will be textured with the previously selected meadow biome's textures...

gaia_stamp.png

Edited by Disto
Link to comment
Share on other sites

now select the newly created terrain object container and select the terrain tile located a 1_0, make a turn of you camera for beig placed in front of him like that
 

gaia_pov.png

Link to comment
Share on other sites

This is odd - I tried to reproduce the issue, but I'm getting a different result:

image.png

(Tried to match the angle from @Disto's screenshots) What is noticeable is that I'm not getting the "Ground Leaves" texture at this height at all - the texture normally does have a height mask that would restrict it spawning in the higher areas of the terrain, but even when I'm disabling the height mask on the "Ground Leaves" spawn rule I'm not getting the issue:

image.png

image.png

Could it be that you might have adjusted & overwritten the original settings in the alpine meadow spawner at some point? (which should be no problem by itself, just wondering where the different result is coming from) Did you maybe adjust the "Spawner World Spawn Range" setting to a lower value than 1024 in the Gaia settings?
image.png

I could maybe imagine that if the range was reduced and there are custom settings in the spawner, there might be seams visible due to the convex / concave mask on the Ground Leaves texture, but I would find it odd that Asset Glue ran into this exact same issue independently as well.

Link to comment
Share on other sites

for the spawner normally not but it could always be possible. For the other settings no, do you have rescalled the stamp before applying it ? (like I said, for relief i has set x200, y15, z200 instead of default x200, x10, z200)

For the issues, couldn't be the Spawner sampling process that doesn't take care of neighbor terrain when there is a concave rule? or anything like that ?)

Link to comment
Share on other sites

I stamped / spawned with x200 y10 z200, now I tried x200 y15 z200 with still the same results.
 

23 hours ago, Disto said:

For the issues, couldn't be the Spawner sampling process that doesn't take care of neighbor terrain when there is a concave rule? or anything like that ?)

There are technical limitations with some mask types.  I've written a bit more in detail over here:
https://canopy.procedural-worlds.com/forums/topic/257-mask-map-exporter-multi-terrain/?do=findComment&comment=1163
However that should normally not apply to this setup as this spawn should be processed in one single go without this issue even occuring, unless you turned down the range in the settings to 128 which would be unusually small, and even then there should not be those hard cuts between the terrains, but rather the convex / concave mask should fade out to the borders of the terrain and then fade in again on the other side. 
Do you have an erosion mask in there by any chance? This could explain it maybe.

 

Link to comment
Share on other sites

Hi thanks for answer, I really think that's the problem here but no normally i don't have modified the texture spawner (but i'll retry).
I'm always click to fit to world before spawning, but each time I spawn, I clearly see that the process is divided by 4 (the number of the terrains instance for this setup), and the range is automatically rescaled to fit each terrain's sizes.
Also I understand that your explaination could help for a simple (non-wide/large area) multi-tile setup but really? I don't plan to use the multi-tile feature in those smaller range... 😄 i'm just make some test before making the real project's map. And that's why i've bought gaia pro... for making big multi-tiled map, and for now, it doesn't look so promising for that, unfortunatelly 😞 )
And what's about the solution that you told in the other thread ?

Do you know any product that we can use with gaia for creating all the splatmaps on multi-tile correctly ?

Edited by Disto
Link to comment
Share on other sites

and things can really get worse when trying to go to the next level, and applying some custom shader tessellation 😞
Same apply to splatmap based grass spawning, for reflections or wetness, ect...
This is a real deal breaker for some classical and / or usefull things.

gaia_splatmapissues_wtess.png

Link to comment
Share on other sites

Please, could you look for a solution? Mostly on a multi-tile setup, the texturing is about 95% accurate. (Slope mask rule is a must for any terrain painting tool, and it's hard to live without it)
Gaia is fun to work with on many aspects, but I'm just want to don"t have to repaint manually each borders of a 16x16 (or more) grid tiled terrains each time we iterate on the map 🙄

Edited by Disto
Link to comment
Share on other sites

13 hours ago, Disto said:

Hi thanks for answer, I really think that's the problem here but no normally i don't have modified the texture spawner (but i'll retry).

If you have a custom spawner setup, then anything could be possible - it is possible to set up a spawner in such way that it would not align with the neighboring terrains anymore, e.g. by setting up a noise mask, image mask, distance mask in terrain space rather than in world space or applying a tiling pattern.
To rule this out, it would be good if you could re-import the original texture spawner from the alpine meadow biome from the installation package, and create a new scene with the alpine meadow biome with the same settings as you originally gave me.
Alternatively you could also set up a very simple texture spawner with two textures, the first one without any masks and the second one with a slope mask only. 
 

14 hours ago, Disto said:


I'm always click to fit to world before spawning, but each time I spawn, I clearly see that the process is divided by 4 (the number of the terrains instance for this setup), and the range is automatically rescaled to fit each terrain's sizes.

This "divided by 4" thing would be a strong indication that the default spawn range has been reduced. As I asked before, could you please check in the Gaia settings if the spawn range has been set to a lower value than 1024?

image.png.1cf2e18cf5993a8112fdab54cc59a8

Link to comment
Share on other sites

8 hours ago, Peter said:

To rule this out, it would be good if you could re-import the original texture spawner from the alpine meadow biome from the installation package, and create a new scene with the alpine meadow biome with the same settings as you originally gave me.

Done, and it seem that I doesn't have seams anymore with that spawner .
(But that not help me with my customs spawners 😕 )

8 hours ago, Peter said:

e.g. by setting up a noise mask, image mask, distance mask in terrain space rather than in world space or applying a tiling pattern.


What do you mean? When apply the spawn to only a single terrain size (so,this pattern would be tiled multi time ?), instead of world (only one time the whole pattern)?

Could I be sure to always apply all rule from a spawner to the entire world? (like for example 16x16 tiles of any size ?)

 

Quote

This "divided by 4" thing would be a strong indication that the default spawn range has been reduced. As I asked before, could you please check in the Gaia settings if the spawn range has been set to a lower value than 1024?

I've looked your settings, and it's set to 1024.

Edited by Disto
Link to comment
Share on other sites

15 hours ago, Disto said:

Done, and it seem that I doesn't have seams anymore with that spawner .

Thanks for checking, this means the problem is rather the settings in the spawner.
 

15 hours ago, Disto said:

What do you mean? When apply the spawn to only a single terrain size (so,this pattern would be tiled multi time ?), instead of world (only one time the whole pattern)?

There are multiple settings in masks that could be responsible for the issues you are seeing in your custom spawners. When a terrain exceeds a certain size, we need to process it in multiple steps due to technical limitations - we could not e.g. texture a world of 2000 x 2000 km in a single step, that would crash unity. What we then do instead is, we process the world in multiple steps, normally in the steps of that "Spawner World Spawn Range" setting in the Gaia settings. And there it is where you can get problems with the spawn results not matching up across these iteration steps.
For example some mask types do have a "local space" and a "world space" setting. If you for example have an image mask that is set up in local space, it will follow the spawner position around:

YO8pO1bHzy1Y1g81OaafmQQEUKpjO5TUQQ.gif.e

While this can be useful if you want to spawn a pattern in a certain spot in your world, it becomes an issue when the spawner starts to iterate over larger worlds - it would apply this image to the world repeatedly, and potentially mess up seams on the terrain while doing so. Here I used an image mask in local  space for the grass texture, and it has messed up the borders on the terrains, because that image was applied repeatedly while the spawner was iterating:

image.png

When the image mask is set to world space, then the image does not travel with the spawner anymore, but stays at the size, & position in world space instead:

HvTU6utSkiS92dtjHs4QZ_32caEJiI5UeA.gif.3

With the image mask set to world space in my example, I can align the image so that it is only applied once across the entire world. Now the borders between the terrains would not be messed up, but nicely aligned:

image.png

That was just one example how certain mask settings and the spawner doing multiple iterations could end up creating visible seams across the terrain borders - it does not necessarily need to be an image mask in your custom spawner that causes this. The distance mask has a local / world setting as well, and the erosion mask would produce such an issue as well. Convex and Concave mask can be problematic, but those should rather fade out towards the spawner border than creating a visible seam.

You can find more information about the individual mask types in the article on masking:
https://canopy.procedural-worlds.com/library/tools/gaia-pro-2021/written-articles/populating_your_world/3-introduction-to-masks-r50/

If you are unsure which masks might cause your issue, you could either deactivate them all to start and then activate one after another until you find the one that causes the problem, or you could also post a screenshot from the mask settings here so I can take a look.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Tell a friend

    Love Canopy - Procedural Worlds? Tell a friend!
  • Need help?

    We work with some of the biggest brands in global gaming, automotive, technology, and government to create environments, games, simulations, and product launches for desktop, mobile, and VR.

    Our unique expertise and technology enable us to deliver solutions that look and run better at a fraction of the time and cost of a typical project.

    Check out some of our non-NDA work in the Gallery, and then Contact Us to accelerate your next project!

×
×
  • Create New...