Unity NavMesh

 

カメラワークついでにナビメッシュの勉強

 

ナビメッシュを使うと3Dフィールド内で

キャラクターが移動する際に指定した場所だけを通るようにしたり
キャラクターが歩けない場所を設定できる。

また指定の場所まで自動で移動してくれる。

 

参考サイト:

 

 

 

 

アリシアちゃんを選択してAddComponentから
Navigation>NavMeshAgent

 

window>Navigationでウィンドウを開く

デモシーンに設定されている地面(Terrains)を選択し
ナビゲーションウィンドウのBakeタブからBakeボタンを押す

※Bake(ベイク):焼く

 

↓ 移動可能な場所が水色で表示される。

 

スクリプトをアリシアちゃんにアタッチする。

ソースそのままお借りしました。

※なぜかサイトのソース入力プラグインが反応しなくなってる・・OTL


using UnityEngine;
using UnityEngine.AI;
using System.Collections;

public class navi : MonoBehaviour {
public Transform target;
NavMeshAgent agent;

void Start () {
agent = GetComponent<NavMeshAgent>();
}

void Update () {
agent.SetDestination(target.position);
}
}


自分の持ってる参考書ではマウスでクリックした場所に歩くようなスクリプト組んでた。

 

キューブを置いて

ターゲットに指定

 

あとは実行すると自動でターゲット(キューブ)に歩いてくれる。

※歩くアニメーションをつけてます。

 

 

関連記事




コメントを残す

※コメントは承認後に表示されます。
 コメントを公開されたくない場合、名前の後に「:非公開」とつけてください。