Unity3D开发学习④ 角色朝向,适配电脑,角色跳跃

Unity3D开发学习① Unity安装,导入素材

Unity3D开发学习② 切割素材,设置背景,绘制地图,图层顺序

Unity3D开发学习③ 新建角色,设置碰撞箱,角色移动,

1.角色朝向

 通过改变player的Transform里的Scale就可以改变player的三维缩放,这里将Scale x分别调至-1 0 1即可观察到角色的变换

所以要添加角色朝向的变化就是要设置角色的scale值

那就直接跳到代码部分吧

打开之前的脚本代码文件

 直接开干

这里如果设置X scale为0 就会使玩家看不见角色,所以需要判0避免

码完就可以预览康康了

这个时候应该发现了测试中角色有时会秃然卡一下,据后来补充似乎是碰撞箱的问题,给地图换个碰撞箱就好了

但这里还是先不改吧,一个明显的错误能让人更在意整体(?

2.适配电脑(FixedUpdate)

然后这里就应该处理一下适配问题了

这里将物理移动逻辑放在Update中的原因是因为他会一直执行

但是因为渲染的物体与机器性能的不同,Update每次执行的时间可能是不同的

所以就需要使用FixedUpdate方法来执行这些代码

因为FixedUpdate不是每帧执行而是根据系统时间,每隔一定时间渲染

这样就可以对性能较弱的机器进行适配(大概吧

 这个一定时间可以在Unity中修改,默认是0.02s执行一次

 于是在代码只要添加一个方法就可以完成这个适配

然后就可以在游戏中预览试一下了

 没感觉出什么差别,因为适配还有一步没整好

位移是应该*上Time.deltaTime(增量时间)的

因为Time.deltaTime是一个变量,代表着完成上一帧任务的时间

也就是说在因为性能而帧数不稳定时,Time.deltaTime也会随之变化

而位移这种需要平滑的量*上Time.deltaTime才能在FixedUpdate中平稳发挥(应该是这个意思

如果现在预览发现动起来像是在爬,修改一下人物移动速度即可

然后就可以准备开始添加跳跃功能了

 3.角色跳跃

跳跃跟移动差不多,只不过是方向不同的问题

但是左右移动可以长按一直移动,跳跃要是长按变成飞天那可能不太合适

所以这里先从设置中了解到跳跃的标识名

 

 再从代码中获取玩家是否点击jump(空格)按钮

然后声明一个跳跃力度(JumpForce)的变量

 

然后就可以加上让player躁动不安的代码了(?

 但是需要注意的是,FixedUpdate按时执行的方式代表了他很可能不能及时反映按键的落下

所以这里需要另起一个方法放在update中

 弄成这样就可以进游戏预览了

如果游戏中跳不起来或者跳的几乎察觉不出,可以把跳跃力度修改一下‘

 

 这里没有对跳跃次数做限制,可以无限跳跃

如果不想人物太飘可以再刚体属性中设置重力,让它自重一点(

 然后就可以准备设置角色动画了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值