Download

Can't get foliage to generate on walls

Hello! I am trying to generate foliage on walls using the given procedural generation tools. It worked fine on the ground and now I’ve tweaked the details following a tutorial that I found on UE4 AnswerHub but it doesn’t seem to work. Here’s what I did:

I’ve created this foliage generator to which I’ve assigned my tweaked foliage actors that I’ve imported from Quixel Megascans. Here’s how one of them looks:

As you can see I’ve set it to be “Aligned to normal” and assigned 180 as the maximum align angle and ground slope angle. This is how I place my generator on the walls:

I have changed it’s rotation to 90 degrees (I don’t know if that is needed however). Clicking “Resimulate” gives me this error:

Keeping the rotation at 0 or -90 gives the same results. What am I missing here? Thanks in advance!

EDIT: I’ve set the values to 180 because later I’ll want it to generate on the ceiling as well.

Afaik the procedrual foliage tool uses QuadTree, to go vertically you would need Octree.

While I may be incorrect, I do believe this is a limitation of the tool.

Painting the foliage manually on walls does work (been doing it a while). The same instance used in the procedural tool does not.

Also, enable the quadtree debug view option. The debug shows that the rotation of the spawner isn’t taken into account when drawing the quad tree tiles.

Perhaps the code can easily be modified to generate the quads relative to the component rotation (should be very minimal editing involved).

However it is also true that the height is taken into account when spawning on a landscape, despite being quadtree based.

My guess is that It likely samples the height at the location.
Therefore on cliffs and overhang you don’t get a value of Z that allow for varied placement over a vertical surface.

What’s the answer hub tutorial you were following?

BTW, not sure this will work when packaging the game, but if you make a mesh/bsp and lay it flat. spawn instances on it, then rotate the BSP, the instances rotate along.
The pencils here were spawned on the surface at a 45deg angle, I then just rotated the surface.

Thanks. The only solution that worked was generating the foliage when the surface is rotated less than 90 degrees and then rotating it correctly. I’ll have to see if it stays that way in the packaged game.