Rigid body or Character controller

Updated on June 18, 2017 in General
Share on Facebook0Tweet about this on TwitterShare on Google+0Share on Reddit0
3 on June 17, 2017

Hello, I want to create very simple FPS game. I have tried to google differences between rigid body movement and Character controller. From what I understood, character controller should be ideal in most cases but I still dont understand why. Isnt it much easier to use rigid body since its providing pretty easy way to make jumping, acceleration, some kind of sliding with use of friction etc.

Can you help me decide please ?

The game Iam making should have similar movement like quake,doom,unreal tournament… and since those games have pretty wild movement mechanics like strafe jumping, rocket jumping, sliding, wall running etc. then isnt it logical to use rigid body instead of coding all that physics by myself ?

Also, do you have any idea what these games are using ? I would love to do it with correct approach. I was checking Quake 3 source code and it seems like movement physics is coded “manualy” instead using some kind of rigid bodies but all those modern games feels like they are using rigid bodies for character so Iam pretty confused.

So I’ll be grateful for any kind of advice or clarification. Thank you.

  • Liked by
1 on June 17, 2017

Those games your specified are using their own engines, they probably don’t have terms for rigidbodies.

To achieve similar movement mechanics as in those games you would use a character controller. Even if you use rigidbody based movement, you would still need to do strafe jumping, sliding, wall running… yourself.


on June 17, 2017

I know I would have to code a lot myself anyway. I was just thinking that rigid body would make it much easier for me with probably better results and maybe less limitations. Thats why I dont understand, why some people are recommending character controller. Iam still learning Unity so Iam sorry if my questions are dumb.

Show more replies
  • Liked by
0 on June 18, 2017

I’m not an expert or anything, but thought this might help you. I just implemented a change from character controller to rigidbody, adding strafe, sprint, friction and that code is 800 lines long. So I don’t think it will make it less work either way. I changed from character controller because of the collider (I wanted far more customisation with my collider(s)). I’d say go with the one you are more comfortable with, either way it’s still gonna be a similar level of work. 

I know you said you googled it, but not sure if that means any videos. So this video is decent.


  • Liked by