CharacterController中Move和SimpleMove的区别

角色控制器这个组件还是非常有意思的。有时候人物的控制就用它来做。那么你知道这个组件它的一些方法到底是怎么实现的。又应该怎么选择用谁呢?今天我会讲下Move和SimpleMove之间的区别。

还是先了解下什么是角色控制器把。如图:

 

组件的属性含义依次是:坡度(大于这个值就爬不上去),台阶高度,皮肤宽度(太大就抖,太小就被卡住),最小移动距离,中心,半径,高度(这三个都是指角色控制器本身)。好了,有了这些,我们就可以进入今天的主题了。Move和SimpleMove直间的区别。

首先,它们的共同点都是用来移动的,参数都是Verctor3类型的向量。不同的是,Move这个方法它的实际作用和Transform组件中的translate几乎一样。而且它计算速度是以帧计算的。(cc表示角色控制器)所以需要乘每帧时间间隔:cc.Move(Vector3.forward * Time.deltaTime * 5).而SimpleMove它就比较特别了。当你使用它来移动你的目标时,它就具备了“重力”,而且移动的时候,它时以秒为单位的。不用乘时间:cc.SimpleMove(Vector3.forward * 5). 直接上代码:

而且还有一个点,角色控制器它也是一个碰撞体哦。

OK,本节就这么些内容了

unity学习交流群

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章