Unity3d 限制球员移动的坡度
我使用Unity3D,我有一个带刚体的播放器。我在身体上增加力量来移动球员。我的玩家可以在地形上行走,但可以爬上陡峭的山峰。我想限制球员,使其不能在陡峭的斜坡上行走 我知道有一个CharacterController组件具有此功能,但我必须使用刚体,所以我希望在我的刚体上使用相同的功能 我可以得到我所站的三角形的法线,并计算它的角度,但我似乎不能让玩家停止向上移动。仅使玩家停止移动(这会使玩家在碰到有角度的斜坡时无法移动)Unity3d 限制球员移动的坡度,unity3d,rigid-bodies,Unity3d,Rigid Bodies,我使用Unity3D,我有一个带刚体的播放器。我在身体上增加力量来移动球员。我的玩家可以在地形上行走,但可以爬上陡峭的山峰。我想限制球员,使其不能在陡峭的斜坡上行走 我知道有一个CharacterController组件具有此功能,但我必须使用刚体,所以我希望在我的刚体上使用相同的功能 我可以得到我所站的三角形的法线,并计算它的角度,但我似乎不能让玩家停止向上移动。仅使玩家停止移动(这会使玩家在碰到有角度的斜坡时无法移动) 有什么办法解决这个问题吗?如果没有关于如何使用物理引擎的更多细节,很难回
有什么办法解决这个问题吗?如果没有关于如何使用物理引擎的更多细节,很难回答。你是如何使用摩擦力的?你用什么角度施力?它总是水平的还是与地板成一定角度的?运动员有弥撒吗 无论如何,我可以想出一些方法来解决这个问题
希望这能给你一些思考的东西。一个简单而天真的方法是存储你的最后位置。当玩家进入坡度大于阈值的三角形时,禁用玩家控制并返回到最后位置,然后重新启用控制。这是一个快节奏的游戏,所以我并不想禁用玩家控制,即使只是几毫秒。然后你不能走下斜坡,因为你会被送回山顶。谢谢,这肯定会让我思考一些事情。已经有一些代码在工作,但仍然相当紧张。但我被调到了另一个任务,所以这个任务暂时搁置。谢谢你的见解!