How do i change material on terrain surrounding an actor??

I am creating an ecology simulator/rts and i want it so when i place down some plants (actors) that the terrain underneath them within a certain radius changes to a grassy texture? As a way of showing different environments. How would i achieve this in blueprints??

will the different material have any effect in game? if not you could just use a decal which is probably the simplest solution.

I was planning on it tiling is the only thing, i want it to look nice. A load lf decals for a grass texture in my mind just wouldnt look pleasant? I also want each environment to have different effects eventually? But for now i just need this to work

Check out this video: Building High-End Gameplay Effects with Blueprint - YouTube

Wouldn’t tiling be almost the same as applying decals? You can use normal maps for decal materials as well, if I’m not mistaken. It’s still be a flat texture. If you look up some tutorials, you can create a material based on Fresnel with irregular edges, and the decal will look different each time.


If you don’t chase performance and want it to look as nice as it gets, you can randomly spawn a number of objets on the plane within the given radius, be that grass or stones or anything you like.


Alternatively, you can create a particle emitter that generates meshes; use sphere location with the given radius for spawning, and limit Z coordinate to zero — this way particles will only be spawned on a plane, and you can even make them spawn not altogether, but within 2-3 seconds, which will make a better effect.