Simple Scatter Plugin

Cheers - thanks for the response. Didn’t think of using a material function to save some of the workload… Good suggestion. Fair point on changing from Material to MI and unloading all existing projects when they upgrade, that would be annoying. Think if you worked it out, would be a good addition to your plugin! Thanks again

Hi - FYI, I’ve compiled the plugin for UE5.1, and generally is working perfectly. The only issue I have come across is when I am packaging the game, I get the following errors. The errors only happen if I use a distribution material, if I delete them, then it packages fine.
LogWindows: Error: begin: stack for UAT
LogWindows: Error: === Critical error: ===
LogWindows: Error:
LogWindows: Error: Fatal error!
LogWindows: Error:
LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000050
LogWindows: Error:
LogWindows: Error: [Callstack] 0x00007ff813a2f0f2 UnrealEditor-Engine.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007fffebb0c5b8 UnrealEditor-SimpleScatterPlugin.dll!ASimpleScatter::GetTracedPoints() [C:\Users\Admin\Desktop\temp\ue51 test\UE5.1P2\UE51P2\Plugins\SimpleScatterPlugin\Source\SimpleScatterPlugin\Private\SimpleScatter.cpp:449]
LogWindows: Error: [Callstack] 0x00007fffebb110ed UnrealEditor-SimpleScatterPlugin.dll!ASimpleScatter::Update() [C:\Users\Admin\Desktop\temp\ue51 test\UE5.1P2\UE51P2\Plugins\SimpleScatterPlugin\Source\SimpleScatterPlugin\Private\SimpleScatter.cpp:189]
LogWindows: Error: [Callstack] 0x00007fffebb0e5c7 UnrealEditor-SimpleScatterPlugin.dll!ASimpleScatter::PostMaterialUpdate() [C:\Users\Admin\Desktop\temp\ue51 test\UE5.1P2\UE51P2\Plugins\SimpleScatterPlugin\Source\SimpleScatterPlugin\Private\SimpleScatter.cpp:113]
LogWindows: Error: [Callstack] 0x00007fffebb094ac UnrealEditor-SimpleScatterPlugin.dll!TBaseUObjectMethodDelegateInstance<0,ASimpleScatter,void __cdecl(UMaterialInterface *),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [C:\Program Files\Epic Games\UE_5.1\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:618]
LogWindows: Error: [Callstack] 0x00007ff812d6a5b3 UnrealEditor-Engine.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff81358346c UnrealEditor-Engine.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff813580a27 UnrealEditor-Engine.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff828079d25 UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff828085e9c UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff8280b0687 UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff8280af41b UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff827e29960 UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff827e4bfe3 UnrealEditor-UnrealEd.dll!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861bae7e UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861b25a8 UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861b288a UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861b55a0 UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861c6ea4 UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff7861c93fa UnrealEditor-Cmd.exe!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff8aaf57034 KERNEL32.DLL!UnknownFunction []
LogWindows: Error: [Callstack] 0x00007ff8abb02651 ntdll.dll!UnknownFunction []
LogWindows: Error:
LogWindows: Error: end: stack for UAT
Took 70.73451820000001s to run UnrealEditor-Cmd.exe, ExitCode=3
SafeDeleteFile C:\Users\Admin\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_5.1\Cook-2022.11.02-16.41.17.txt

Distribution material setup

And with them removed (for some reason the landscape also doesn’t recalculate after the distribution materials have been removed from each mesh)

Any ideas?

Not yet. I usually compile and test the plugin when the final, non preview version of the engine is out. That being said, it’s really helpful for me to be aware of this. Do you think you’d be able to reproduce this in a new, empty project, with just some simple setup (new empty level with just the default plane and a few cubes scattered on it, and using texture distribution)? If so, sending me such project would help a lot.

I will try to reproduce this myself, but in case I don’t manage to, I’d be quite worried releasing new version of the plugin with this bug not being solved.

Can do - do you have a discord /email etc to save jamming this forum up?

Does this plugin work well for city building use case? For example, using plugin to lay out city blocks and then scattering building meshes inside those blocks?

Nope. This is meant more for a random, uneven foliage distribution.

