2D
1.制作移动动画:Idle、Run、Jump
2.物理控制人物运动:
- 水平方向,根据input的axis给力,提供加速度。
- 修改LinerDrag,调整停下来的加速度。
- 重力变大,会使得摩擦力变大,难以移动。可以建立一个physics material,将摩擦力设置为0.
3.使用水平速度作为参数来调整走和跑动画之间的过渡。anim.setFloat();
4.反向运动修改localScale的z值为负即可。
5.跳跃:
设置Ground,只有在Ground上才能跳。
在地面上,且按下空格键的时候,将player的Y轴速度设置为30或更大。
根据rigidbody.velocity.y的正负来判断应该切换到哪个动画。>5,jumpUp,<-5,jumpDown,在二者之间,idle。
任何状态都可以切换到JumpUP,包括walk和run。
3D
1.CharacterController的Move方法。把Vector3(h,0,v)作为前进方向。
2.跳跃:把前进方向的Y值调高,然后再由重力影响落下。
3.行走动画,不勾选root。
【1】Rigidbody
移动:
rigibody.velocity=new Vector3(h,vel.y,v);
动画:
if(rigidbody.velocity.magni