In a 2D scene, I have some rigidbodies with a rectangular collision shape, contained between 4 world borders. The rigidbodies can collide with each others and the floor/walls. The rigidbodies can be dragged by the mouse thanks to a joint2d. In 4.6 this all works with no issue.
After moving to 4.7, the rigidbodies seem to freeze after standing still for a few moments. They can be dragged as they spawn and they collide/stack sensibly, but afterwards they can’t be dragged, and in case a body can be dragged, the others stacked on top of it will remain fixed there instead of falling. Disabling collision with the floor via code also does not cause them to fall. The debug collision markers appear/disappear correctly, but the bodies don’t react.
For some reason, dragging the game window itself unfreezes them. Bodies will fall to the floor, or fall through the floor if collisions had been disabled. Forces applied via the joint also seem to update all at once. However the bodies freeze again after a moment.
I have set the “can_sleep” property for all bodies to false. I also set the project wide sleep timer to 99999, but there has been no change in behaviour. Printing the “sleeping” property of the bodies, they all return “false”.
I have also set the “disable mode” property to keep active but there’s no change once again.
Reverting to 4.6 fixes all the unexpected bugs.
I have read the changelog and migration guide, I have not seen any change regarding 2D physics so I believe this to be a bug, but i’d welcome anyone who can give me more info.
Thanks!
I have recorded both the expected and unexpected behaviours but can’t attach them as a new user
Apologies for not clarifying. I do think it’s a bug, because it worked before, and it doesn’t now. Your implementation is a little odd, but by logging it you’ll get one of two responses:
Acknowledgement that it’s a bug.
A reply telling you what you should change to make it work.
I believe it’s a bug, and I’m encouraging you to log it now, because right now they are doing bug fixes for 4.7, and in a few weeks will release a 4.7.1 version with new fixes. This is because not a lot of people test the new versions until the official release anymore.