Godot: Something is wrong with collisions on Rube Goldberg demo (2.1.4b)

Created on 26 Jun 2017  Â·  11Comments  Â·  Source: godotengine/godot

Ubuntu 17.04 - Godot version: 2.1.4 beta

Issue description:
There is something weird happening on Rube Goldberg demo on the beta, some staticbodies are ignored by rigid ones.
Could be a potential regression or not correctly updated change regarding 2d shapes/collision objects.

Steps to reproduce:
Run Rube Goldberg demo on 2.1.4 beta and have fun.

bug physics

Most helpful comment

I'll check and fix but the next two days I'll be completely busy with something else.

All 11 comments

CC @RandomShaper, likely related to #8999

I'm seeing something similar on 2.1.4 beta but with a 3d project:

https://gfycat.com/AltruisticAcrobaticAlbino

If the car is sufficiently flipped from the original position, it'll go through the floor (a boxshape collider). At first I thought I needed to be upside down until I saw those two colliding.

Running with display collisions made no difference but I was able to verify that all the colliders are there and both the AI and myself can collide fine with all other stuff (buildings, bridge etc.).

@Zireael07 oh, yes, maybe are related on the same commit, just made an issue of something like that I have found trying Truck Town Demo #9395

I'll check and fix but the next two days I'll be completely busy with something else.

Bump :) This appears to be one of the main issues in the current beta.

I'm almost ready to look at this. I'll do my best to fix it so the whole
fix can get its way into the definitive release.

El 2 jul. 2017 1:31 p. m., "Rémi Verschelde" notifications@github.com
escribió:

Bump :) This appears to be one of the main issues in the current beta.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/9387#issuecomment-312486272,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALQCtq4BuFcBQMUxg3ypYv-LJ5GguBNaks5sJ3-QgaJpZM4OEy1N
.

@eon-s, @Zireael07 please have a look at my new PR.

It should fix the rigid-vs-static issues in both 2D & 3D since the (bad) logic causing it was the same. Thanks!

@RandomShaper is perfect now :godmode:

Fixed by #9518

@eon-s, your almost real-time feedback has helped a lot!

@RandomShaper Aaha! I was wondering while I was checking the diff if it even makes sense to first change space then remove pairs (since this leads to invalid state, as you can't have pairs with things outside your space), but ruled out it can't possibly lead to this issue 😄

The invalid state is transient so it shouldn't be the cause. The problem was that when the object is added to the space, its shapes are paired with shapes from other bodies that overlap them.

And my code was removing them all just after that. :) For 2D you could switch to the "simple" broad phase implementation, that recreates the pairs on every step and the issue was gone.

Anyway, your intuition proved to be very accurate. :) Your comments will be welcome next time!

Was this page helpful?
0 / 5 - 0 ratings