当我用Unity3D自带的人物与代码是碰撞正常进行(即人物不能穿过墙),而当我换成自己的代码(控制前进后退,屏蔽了系统自带的代码)控制系统自带的人物时,这个人物表示毫无压力的就穿过了墙,请问这是怎么回事呀?求解释。我是新手还请大侠们赐教呀~~(分不多了,交流)这是前进代码,后退、向左向右差不多的。
你创建的墙应该是用Cube创建的吧,cube自带Box collider属性(unity3d的first person controller也带有碰撞检测)。如果你想自己创建的人物也能检测碰撞,随便加入一种碰撞都可以,盒碰撞·球碰撞·胶囊碰撞……加入方法:选中自己创建的人物,菜单栏中的“component"-----"physics"----"box collider(盒碰撞)"。还有你写的向前行走的代码:Vector3.forward*Time.deltaTime*Speed,加入time.deltatime 后运行起来不会产生帧的闪烁。