Hey there. I'm wondering what the best way to create an animated sprite on the fly would be. It isn't necessarily linked with a particular entity, it can happen anywhere on the screen at any time, and there can be multiple at one. An example would be a little spark or explosion animation that happens whenever a certain type of collision occurs or something like that. Or just like a bunch of sparkle sprites that randomly appear and disappear in the foreground for effect. The only way I can figure out is to make a new scene with its own animated sprite and create instances of it as needed. This seems very inefficient to me. Any tips here?

    differenceclouds that's easy. you can just make the animated sprite as its own object, go ahead and edit the SpriteFrames resource as needed, then save it as a scene. Then just instance it where needed. I actually did this with falling cherry blossoms in my first release. I even managed to make their values change a bit for each one for variation and they also have a VisibilityNotifier2D attached to each so they vanish (queue_free) when they leave view. You can make something like an Area2D (with a CollisionShape2D) and use that as your "spawning" area. You could make this whatever shape in whatever space you needed.

    If you want to see those cherry blossoms, you can boot this up. You'll see them start "spawning" at the main menu:
    ZenGames

      SnapCracklins Thanks! Yeah this is pretty much what I figured. I'm still new to Godot so the idea of making a lot of scenes for little things like this still feels odd to me and seems like overkill for what is basically a visual effect, but I'm coming around to how much flexibility it gives you. In my mind you should be able to have nodes that can be instanced and sit outside of the tree but in the same scene just to keep the project tidy.