How do you add force to a character?

I can’t for the life of me get my character propelled by adding force. I feel like I have to be missing something obvious here.

The goal is to get the character moving at a steady rate of acceleration. I can fake it by making the character move constantly at max walk speed and then manipulating max walk speed but that feels like I’m cheating and then of course I basically have to create all the physics manually.

Can’t get Add Impulse to work either. Saw marginal success with Launch Character but things get bumpy and it seems pretty clear it’s not meant to be used the way I’m trying to use it.

I’m a Unity refuge used to simply being able to do things like Rigidbody.AddForce().

What am I missing here?

The character controller is not physical in the sense of using forces. Instead, it uses a hard-coded character motion controller.
You can turn off the motion part of that controller, after which you can do things like rag-dolling.
Another option is to set the movement mode to custom, and add whatever velocity you want.

So my initial idea is basically the correct one? To manipulate the max walk speed and sort of manually build the physics reactions accordingly?

Edit: Actually, now that I’m looking into it, custom movement mode might be exactly what I’m looking for.

This is old, but for anyone looking to exert an external force on a character (not intended character movement), the movement component has an addForce method / node. Remember: use the movement component, not the primitive component / mesh.

1 Like