首页 > 解决方案 > 将玩家绑定到路径 Unity

问题描述

假设我有一条路径,可以是 Unity 中的一条线或一条曲线,我想让我的玩家捕捉到那条路径并沿着它移动我将如何实现这一点。这看起来像是一个掩护系统,或者类似于 Sly Cooper 中壁架的工作方式。

标签: c#unity3dgame-development

解决方案


如果您希望玩家的移动跟随路径,有一种称为 的技术WayPoint,它只是使用 Unity 中的内置导航系统。有很多文章教你如何手动构建这样的航点系统,同时你可以从在线资产商店获得一个 SimpleWayPoint 模块。
但是如果你的播放器是由用户控制的,这意味着用户可以控制它的移动,比如说按下'W'按钮意味着向前移动,而按下'S'按钮意味着向后移动,并且左右移动受到你的路径的限制定义,不幸的是我没有找到任何成熟的技术可以让你意识到这个限制。
然而,在我几个月前完成的项目中,我成功地手动处理了坐标,因为我创建了一个街道严格遵守水平和垂直网格线的城市,我可以X and Y coordinates通过使用内置的冻结坐标轻松控制目标游戏对象的API或在 Update()方法中一遍又一遍地手动重置轴值。因此,也许您可​​以使用 Update() 方法通过使用表示路径的函数动态计算其坐标来约束目标的坐标,但我可以想象它会有多复杂。


推荐阅读