unity 2D游戏使用navmashagent遇到的问题

问题描述:

在2D游戏中使用navmashagent来导航的时候,navmashagent会出现x,y轴旋转,且在代码aweak.start中重置依然用的问题。

解决方法

···

agent.updateRotation = false;

agent.updateUpAxis = false;

···

解释以下这两个参数
updateRotation

updateRotation属性决定了是否自动调整NavMeshAgent关联的GameObject的朝向以匹配其移动方向。

当updateRotation设置为true(默认值)时,NavMeshAgent会自动根据其移动方向调整GameObject的旋转。这适用于大多数需要角色或对象面向移动方向的情况。

当updateRotation设置为false时,NavMeshAgent不会自动调整GameObject的旋转。这在你希望自己控制GameObject的旋转行为,或者在2D游戏中使用NavMeshAgent(在这种情况下,通常只需要在一个平面上移动,而不需要自动旋转)时非常有用。
updateUpAxis

updateUpAxis属性控制是否自动调整NavMeshAgent关联的GameObject的"向上"轴,以便它始终保持垂直于导航面。

当updateUpAxis设置为true(默认值)时,如果导航面(例如斜坡或不规则表面)倾斜,NavMeshAgent会自动调整GameObject的"向上"轴,使其垂直于导航面。

当updateUpAxis设置为false时,NavMeshAgent不会自动调整GameObject的"向上"轴。这在创建2D游戏或某些特定的3D游戏场景时很有用,因为在这些情况下你可能不希望GameObject根据导航面的倾斜自动调整其倾斜度。

相关推荐
一起养小猫37 分钟前
Flutter for OpenHarmony 实战:2048游戏完整开发指南
flutter·游戏·harmonyos
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于python的游戏管理平台的开发为例,包含答辩的问题和答案
游戏
June bug1 小时前
【领域知识】休闲游戏一次发版全流程:Google Play + Apple App Store
unity
星夜泊客4 小时前
C# 基础:为什么类可以在静态方法中创建自己的实例?
开发语言·经验分享·笔记·unity·c#·游戏引擎
dzj20215 小时前
PointerEnter、PointerExit、PointerDown、PointerUp——鼠标点击物体,则开始旋转,鼠标离开或者松开物体,则停止旋转
unity·pointerdown·pointerup
qwerasda1238525 小时前
游戏场景中的敌方目标检测与定位实战使用mask-rcnn_regnetx模型实现
人工智能·目标检测·游戏
一起养小猫5 小时前
Flutter for OpenHarmony 实战:推箱子游戏完整开发指南
flutter·游戏·harmonyos
子春一5 小时前
Flutter for OpenHarmony:构建一个 Flutter 数字华容道(15-Puzzle),深入解析可解性保障、滑动逻辑与状态同步
flutter·游戏
心前阳光6 小时前
Unity 模拟父子关系
android·unity·游戏引擎
●VON6 小时前
React Native for OpenHarmony:贪吃蛇游戏的开发与跨平台适配实践
学习·react native·react.js·游戏·openharmony