【UnityC#講座】近づいたら追いかけてくる巡回ユニティちゃん【NavMeshAgent】Unity2018.1.5f1Windows10□NavMeshAgentでキャラクターを決まったところを巡回させる方法は公式サイトにあります。エージェントに設定した地点を巡回させる今回はその方法を改造してプレイヤーが決まった距離まで近づいたら追ってきて、別の決まった距離だけ離れたらまた巡回に戻るようにしてみました。■NavMeshAgentの下準備ベイクするNavMeshAgentで動かすキャラクターが移動できる範囲を設定することをベイクすると言います。Staticを選択します。次はNavigationウィンドウを出します。NavigationそうしたらNavigationウィンドウのBakeタブの底のBakeボタンをクリックします。すると床のオブジェクト青いに移動できる範囲が示されます。それをNavMeshと言うそうです。巡回する地点を作る次に巡回する時の目標になる地点を作ります。どんなオブジェクトでも良いのですが今回はSphereを4つ設置することにしました。そうそう、巡回&追跡させたいオブジェクトをNavMesh内に設置してください。私はユニティちゃんにしました。■巡回&追跡のスクリプトを設定するスクリプトを書く以下のスクリプトを巡回&追跡させたいオブジェクトにアタッチしてください。スポンサーリンク巡回する地点を登録する次はそのスクリプトをアタッチしたオブジェクトのInspectorに巡回地点のオブジェクトを登録します。Pointsの文字の左の三角をクリックし、出てきたSizeの欄に登録するオブジェクトの数を入れ、その数だけできた空欄に巡回する順にオブジェクトを入れて出来上がりです。赤いワイヤーフレームの中に入ると追跡モードになり、青いワイヤーフレームから出るとまた巡回に戻ります。このようにできたでしょうか?プレイヤーの操作方法の設定はこちらです。【UnityC#講座】ユニティちゃんをマウスカーソルの方向に移動させるワイヤーフレームの赤と青の円は追跡開始する範囲と追跡を止める範囲を示しています。Gameウィンドウで出すにはその右上のGizmosをクリック、そして巡回&追跡するオブジェクトをHierarchyで選択してください。