【Unity】控制人物移动

这篇博客介绍了如何在Unity中实现2D和3D角色的移动控制。对于2D游戏,内容涵盖了制作移动动画、物理控制人物运动、动画过渡、跳跃功能的实现。在3D环境中,利用CharacterController进行角色移动,并讨论了跳跃和行走动画的处理。同时提到了使用Rigidbody、Transform以及CharacterMove组件进行角色控制的不同方法和注意事项。
摘要由CSDN通过智能技术生成

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值