Melihat Benda
Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 34 dari 85.
transform.LookAt(point) memutar objek sehingga sumbu depannya, panah z berwarna biru, mengarah ke suatu posisi di dunia. Fungsi ini memutar objek dan tidak memindahkannya. Lampu sorot ini berada di atas menara pada (0, 6, 0) dan diarahkan ke gerbang pada (4, 0, 10):
void Start()
{
transform.LookAt(new Vector3(4, 0, 10));
}Gerbang berada lebih rendah daripada lampu, jadi lampu sorot juga menunduk saat berputar: LookAt mengarahkan objek tepat ke titik tersebut, termasuk ke arah atas atau bawah. Setelah itu, transform.forward mengarah dari lampu ke gerbang.
Jika dipanggil di Start(), LookAt mengarahkan objek satu kali. Jika dipanggil di Update(), fungsi ini mengarahkan objek lagi pada setiap frame, sehingga objek terus menghadap ke titik tersebut saat objek atau titik itu bergerak. Argumennya selalu berupa posisi: LookAt(Vector3.forward) mengarahkan objek ke titik dunia (0, 0, 1), sebuah titik di dekat pusat dunia, di mana pun objek berada.
Tantangan
SedangBuat rover menghadap ke arah geraknya.
- Di bawah komentar dalam
Update(), tulisif (move != Vector3.zero), agar rover yang diam tetap menghadap ke arah yang sama. - Di dalamnya, panggil
transform.LookAt(transform.position + move);.
Tekan tombol “Main” lalu kemudikan rover: bagian depannya berputar menghadap ke arah geraknya. Lalu tekan tombol “Periksa”.
Coba sendiri
using UnityEngine;
public class Rover : MonoBehaviour
{
public float speed = 3f;
void Update()
{
Vector3 move = Vector3.zero;
if (Input.GetKey(KeyCode.RightArrow)) move += Vector3.right;
if (Input.GetKey(KeyCode.LeftArrow)) move += Vector3.left;
if (Input.GetKey(KeyCode.UpArrow)) move += Vector3.forward;
if (Input.GetKey(KeyCode.DownArrow)) move += Vector3.back;
move = move.normalized;
transform.position += move * speed * Time.deltaTime;
// Putar rover agar menghadap ke arah geraknya
}
}
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