Objek Induk dan Anak
Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 24 dari 67.
Di Hierarchy, object yang diseret ke atas object lain menjadi child dan ditampilkan dengan indentasi di bawah parent-nya. Child bergerak, berputar, dan berubah skala bersama parent-nya: gerakkan parent, maka semua child ikut bergerak, tanpa perlu kode pada child.
Unity menyimpan posisi child relatif terhadap parent-nya. transform.localPosition adalah offset itu, diukur dari parent; transform.position adalah posisi di dunia. Rider ini adalah child dari Horse, dan skripnya menempatkannya 1 unit di atas bagian tengah kuda dan setengah unit ke belakang, di mana pun kuda berada:
void Start()
{
transform.localPosition = new Vector3(0, 1, -0.5f);
}Saat kuda berada di (4, 0.5, 2), position Rider bernilai (4, 1.5, 1.5), sementara localPosition-nya tetap (0, 1, -0.5). Saat kuda berjalan, position berubah dan localPosition tidak berubah. Offset diukur sepanjang sumbu milik parent, jadi saat parent berputar atau berubah skala, offset ikut berputar dan berubah skala. Untuk object tanpa parent, localPosition dan position sama.
Tantangan
SedangFlag adalah child dari Ship, dan ship tidak berada di pusat dunia. Start() milik Flag seharusnya menempatkannya di kaki tiang, 0.6 ke kanan dan 1 ke atas diukur dari ship, tetapi fungsi itu menuliskan angka-angka tersebut ke position, sehingga Flag berada jauh dari ship.
- Perbaiki
Start()agar Flag mulai di kaki tiang. - Saat tombol panah atas ditekan, naikkan Flag: Flag bergerak naik dengan kecepatan
climbunit per detik sampai ketinggiannya, diukur dari ship, mencapai 4, yaitu puncak tiang, lalu berhenti di sana.
Tekan Play, tahan tombol panah atas, lalu tekan Check.
Coba sendiri
using UnityEngine;
public class Hoist : MonoBehaviour
{
public float climb = 1f;
void Start()
{
// Kaki tiang: 0.6 ke kanan dan 1 ke atas, diukur dari Ship
transform.position = new Vector3(0.6f, 1, 0);
}
void Update()
{
// Selama tombol panah atas ditekan, naik hingga ketinggian dari Ship mencapai 4
}
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar Scripting Unity
1Skrip Pertamamu
Halo, UnityLetakkan KubusBergerak di Setiap FrameBerputar Setiap DetikKendalikan dengan TombolRingkasan: Kendarai Kubus4Vektor
Menjumlahkan VektorArahRuang Lokal dan DuniaKecepatan DiagonalJarak antara BendaVector3 adalah StructRingkasan: Pilot Drone7Proyek: Tangkap Bintang
Si PenangkapBintang Jatuh5Transformasi dan Hierarki
Objek Induk dan AnakSkalaMenghadap ke ObjekBergerak Menuju TitikRangkuman: Bulan yang Mengorbit6GameObject dan Komponen
Referensi di InspectorMendapatkan KomponenKomponen yang HilangMenambahkan KomponenRequireComponentTampilkan dan SembunyikanRangkuman: Sakelar Lampu