U3D 角色控制器(Character Controller)

一、角色控制器

主要用于第三人称或者第一人称的控制,不使用Rigidbody。
在这里插入图片描述

二、属性

1.Slope Limit(坡度限制):限制角色控制器可以攀爬的坡度的值。
2.Step Offset (步偏移):只有当台阶的高度小于该值时,角色才可以上楼。该值不应该大于角色控制器的高度(Height),否则会产生错误。
3.Skin Width(皮肤宽度):两个碰撞器相触碰时,可以互相穿透彼此的值。如果数值比较大可以更好的防止触碰抖动问题,如果该值比较小,则可能导致角色卡住。推荐设置的值为Radius的10%或大于10%。
4.Min Move Distance(最小移动距离):当角色试图移动时,若移动距离小于该值,则不会移动,这样可以减少抖动。大多数情况下,此值应该保留为0。
5.Center(中心):设置胶囊体的位置。
6.Radius(半径):胶囊体的半径,类似于设置将囊体的宽度。
7.Height(高度):胶囊体的高度,Y方向上的长度。
在这里插入图片描述

如果要使用角色控制器推送刚体或对象,可以通过函数OnControllerColliderHit() 、OnControllerCollierHit(ControllerColliderHit hit) 将力施加到碰到它的任何对象。

如果角色被卡住,那么可以尝试稍微调大Skin Width的值。该值可以让物体稍微穿透彼此,但是能消除抖动,并且防止被卡住。

你可能感兴趣的:(Unity3D深入研究)