I am currently trying to spawn particles inside a sprite so I’ve set the emitters shape to sprite renderer which works fine but if any translate/scaling occurs then the particle emitter will follow it which is intentional by design but I want the particle emitter to simply keep the original shape of the sprite.
I’ve looked at using the box shape but how can I infer the size of a sprite renderer/sprite and resize the emitters shape depending on the sprite?
I have an eerily similar question, so I noticed this. I am by no means an expert, and I can’t tell whether using a SpriteRenderer as the emission shape for a particle system actually attempts to do anything fancy (i.e. using a more complex polygon than just the sprite’s backing quad).
If it just uses the backing quad, then I think you could pull the bounds off of the sprite renderer (sprite.GetComponent().bounds) manually in script when you set the particle system up. I suspect if you clone the transform of the SpriteRenderer’s GameObject onto the newly created particle system, then set the particle system to box\rectangle and set the values based on the SpriteRenderer’s bounds, you’ll end up having effectively snapped the position of the sprite at a certain time. You’ll probably need to clean up the particle system at some point, since I’m assuming this is a temporary effect and the removal of the Sprite will (obviously) not impact the particle system at all in this setup.