Munculkan dalam Grid
Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 64 dari 85.
Perulangan di dalam perulangan mengunjungi setiap sel pada kisi: perulangan luar memilih kolom, perulangan dalam bergerak menyusurinya. Letakkan Instantiate di dalamnya dan setiap sel akan mendapat sebuah objek. Ini membangun lantai 3 kali 3 dari ubin yang lebarnya 2 unit, jadi jarak antarubin adalah 2 unit:
public GameObject tilePrefab;
void Start()
{
for (int x = 0; x < 3; x++)
{
for (int z = 0; z < 3; z++)
{
Vector3 spot = new Vector3(x * 2, 0, z * 2);
Instantiate(tilePrefab, spot, Quaternion.identity, transform);
}
}
}Ubin-ubin berada di x = 0, 2, 4 dan z = 0, 2, 4: jumlahnya sembilan, dari (0, 0, 0) hingga (4, 0, 4). Perulangan berjalan di Start(), satu kali. Di Update(), perulangan akan menambahkan sembilan ubin lagi pada setiap frame.
Argumen keempat adalah parent. Sembilan objek Tile(Clone) yang tidak memiliki parent akan memenuhi Hierarchy; meneruskan transform akan menempatkannya di bawah objek tempat skrip ini berada, yaitu Floor, sehingga objek-objek itu bisa dilipat, dipindahkan bersama, atau dihapus bersama. Posisi yang kamu teruskan tetap merupakan posisi dunia.
Tantangan
SedangBuat dinding dari prefab Brick dengan lebar 4 dan tinggi 5.
- Di
Start(), lakukan perulangancdari 0 hingga 3, lalu di dalamnya,rdari 0 hingga 4. - Di perulangan bagian dalam, panggil
Instantiate(brickPrefab, new Vector3(-1.5f + c, 0.25f + r * 0.5f, 0), Quaternion.identity, transform). Argumen terakhir membuat setiap batu bata menjadi anak dari Wall.
Tekan tombol “Main”: dinding yang terdiri dari 20 batu bata berdiri di atas tanah. Lalu tekan tombol “Periksa”.
Coba sendiri
using UnityEngine;
public class WallBuilder : MonoBehaviour
{
public GameObject brickPrefab;
void Start()
{
// 4 kolom dan 5 baris bata, masing-masing merupakan child dari Wall ini
}
}
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 Lampu11Prefab dan Pemunculan
Prefab dan InstantiateMunculkan dengan TimerMunculkan dalam GridDaftar ObjekAmbil Kembali Objek TerbaruHancurkanPemunculan AcakUlasan: Kembang Api6Transformasi dan Hierarki
Objek Induk dan AnakKibarkan BenderaSkalaMelihat BendaBergerak Menuju TitikRekap: Bulan yang MengorbitLatihan sendiri: Playground Unity