Pemunculan Acak
Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 53 dari 67.
Random.Range(min, max) memilih angka acak, dan nilai yang dapat dikembalikannya bergantung pada tipe angka yang kamu berikan. Untuk float, nilai apa pun dari min hingga max dapat dihasilkan, termasuk kedua batasnya. Untuk int, max tidak disertakan. Jadi, untuk melempar dadu, gunakan rentang 1 hingga 7:
int roll = Random.Range(1, 7); // 1, 2, 3, 4, 5 atau 6
Debug.Log("You rolled " + roll);Versi int tidak menyertakan max agar Random.Range(0, names.Length) selalu menjadi indeks array yang valid. Ini juga berarti Random.Range(-5, 5) hanya menghasilkan bilangan bulat dari -5 hingga 4, bahkan saat kamu menyimpan hasilnya dalam float. Tulis Random.Range(-5f, 5f) untuk mendapatkan nilai apa pun di antaranya.
Untuk titik dan arah dalam 3D, Unity menyediakan dua vektor acak yang siap digunakan. Random.insideUnitSphere adalah titik acak di dalam bola berjari-jari 1 yang berpusat di (0, 0, 0). Random.onUnitSphere adalah titik acak pada permukaan bola itu, sehingga menghasilkan arah acak dengan panjang 1. transform.position + Random.insideUnitSphere * 2f menghasilkan titik yang berjarak hingga 2 unit ke arah mana pun, termasuk ke atas dan ke bawah.
Tantangan
SedangSetiap klik harus menjatuhkan peti dari titik acak di atas lantai:
- x dan z: masing-masing dapat memiliki nilai apa pun dari -4 hingga 4, tidak hanya bilangan bulat;
- y: 5, agar peti jatuh ke lantai;
- tanpa rotasi.
Tekan Play dan klik beberapa kali, lalu Periksa.
Coba sendiri
using UnityEngine;
public class CrateDropper : MonoBehaviour
{
public GameObject cratePrefab;
void Update()
{
if (Input.GetMouseButtonDown(0))
{
// Jatuhkan peti dari posisi acak: x dan z dari -4 hingga 4, y = 5
}
}
}
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 Lampu9Prefab dan Pemunculan
Prefab dan InstantiateMunculkan dengan TimerMunculkan dalam Kisilist objectHancurkanPemunculan AcakRingkasan: Kembang Api