欢迎光临散文网 会员登陆 & 注册

unity 初探 ---- 移动与物理

2022-11-05 10:46 作者:东边的BiLi  | 我要投稿

今天来玩玩 unity, 随便在B站找个教材看看

里面告诉我unity 内建一个 角色控制器 来让开发者控制你的角色

看上去很好玩,大概看了一下 有不错的内容 比如设置上爬角度,上爬高度 都是对虚拟世界的一个很好玩的设计。 但是弄完移动代码后,我发现了严重的问题


这个 角色控制器 跟 物理系统是一个很混乱的关系。 它是有碰撞检测的,也就是你可以爬楼梯,但又没有物理系统,当你什么都不做的时候 你可以让自己浮在空中(绝对静止)。当你想把物理系统中的重力融合进来的时候,你就会发现你的角色开始鬼畜了。


这是因为它们就是两套系统,基本是独立的,但又同时影响你的游戏世界里面的唯一的坐标系统。这里有两个搞笑的现象。


一 物理系统认为不存在绝对的静止(因为会持续受重力影响),但是角色控制系统认为是有的,于是在互相干扰下,你的角色会微微的抽风,就是抖来抖去,呵呵


二 两个系统使用同一坐标,但又使用不同的缓存,比如重力认为你在掉落,不停地更新你的坐标,但是角色认为你是可以浮空的,于是 即便你已经被重力拉到地面,但当你下一次移动时,角色控制器会从缓存中的坐标(半空中)来开始你的移动,于是你的角色会出现瞬移现象。


我不确定 unity 是否有成熟方案,毕竟我才看了一小会。不过 B站一般都教你角色控制器,但unity官方文档里面关于角色移动,是直接叫你向角色施加一个力,这个方法是完美迎合物理系统的。当然,你这样做,会导致你在开发过程一直要考虑物理系统。。。


想一想,一般3D游戏 你的角色都是有物理系统的,比如摔死什么的。。。对吧

那角色控制器有鸡肋的感觉了。。。好。。。


今天就这样了。。。

unity 初探 ---- 移动与物理的评论 (共 条)

分享到微博请遵守国家法律