Hello. I started using your tool actively and it’s great! However, I ran into a very annoying problem that will break my whole week of work. I distribute stones along the splines. And after the next save of the location, any displacement of the spline makes the stones disappear. That is, I can no longer edit the lines: the stones simply disappear and do not appear again. This is a very annoying problem and I would like to know what you think about it.

Hi,

could you send me a stripped down/simplified version of the project with just the isolated part where this happens? If so, please contact me on my mail address you can find on my Marketplace seller profile :slight_smile:

Once I get a hold of it, it should not be hard to figure out what causes it, and fix it if it’s a bug.

Hello,
Great work on this tool.
Before I drop $100 aud on this plug in I need to confirm a few things.
I’m in doing some golf course visualisation work and need a way to scatter dense grass on meshes that essentially make up the course.
Ideally I would use an 8k mask across my 2k landscape in order to have sharp transitions between different grass types.
Long grass, fairways etc…
Does the tool support mask distribution up to that resolution?
I hope this makes sense.
Thanks

It won’t work. Covering large landscape with such a small instances as individual grass patches will require so many instances the engine would probably crash if it had to spawn them all in advance. If it wouldn’t crash, it would still be quite slow and inefficient.

Let’s be generous and say you have really large grass patches, so you need to spawn only 10 of them per square meter (the larger the grass patch, the worse it follows sharp changes in the terrain contours). 2x2km terrain is 4 000 000 square meters, so 40 000 000 of grass patch instances. And that’s just for grass alone… No flowers, weeds, bushes, rocks, etc…

This plugin is mainly meant for static instancing, meaning it will generate all the instance locations in advance. When spawning huge amount of instances on large surfaces, such as landscapes, dynamic instancing solution is required, which will generate the instance locations on the fly, only around the camera location, and will despawn and destroy instance location information as the camera moves away.

Unreal has this in form of Landscape Grass Tool. But I doubt my plugin would be useful for this kind of use case.

Hi there, I’m having problems trying to spawn a big number of static meshes.
i’m using nanite and literally need hundreds of thousands of meshes to re-create a sunflower field. Currently the plugin is telling me that ‘scatter surface exceeds max instance limit’ but te number of instances spawned is not that much either… do you know what might be causing the issue ? might it be due to scaling issues ? i have a very large area to spawn onto.

Hi,

you can increase the instance limit in the optimization rollout:


Just keep in mind that if you go into extreme with the instance count, you may crash the editor. At some point, if you need too many instances in your world, it requires completely different solution which dynamically spawns and despawns instances around the player camera. This plugin doesn’t do that unfortunately, so it requires some tool similar to Unreal’s built in Landscape Grass Tool.

Hi Rawalanche,

I found some issue probably not related to scatter plugin itself but you maybe know the solution. I still cannot find workaroud - with the RT shadows the culled instances still cast shadows. Tried the r.RayTracing.Geometry.InstancedStaticMeshes. commands (they dont seem to me affecting the scatter at all), customized the BP and added evaluate WPO, still cannot get rid of them. Thanks!

ok found workaround finally r.RayTracing.Geometry.InstancedStaticMeshes.CullAngle 5

So it looks like my plugin is about to be unnecessary:

And I have to say I am really happy for that. While the Simple Scatter brings in some small nice bonus every month, I can never do as much development of new features as Epic do. I will still continue to maintain it and try to implement as many requests as possible, but I am really happy there’s now a built in way to distribute instances way better than the old Foliage Paint and Foliage Volume clunky toolset :slight_smile:

The only reason my plugin exists in the first place is that when I was making it, UE didn’t have anything like this. Now it finally does.

2 Likes

Hi there, huge fan of this plugin. I was hoping that you could please enable the ability for the instanced static meshes to cast and receive shadows? Additionally, it would be nice to have the ability to turn on / off Receive Decals too for the instanced meshes.

Hi there! Can you update plugin for 5.5?

Hi,

I stopped selling the plugin because it’s made obsolete by PCG and I just didn’t have patience to deal with unfinished FAB store. But for anyone who bought it and needs 5.5 version, please send me a direct message here on the forum and I will compile the 5.5 version for you.