Cari Berdasarkan Nama
Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 56 dari 85.
GameObject.Find("Player") mencari objek aktif dengan nama yang persis sama di scene, lalu mengembalikannya, atau null jika tidak ada. Cara ini menghindari pengaturan field di Inspector, tetapi ada konsekuensinya: metode ini memeriksa setiap objek di scene. Jadi, panggil metode ini sekali saja, di Start(), lalu simpan hasilnya di sebuah field. Kamera keamanan ini mencari Player saat game dimulai dan mengawasinya pada setiap frame:
private Transform player;
void Start()
{
player = GameObject.Find("Player").transform;
}
void Update()
{
transform.LookAt(player);
}Namanya harus sama persis, termasuk huruf kapital dan spasi: "player" atau "Player " tidak akan menemukan apa pun. Find juga melewati objek yang tidak aktif (tersembunyi). Pencarian yang gagal mengembalikan null tanpa pesan, dan error muncul pada baris berikutnya yang menggunakan hasil tersebut: di sini, .transform memunculkan NullReferenceException. Jalur seperti "Car/Wheel" menemukan Wheel yang merupakan anak dari Car.
Tantangan
SedangRover melaporkan seberapa jauh jarak tujuannya.
- Di
Start(), tetapkangoal = GameObject.Find("Goal").transform;. - Di
Update(), saatInput.GetKeyDown(KeyCode.Space), catat"Distance to goal: " + Vector3.Distance(transform.position, goal.position).
Tekan tombol “Main” lalu tekan Space: Console menampilkan Distance to goal: 5. Lalu tekan tombol “Periksa”.
Coba sendiri
using UnityEngine;
public class Beacon : MonoBehaviour
{
private Transform goal;
void Start()
{
// Cari object bernama Goal dan simpan Transform-nya di goal.
}
void Update()
{
// Space: catat jarak ke goal.
}
}
Semua pelajaran di Dasar-Dasar Scripting Unity
1Dasar-Dasar C# di Unity
Halo, UnityVariabelDesimal Memerlukan fTeks di ConsoleVariabel yang Menyimpan NilaiIf dan ElseBandingkan AngkaUlasan: Pengumpul Koin7Perulangan dan method
Ulangi dengan forPerulangan di dalam perulanganTulis methodMethod yang Mengembalikan NilaiarrayUlasan: Tangga10Menemukan Benda
Cari Berdasarkan NamaTagCari Berdasarkan TipeReferensi Lebih Baik daripada FindNull di UnityRangkuman: Koin Terdekat13Proyek: Hindari Balok
Karakter PelariBalok dari Langit2Buat Bergerak
Tempatkan KubusBergerak Setiap FrameBerputar Setiap DetikKemudikan dengan TombolRangkuman: Kemudikan Kubus5Vektor
Menjumlahkan VektorArahRuang Lokal dan DuniaKecepatan DiagonalJarak AntarobjekVector3 adalah StructRangkuman: Pilot Drone8GameObjects dan Komponen
Referensi di InspectorAmbil KomponenKomponen yang HilangTambahkan KomponenRequireComponentTampilkan dan SembunyikanRingkasan: Sakelar Lampu6Transformasi dan Hierarki
Objek Induk dan AnakKibarkan BenderaSkalaMelihat BendaBergerak Menuju TitikRekap: Bulan yang MengorbitLatihan sendiri: Playground Unity