Pengaturan NavMesh Bake Lanjutan
Membuat Obstacle NavMesh

Membuat Agen NavMesh

Setelah Anda memiliki NavMeshSebuah mesh yang Unity menghasilkan perkiraan daerah dan hambatan yang dapat berjalan di lingkungan Anda untuk mencari jalan dan navigasi yang dikendalikan AI. More info
Lihat di Glossary
yang dipanggang untuk tingkat Anda saatnya membuat karakter yang dapat menavigasi sceneAdegan berisi lingkungan dan menu permainan Anda. Pikirkan setiap file Adegan unik sebagai tingkat yang unik. Di setiap Adegan, Anda menempatkan lingkungan, hambatan, dan dekorasi, pada dasarnya merancang dan membangun permainan Anda dalam potongan-potongan. More info
Lihat di Glossary
. Kami akan membangun agen prototipe kami dari silinder dan mengaturnya dalam gerakan. Ini dilakukan menggunakan komponen NavMesh Agent dan skrip sederhana.

Pertama mari kita buat karakter:

  1. Buat cylinder: GameObject > 3D Object > Cylinder.
  2. Dimensi silinder default (tinggi 2 dan radius 0,5) baik untuk agen berbentuk humanoid, jadi kami akan meninggalkan mereka karena mereka.
  3. Tambahkan komponen NavMesh Agent: Component > Navigation > NavMesh Agent.

Sekarang Anda memiliki Agen NavMesh sederhana yang siap menerima perintah!

Ketika Anda mulai bereksperimen dengan agen NavMesh, Anda kemungkinan besar akan menyesuaikan dimensinya untuk ukuran karakter dan kecepatan Anda.

Komponen NavMesh Agent menangani jalur dan kontrol pergerakan karakter. Pada scriptsSepotong kode yang memungkinkan Anda untuk membuat Komponen Anda sendiri, memicu peristiwa permainan, memodifikasi sifat komponen dari waktu ke waktu dan menanggapi input pengguna dengan cara apa pun yang Anda sukai. More info
Lihat di Glossary
, navigasi dapat sesederhana mengatur titik tujuan yang diinginkan - Agen NavMesh dapat menangani segalanya dari sana.

    // MoveTo.cs
    using UnityEngine;
    using UnityEngine.AI;
    
    public class MoveTo : MonoBehaviour {
       
       public Transform goal;
       
       void Start () {
          NavMeshAgent agent = GetComponent<NavMeshAgent>();
          agent.destination = goal.position; 
       }
    }

Selanjutnya kita perlu membangun skrip sederhana yang memungkinkan Anda untuk mengirim karakter Anda ke tujuan yang ditentukan oleh Objek Game lain, dan Sphere yang akan menjadi tujuan untuk bergerak ke:

  1. Buat C# script baru (MoveTo.cs) dan ganti kontennya dengan skrip di atas.
  2. Menetapkan skrip Pindah ke karakter yang Anda buat.
  3. Buat sphere, ini akan menjadi tujuan agen akan bergerak.
  4. Pindahkan bidang dari karakter ke lokasi yang dekat dengan permukaan NavMesh.
  5. Pilih karakter, cari skrip MoveTo, dan menetapkan Sphere ke properti Goal.
  6. Press Play; Anda harus melihat agen menavigasi ke lokasi lingkup.

Untuk memanggilnya, di skrip Anda, Anda perlu mendapatkan referensi ke komponen NavMesh Agent dan kemudian untuk mengatur agen dalam gerakan, Anda hanya perlu menetapkan posisi ke properti destination. Cara Navigasi akan memberi Anda contoh lebih lanjut tentang cara memecahkan skenario gameplay umum dengan Agen NavMesh.

Baca Lebih Lanjut

Pengaturan NavMesh Bake Lanjutan
Membuat Obstacle NavMesh