問題タブ [navmesh]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - navmesh グラフを経路探索アルゴリズム A* と共に使用する
三角形で構成される navmesh グラフを使用しています。スタート地点からゴール地点までの最短経路を見つけるために、A* アルゴリズムを考慮しました。スタートからゴールまでの道のりを大雑把に予備探索したいのですが、計算量が多くて面倒です。
目標 (g) とヒューリスティック (h) からフィットネス (f) を計算する際、ほとんどのチュートリアルでは、現在の位置と目標の間の距離の差によって「h」を計算し、「 f'. 開始点とゴール点が直径の反対側にある半円のようなパスの場合、最小の 'f' はゴールの方向になり、行き止まりになります。私が言っていることを理解していただければ幸いです。したがって、「f」の最小値が常に正しいとは限りません。したがって、おそらく、互いに接続された各三角形を計算し、それがゴールにつながるまでチェックする必要があります。
ヒューリスティックを計算するより良い方法はありますか? navmesh のより良い経路探索アルゴリズムはありますか?
unity3d - 一人称ナビゲーションに Unity 3D ナビメッシュを使用できますか?
ユーザーが一人称で内部環境を探索できるようにするアプリケーションをいくつか開発しました。壁やオブジェクトとのすべての衝突に対処しながらスムーズに歩くために、スクリプトは複雑になりました。
ナビメッシュは主に移動するエージェントのパスを計算するように設計されていることを知っていることを前提として、私は疑問に思っていました:ナビメッシュを利用して一人称でナビゲートする方法はありますか? それとも、CPU 時間の無駄でしょうか?
アドバイスありがとうございます。
unity3d - Unity 3d Nav Mesh ベイク
私の質問は NavigationMeshes に関するものです。グリッドベースの Map Generator を用意しました。壁と床に分割された立方体で構成されるマップを生成できます。
これを生成した後、プレハブとして保持できます。後でナビゲーション メニューでメッシュをベイクできますが、次に来るのは、既にベイク済みのナビメッシュでプレハブとして保存したいということです。それを行ってシーンからマップを削除すると、マップは消えますが、ベイクされたメッシュはまだそこにあります。別の場所でシーンにマップを再度配置するには、もう一度ベイクする必要があります。主なアイデアは、ベイクされたメッシュで「x」レベルを生成し、後で必要なレベルに応じてそれらをインスタンス化することでした。それは可能ですか?御時間ありがとうございます。
編集済み:いくつかの例の navmesh を焼き付けた後、私が取り組んでいるシーンと同じ名前のフォルダーが表示され、その中に navmesh ファイルがあります。ここに私の編集された質問があります。異なるマップごとにいくつかの異なるナビメッシュをベイクし、後でそのようなマップをロードした後にコードで適切なナビメッシュを使用して、それらがうまく連携することはできますか?
unity3d - 2 つの NavmeshAgent が互いに衝突しない
問題について:
2 つのスクリプト (および)、(isKinematic チェック済み、重力なし)、およびが添付されたPlayerがあります。PlayerController
Entity
RigidBody
NavMeshAgent
SphereCollider
次に、2 つのスクリプト ( EnemyAI
、Entity
)、RigidBody
(同じ) 、NavMeshAgent
およびSphereCollider
.
問題は、私がそれらを通り抜けることができ、それらがお互いにも通り抜けることができるということです。そして、これは私が絶対に取り除きたいものです。敵とプレイヤーの両方を移動するには、単純に agent.destination を使用します。また、それらを「敵」と「プレイヤー」という別のレイヤーに配置し、それらの間の衝突を検出するようにマークしました。残念ながら、それは役に立たなかったようです。
そして、ここに私の質問があります。それを解決する方法は?あなたの時間と提案をありがとう、うまくいけば、それらは私を解決に導くでしょう.
unity3d - Unity:RTSゲームでクリックして建物を攻撃するときに、複数のエージェントが建物を一周するようにする方法
建物の周りのいくつかのポイントを攻撃しようとしました。しかし、エージェントの半径が異なる可能性があるため、この方法は十分に柔軟ではありません。したがって、攻撃ポイントは同じであってはなりません。
良いアイデアはありますか?
algorithm - 2D メッシュを介してレイキャスティングを効率的に実装するにはどうすればよいですか?
私はナビゲーション メッシュ パスファインディング システムを実装しています。メッシュ内の 2 点間でレイキャストし、レイが交差するすべてのエッジのリストを取得できる必要があります。明らかに、個々の線の交差をテストできるようにする必要がありますが、メッシュ全体のすべてのエッジを力ずくで反復するのではなく、実際にチェックする必要がある線を選択する効率的な方法があると期待しています。どうすればそれを実現できるか知っている人はいますか?
c# - Unity3D NavMesh がぎくしゃくしたような動きをする
がアタッチされているゲームオブジェクトをインスタンス化NavMeshAgent
します。彼らの目的地は、マップ上でベイクされた NavMesh を持つマップ上を移動できるプレイヤーです。
私が抱えている問題は、これらの敵のゲームオブジェクトのいくつかがインスタンス化された後、プレーヤーが移動するときにパスを計算しているかのように、一瞬停止してぎくしゃくした動きをすることがあることです。
これに対抗する方法はありますか?それとも、マップ上にもっと単純な NavMesh を配置する必要がありますか?
Update() で敵の目的地を設定し、FixedUpdate() でも試しましたが、違いはありません。
c# - Unity3D NavMashAgent が動かない -C# コード
ここが質問するのに適切な場所かどうかわかりません。これはゲーム開発関連の質問だからです。この質問をここ (gamedev.stackexchange.com - https://gamedev.stackexchange.com/questions/109190/navmashagent-not-moving ) に投稿しましたが、まだ応答がありません。また、Unity フォーラム ( http://answers.unity3d.com/questions/1075904/navmashagent-not-moving-in-unity3d-5.html ) にも投稿してください。私を助けるためにここにいる人は誰でも。
ここにもう一度質問を投稿します
Cube を CheckPoints に移動しようとしています。FindClosestTarget() メソッドは、最も近いチェックポイントを提供します。Cube が CheckPoint にヒットすると、ChackPoint は Inactive として設定されます。衝突が発生すると、FindClosestTarget() を再度呼び出して、新しい最も近い CheckPoint を取得します。動かないキューブです。一番近いチェックポイントを見ても動かない。