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

The difference between an angular damp of 0.999 and 1 is massive. #40131

Closed
SimonCadge opened this issue Jul 5, 2020 · 3 comments
Closed

The difference between an angular damp of 0.999 and 1 is massive. #40131

SimonCadge opened this issue Jul 5, 2020 · 3 comments

Comments

@SimonCadge
Copy link

Godot version:
3.2.2 Stable

OS/device including version:
GLES3 Windows 10 RTX 2070 Super

Issue description:
I'm creating a tank game. The wheel tread things are separate rigid bodies which are moved forwards and backwards, and they are connected to the body by Generic6DOFJoints. If I don't apply angular damping then the tank can achieve the same angular velocity as it can achieve linear velocity, which is unwieldy, but applying an angular damping of 0.999 is too little damping and 1 is too much.

Sound-Effights-Research-DEBUG-20

That gif is with the angular damping set to 0.999. I achieve a top angular velocity of around 5.
Sound-Effights-Research-DEBUG-20 (1)

That gif is with the angular damping set to 1. I achieve a top angular velocity of around 0.5.

Ideally I'd like somewhere in the middle but I can't select a value between 0.999 and 1.

Minimal reproduction project:
https://github.com/SimonCadge/sound-effights-godot
Clone that repo and run the default scene. Then, go into the Tank.tscn scene and modify the angular damp of the body node to 0.999.

@Calinou
Copy link
Member

Calinou commented Jul 5, 2020

Ideally I'd like somewhere in the middle but I can't select a value between 0.999 and 1.

You can set it manually in a script to work around the precision limit defined in the property hint.

Also, keep in mind damping currently behaves differently depending on the physics engine in use: #37880

@SimonCadge
Copy link
Author

SimonCadge commented Jul 5, 2020

Ah, ok thanks. I set the damp to 0.9999999 in a script, which works as I want it to.
I'd still say that this is an issue. Values above 1 didn't make any difference, a value of 1 functioned the same as a value of 100. And values below 1 barely seemed to change anything, since most of the values that actually change things are between 0.999 and 1. For a long time I thought that angular damp was actually just a toggle.
I'm using the default physics engine, which I believe is Bullet. Does that mean that this problem is actually a quirk with bullet rather than with Godot?

@madmiraal
Copy link
Contributor

Duplicate of #19182, fixed in 4.0 with #37314 and in 3.2.3 with #39084.

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

3 participants