I want to make an FPS controller that feels realistic, like when you move you really feel that your character has mass. In Unity I would’ve done that with RigidBody, but how do I do that in Godot 4.3.1 with CharacterBody3D? I know that RigidBody3D is not suitable for character controllers. May anyone show me the direction in which I shall dig?

  • Klaymore@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    There’s nothing stopping you from making your player a RigidBody3D if that’s what you’re going for, it’s just CharacterBody3D is more common. You would apply forces and impulses on the player to move them around. You could use a CharacterBody3D but then you might want to program your own calculations for inertia and things like that which change their velocity.

  • CaptDust@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    edit-2
    1 year ago

    Who told you rigid body isn’t suitable for characters? If you’re comfortable with the concepts of a physics engine and don’t mind using impulses, force integrators and other physics-driven locomotion, I see no reason to avoid a RB character.

    For most use cases, rigidbody just a bigger challenge to get simple things “working right”, and the precise control a kinematic body provides tends to be favorable.