OS Windows10
Unityバージョン 2022.3.46f1
Arborバージョン3.10.3
再現方法 AgentMoveOnWaypointを使用して4か所のWaypointを巡回するように設定し、NavMeshSurfaceのBuildHeightMeshにチェックを入れてNavmeshをベイクした場合Waypointを巡回しなくなる。チェックを外してベイクすれば巡回する。
何かに引っかかったような動きで最初のWaypointへ向かおうとし続けるけどずっと進まないような挙動になるので、多分巡回するオブジェクトの高さがBuildHeightMeshにチェックを入れた事によって変わってしまうのが良くないのかなぁとか思っているのですがこれがバグなのかも不明です。どうすれば解決するでしょうか…
NavMeshSurfaceのBuildHeightMeshを使用した場合Waypointを巡回しない
Forum rules
The items necessary for reporting are as follows.
Note:
報告に必要な項目は以下の通りです。
注意点:
The items necessary for reporting are as follows.
- OS(Required)
- Unity version(Required)
- Arbor version(Required)
- How to reproduce(Required)
The reproduction method should be described accurately so that anyone can read the same procedure.
If you do not know the exact reproduction procedure, as long as you can remember it, so please tell us what you were doing immediately before and the last time you edited it. - Build platform
- Reproduction project (Minimum configuration not including Arbor and other assets) or video
Note:
- Please read the "Update Guide" carefully when updating Arbor.
- The bugs that we already know are summarized in "Known Issues", so please check once.
- Please check ReleaseNote and use the latest version if possible before reporting a bug.
- Unity beta and alpha versions are not supported. Please use the official release version.
- In principle, defects caused by the introduction of other assets are not supported. If you find a defect, please report it after isolating which asset is the problem.
報告に必要な項目は以下の通りです。
- OS(必須)
- Unityバージョン(必須)
- Arborバージョン(必須)
- 再現方法(必須)
再現方法については、誰が読んでも同様の手順を行えるよう正確に記述するようにお願いいたします。
もし正確な再現手順が不明な場合、覚えている限りで構いませんので直前に行っていたことや最後に編集した時のことを教えてください。 - ビルドプラットフォーム
- 再現プロジェクト(Arborや他アセットなどを含まない最小構成)もしくは動画
注意点:
- Arborを更新する際は「アップデートガイド」をよく読み行ってください。
- 既に把握している不具合は「既知の問題」にまとめてありますので一度確認してみてください。
- 不具合報告をする前にReleaseNoteを確認し、なるべく最新バージョンを使用して下さい。
- Unityのベータ版およびアルファ版はサポート対象外です。正式リリース版をご利用ください。
- 他アセット導入による不具合は原則サポート対象外です。不具合を見つけた場合はどのアセットの問題であるか切り分けた上でのご報告をお願いいたします。
Re: NavMeshSurfaceのBuildHeightMeshを使用した場合Waypointを巡回しない
すみませんAgentMoveOnWaypointの停止距離を0から0.1に変更したら解決しました。お騒がせして申し訳ないです。
- caitsithware
- 管理人
- Posts: 495
- Joined: 2015/08/17 12:41
Re: NavMeshSurfaceのBuildHeightMeshを使用した場合Waypointを巡回しない
解決したようで良かったです。
一応解説しておくと、Agent関連のStopping Distanceは移動先の位置と現在位置との間の距離がこの数値以下であれば移動先にたどり着いたと判定するプロパティになっています。
数値を0にした場合は、数ミリのズレも許容されずに判定することになるため移動先に到達したとなかなか判定できず、移動しようとするもののいつまでたっても完了しなくなります。
AgentMoveOnWaypointの仕様としては開始直後は最初のWaypointへ向かう仕様ですので、エージェントの出現場所が完全一致していないことで移動完了にならず次の地点に向かえなくなり、最初の位置から動かない状況になっていたと思われます。
この辺りの動作や数ミリのズレも許容せずにぴったり止まる方法などについてはNavMeshAgentの仕様によりますので、詳細はNavMeshAgent関連のUnityマニュアルなどを参照してください。
一応解説しておくと、Agent関連のStopping Distanceは移動先の位置と現在位置との間の距離がこの数値以下であれば移動先にたどり着いたと判定するプロパティになっています。
数値を0にした場合は、数ミリのズレも許容されずに判定することになるため移動先に到達したとなかなか判定できず、移動しようとするもののいつまでたっても完了しなくなります。
AgentMoveOnWaypointの仕様としては開始直後は最初のWaypointへ向かう仕様ですので、エージェントの出現場所が完全一致していないことで移動完了にならず次の地点に向かえなくなり、最初の位置から動かない状況になっていたと思われます。
この辺りの動作や数ミリのズレも許容せずにぴったり止まる方法などについてはNavMeshAgentの仕様によりますので、詳細はNavMeshAgent関連のUnityマニュアルなどを参照してください。