

Some things can be implemented without using physics at all: think about rolling - you can rotate your characters PhysicsBody (torsional moment for RigidBody) or just play a rotating sprite animation. So it is sometimes easier to have a very restricted physics environment (KinematicBody) than thinking about every aspect of a realistic behaviour (RigidBody). But you can also implement parts of a physics system into your movement algorithms (mostly done with acceleration for walking speed and gravity while jumping). You can move your KinematicBody without ever thinking about its mass, inertia, acting forces, friction and damping. What is the difference between Kinematic and RigidBody?

Also you should experiment with the PhysicsBodies in Godot until you have a good grasp of all the available kinematic methods, collision detection, rigidbody modes and the connection between velocity, acceleration and inertia. There are platformer (2D and 3D) demos that you can investigate. You will see that it is often a mixture of approximated physically based computation and well defined edge cases where the calculation results are anticipated, rounded or replaced by a kind of state pattern. I can totally recommend to read a lot of articles about the physics system and used programming tweaks in the Mario games. You can use both but I would choose the KinematicBody.Īt the end it depends on your implementation details. If you meant games like Super Mario 64 or Super Mario Galaxy the answer may doesn't fit your needs but still can be helpful. The term "Mario-like game" means a game like one of the Super Mario Bros.
