Giter VIP home page Giter VIP logo

scatter's Introduction

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.

scatter's People

Contributors

hungryproton avatar addmix avatar norodix avatar yurisizov avatar tokisangames avatar realgdman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.