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

KinematicBody move_and_slide on rotating platform will "shift" #16450

Closed
nagasawamaki opened this issue Feb 6, 2018 · 4 comments
Closed

KinematicBody move_and_slide on rotating platform will "shift" #16450

nagasawamaki opened this issue Feb 6, 2018 · 4 comments

Comments

@nagasawamaki
Copy link

Godot version:

Godot 3.0 Stable

OS/device including version:

Windows 7

Issue description:

KinematicBody on a rigidbody in kinematic mode rotated by animation player will somehow move out of the rigidbody

Steps to reproduce:

Create rigidbody in kinematic mode 
Create KinematicBody 
Put KinematicBody above rigidbody 
Rotate the rigibody by y-axis by animation player
KinematicBody call move_and_slide()
After a while, KinematicBody will move out of the rigidbody

Minimal reproduction project:

upload.zip

@ghost ghost added this to the 3.1 milestone Feb 6, 2018
@akien-mga akien-mga modified the milestones: 3.1, 3.2 Jan 19, 2019
@akien-mga
Copy link
Member

CC @AndreaCatania

@madmiraal
Copy link
Contributor

I'm not sure this is an issue (any more).

Aside from the fact that there was a visual artefact (the ball would jump to the right on each rotation and eventually fall off of the side) which does not appear in 3.1.1, everything else appears normal.

In 3.1.1, the ball slowly moves outwards and eventually falls off the edge. This is a side effect of simulating a rotating platform using discrete physics on a computer, and looks normally if we consider centrifugal forces :-).

I've tried increasing the speed of the animation, and although the ball falls off the side, this again is expected because of the initial step change in the angular velocity, which looks normally if we consider the ball's inertia :-). If I increase the width of the platform the ball stays on and, again, eventually falls off the end due to "centrifugal forces".

I've also tried moving the platform from side-to-side (instead of rotating it) and again, aside from jumps during step changes in velocity, the ball stays on the platform even at very high animation speeds.

Unless I'm missing something, I think this issue can be closed.

@akien-mga
Copy link
Member

Thanks for the in-depth review, let's close it then.

@nagasawamaki
Copy link
Author

nagasawamaki commented Dec 21, 2019

Sorry to ask a question. Although it may be correct in physics simulation, if I am making a 3d platformer, I think I don't expect my character, who is standing on a rotating platform, eventually will be moved to fall off the platform.

Is there any workaround to disable this "centrifugal forces" effect? @madmiraal @akien-mga

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