unity3d  Character Controller

@by  广州小龙

做3D跑酷游戏,也慢慢的学习了一些东西,从开发过程中积累了一些小的知识点跟大家分享一下!

1.Unity3d 跑酷游戏  之Character Controller篇-LMLPHP

这个Revert按钮的意思是,可以把这个gameobject恢复到初始状态!

2.Input.GetAxis(string name);
         返回值类型:float
         参数:Horizontal,Vertial,Mouse X,Mouse Y
         其中Horizontal,Vertical默认对应键盘上的左右、上下键,返回值为-1或1
          Mouse X,Mouse Y对应鼠标位置,返回值不定

以上都是在Unity3d中预定义好的映射,可以通过Edit->Project Settings->Input来重新定义映射

3.transform.TransformDirection

转载自 http://hi.baidu.com/blues_master/item/e3a90dcb1d9658d59744527c

看转载讲解的非常细致,容易深刻理解!

这个方法是指的把 本地坐标转化为某个物体的世界坐标

比如有个车,它目前是朝向正前方的,那么它可以通过Vector3.forward来向前移动,那么前面车有个转角,车旋转了90度,那么如果还通过Vector3.forward来向前的话,就不对了,所以我们需要用

transoform.TransformDirection来变换他的方向!

具体代码是 transform.TransformDirection(Vector3.forward)

4.做3D跑酷

对人物加Character Controller组件!

如果使用了Character Controller组件,那么这个人物不具备Rigidbody的属性,需要自己模拟物体特性,用重力gravity即可!

使用Character Controller的Move方法可以实现跳跃以及行走!

04-19 19:00