0 votes

Weird question but...

Basically im making an FPS, i created a rigidbody node with the same model as the enemies with a simple cilinder shape, nothing else, when an enemy dies this node spawns in it's place, this all works as intended.

BUT...

For some reason, the rigidbody nodes seem to stand upright by themselves, even if you push and "trip" them, they slowly stand upright again as if they were "buoyant" or something, i cant seem to make them lay down and stay down.

Any ideas?

Godot version 3.3 Stable
in Engine by (298 points)

1 Answer

0 votes
Best answer

Solved:

It is related to the collisionshape offset in relation to the rigidbody's origin. (This seems to be the center of mass)

Removing the offset (a.k.a. reset the collisionshape's transform) solves this issue.

by (298 points)
edited by

Note that Godot 4.0 will offer a way to define a custom center of mass for RigidBodies: https://github.com/godotengine/godot/pull/49610

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.