首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与地形相切的NavAgent

与地形相切的NavAgent
EN

Stack Overflow用户
提问于 2017-12-21 17:54:01
回答 1查看 542关注 0票数 0

我在地板上有一个NavMesh (有一些山丘和东西),我的“士兵站”(我正在复制一个桌面战争游戏)有NavMeshAgent。一切都很顺利,但问题是,当智能体上山时,它保持垂直,我猜这对一个人来说是可以的,但对于坦克来说就没有意义了。一半的感谢漂浮在空中,另一半在山里。

这是一个示例:

有没有办法确保gameObject与NavMesh相切?垂直轴应该沿着NavMesh在代理中心点或其他地方的法线。老实说,我猜我不是第一个注意到这一点的人,但我无法找到解决方案

EN

回答 1

Stack Overflow用户

发布于 2017-12-21 18:51:57

这看起来像是一种破解的方式,但你可以从你的机器人将光线投射到导航网格上,然后你可以使用光线命中的法线来旋转你的坦克/机器人。

光线投射到导航网格:https://answers.unity.com/questions/325929/raycasting-on-navmesh.html

然后使用此命令根据命中曲面的法线方向旋转机器人:

代码语言:javascript
复制
tranform.rotation = Quaternion.FromToRotation(Vector3.up, rayhit.normal);

这是一个很好的基础;此外,你可以开始添加更多的光线投射,以获得更多的相加/精确的旋转。例如,如果你的机器人上有4个轮胎,每条射线都会从这些点发射。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47922249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档