Spawn and Place actors on Surface of Mesh using Texture


I’m aiming to spawn actors on the surface of a globe using a B&W texture as a mask. The final goal would be to be able to animate the mask to have the meshes grow and recede over time.

I looked at Procedural Foliage but currently, I can’t get it to spawn on the underside of the globe. Also, the exclusion and inclusion layers look like they will only use landscape Materials.

At a guess, blueprints would be the answer but I have no idea where to start.

Thanks in advance for any help.

It’s pretty easy to make a BP that places HISMs on a sphere. I can share a bit of code if you like.

The bit with the texture is more a fiddle. I guess a line trace and read the color might do the trick.

As for the moving the texture - don’t do it :wink: Even if all your meshes were blueprint and reading the texture constantly to keep pace, it would be a performance nightmare. Much better to just rotate the planet.

Thanks for the reply,

I’ve managed to source a BP to place objects on a sphere now but still missing the texture part

As for performance, I’m not 100% concerned with real-time at the moment as the final output will just be an image sequence. So along as Final render can be faster than a redshift/Arnold render its a win.

This is getting close, but no cigar:

I think it would be easiest to just spawn enough BPs to cover the globe. They can choose what they will look like ( rock, tree etc ), or be told at placement. Then the blueprints just do a downward trace waiting for the texture to move. If they’re not on a white area, go invisible.

Apparently Rama’s plugin does it: