Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unexpected RigidBody child behaviour in Bullet #41003

Closed
Vercix opened this issue Aug 3, 2020 · 4 comments
Closed

Unexpected RigidBody child behaviour in Bullet #41003

Vercix opened this issue Aug 3, 2020 · 4 comments

Comments

@Vercix
Copy link

Vercix commented Aug 3, 2020

Godot version: 3.2.3 RC3

OS/device including version:
Windows 10 64-bit

Issue description:

There seems to be a bug with regards to physics of RigidBody childs of RigidBodies.

  • Seems to be only happening in Bullet.
  • I did not have this issue with the 3.2.3 beta. (I forgot which specific commit I was building from)
  • RigidBody children connected by a HingeJoints seem to be completly unaffected by physics.

Behaviour in Bullet:
test2

Behaviour in GodotPhysics:
test3

Steps to reproduce:
Have any RigidBody child to a RigidBody node.

Minimal reproduction project:
test.zip

@Vercix
Copy link
Author

Vercix commented Aug 3, 2020

I also had the following error stack when starting the project. This does not get thrown every time though and I cant reliably reproduce it. So I dont know if it is related.

ERROR: shape_get_data: Condition "!shape->is_configured()" is true. Returned: Variant()
At: servers/physics/physics_server_sw.cpp:125
ERROR: CylinderShape is not supported in GodotPhysics. Please switch to Bullet in the Project Settings.
At: servers/physics/physics_server_sw.cpp:73
ERROR: get: Condition "!p_rid.is_valid()" is true. Returned: __null
At: ./core/rid.h:149
ERROR: shape_set_data: Condition "!shape" is true.
At: servers/physics/physics_server_sw.cpp:103
ERROR: Invalid ID.
At: servers/physics/physics_server_sw.cpp:1400
ERROR: set_data: Condition "!d.has("cell_size")" is true.
At: servers/physics/shape_sw.cpp:1640
ERROR: get: Condition "!p_rid.is_valid()" is true. Returned: __null
At: ./core/rid.h:149
ERROR: body_attach_object_instance_id: Condition "!body" is true.
At: servers/physics/physics_server_sw.cpp:671
ERROR: Invalid ID.
At: servers/physics/physics_server_sw.cpp:1400

Edit: Now that I'm having a closer look at the error, it seems like its complaining about a CylinderShape in GodotPhysics. I didnt have any CylinderShapes at any time in the test project though.

@Vercix
Copy link
Author

Vercix commented Aug 3, 2020

I looked at into it a bit more. And the 3.2.2 stable pre-compiled build also gives me the same issue. I have been building Godot from source for the last year or so. And none of those builds were giving me this issue.

I am planning on doing a clean build of the 3.2 branch when I have time to do so.

So I am really not sure what's going on. It might just be my system specific. But I cant imagine what it could be.

@madmiraal
Copy link
Contributor

This issue exists in 3.1-stable too. The issue is not present in 3.0.6.

@madmiraal
Copy link
Contributor

Fixed on master with #40184 i.e. it will be fixed in 3.2 with #40788.

@madmiraal madmiraal added this to the 4.0 milestone Aug 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants