Emitted Object Sizing Affects Subsequently Emitted Objects' Emit Speed

Go to Level 4, and move the Mouse to aim:

This is a very strange bug I encountered while trying to make a projectile object “explode”…

So an object gets Emitted, and when it collides with another object it activates code to rapidly increase its Size and then destroy itself (an “explosion”). More of the same object gets emitted, but some of these for some reason move a lot slower than they should, and they no longer “explode” upon colliding.

What I think is happening is that somehow the Emitted objects’ increased Size data is somehow carrying over to the next Emitted Objects’ Size property, which makes there initial Emit speed much slower and messes up their hitbox to no longer collide properly.
The very strange thing about this is how inconsistently the Emitted objects either work or do not work; if you run the level you can see that the Emitted objects work for a little while, then some don’t, then some do again, then some don’t, etc.

Hopefully there’s just a stray behavior or something else I’m missing here, or maybe this is just a mobile issue?

2 Likes

@grazer

2 Likes

The object speed not working correctly may be due to the object being emitted from the center of the object, so it could be colliding with the emitter (if it’s solid) now that it is larger. I haven’t looked at the example you gave because I gtg pretty soon, but if the object is solid try to make it non solid and keep collisions on.

1 Like

The emitted objects are non-solid, that was my first thought too.
It’s like the speed is changing because the object size is bigger (more density), but that would mean that the emitted objects aren’t their own objects, so this overall doesn’t make much sense. Definitely a bug.

2 Likes

I’ll investigate this, but at first glance I think I know what may be happening. I think your assessment is probably correct @thebrickccentric - emitted objects are pooled instead of being created and destroyed. It sounds like the object pool may not be resetting the size when the object expires.

I’ll investigate this to verify the root cause, and get it fixed in the next release. Thanks for reporting!

3 Likes