multiple surface layers + object populations = invisible objects

Started by moodflow, May 25, 2007, 11:20:49 AM

Previous topic - Next topic

moodflow

I finally found out why object populations aren't showing when multiple surface layers are in effect in shaders.  The objects sit on the main terrain, but each surface layer adds a small amount of displacement upwards.  With enough surface layers, it will eventaully submerge your objects, and they will not show up.

What I had to do was change displacement multiplier to 0 and change the displacement direction to "lateralize normal" so if it adds it, it will only go sideways and not up.  I tried just "0" and this still didn't work, so it required the "lateralize normal".

Anyway, what a pain it was to find this out.  I spent days trying to find out why my populations weren't showing up, only to find out they were submerged by the multiple surface layers.  It wasn't an object or population issue as I first suspected.
http://www.moodflow.com
mood-inspiring images and music

dhavalmistry

"His blood-terragen level is 99.99%...he is definitely drunk on Terragen!"

moodflow

Unfortunately, I might be wrong.  All of the sudden, the problem is back, even with those settings. 
http://www.moodflow.com
mood-inspiring images and music

moodflow

Ok, I had "intersect underlying" checked on some of the surface layers.  I removed the check, and all seems fine.
http://www.moodflow.com
mood-inspiring images and music

rcallicotte

So this is Disney World.  Can we live here?

Harvey Birdman

Actually, I think you can get the populations to sit on any selected surface or subsurface. (There still seem to be issues with really large displacements, though.) Lets say you have a 'soil' layer sitting on top of rock, then a 'grass' layer sitting on the soil. Let's also say that all the layers have some displacement. Let's say you want grass clumps to sit on top of the top-most layer, the grass. Create a 'Compute Terrain' node. Connect the output of the 'grass' shader to the input of the new compute terrain node, and the output of the compute terrain to the 'terrain shader' input of the grass clumps. This should cause it to sit on top of the grass layer.

rcallicotte

So this is Disney World.  Can we live here?

Harvey Birdman