Skip to content

Godot engine addon to randomly fill an area with props or other scenes

License

Notifications You must be signed in to change notification settings

HungryProton/scatter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scatter

scatter
Custom node for the Godot game engine to randomly place props or scenes using 3D curves. See it in action here

Scatter V2 is not backward compatible with the first version.
Use the tag selector to go back to older versions if needed.

How to use it

Check out the demos!

Two examples scenes are located in res://addons/scatter/demos/, make sure to check them both. This way you'll see how you can setup your scenes and how this addon can be used.
image

Installation guide

Troubleshooting

I can't open the demo scenes

Make sure the folder is named scatter exactly, nothing else. If you downloaded the archive from GitHub, if probably renamed that into scatter-master or something else, this will break the import / scene paths.

  • Disable the plugin first.
  • Rename the folder into scatter.
  • Close the editor and open it again.
    • If you don't Godot will probably complain about cyclic dependencies or something else.
  • Enable the plugin and it should work.

My collisions are ignored

By default, instancing or batching is enabled (through a MultimeshInstance node) and doesn't support collisions. However you can turn off instancing in the Scatter node and it will copy the entire source, including colliders, scripts and others.
image

The addon is slow when editing a curve

When updating a Scatter Path object, a 2D polygon projected on the XZ plane is also generated internally. This polygon is used to know if a point is inside the curve or not. If this polygon resolution is too high, regenerating it will take time. To fix this, increase the Bake Interval on the Scatter node itself. (Not on the curve resource, this one is not used). Values around 1 or 2 are usually enough, but if your path is really large, you don't need that much precision and you can increase this value. However, if your path is really small, you can decrease this value.

The 3D curves are modified at different places at once

Please read this page. When you duplicate a Scatter node, the curve resource is duplicated automatically so this shoudn't happen. If it does, click on the Curve3D resource and click on Make Unique.

Project on floor ignores my colliders

There is a known bug in Godot when raycasting from a tool script. After moving your colliders, the physic world is not synced with their new position, so you have to hit the Rebuild button in the inspector, under the modifier stack. Hit it once after you made modifications to your scene.

Don't forget the wiki

If you can't find what you're looking for in this readme, please check this project wiki. If you're facing a bug, please check the issues's tracker to see if someone else already reported the issue. If not, feel free to open a new one.

Licence

  • This addon is published under the MIT licence.
  • Most 2D and 3D assets in the demos folder are MIT, with a few exceptions. Refer the the LICENCE.md in the assets folder for more details.