Menu
CoddyTech

Skala

Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 25 dari 67.

transform.localScale mengalikan ukuran object pada setiap sumbunya. Cube default memiliki panjang 1 unit di setiap sisinya, jadi cube dengan localScale (4, 1, 0.5) lebarnya 4 unit, tingginya 1 unit, dan kedalamannya setengah unit. Untuk ukuran yang sama pada semua sumbu, kalikan Vector3.one, yaitu (1, 1, 1). Gelembung sabun ini membesar 0.3 unit per detik hingga lebarnya mencapai 3 unit:

public float size = 1f;

void Update()
{
    size = Mathf.Min(size + 0.3f * Time.deltaTime, 3f);
    transform.localScale = Vector3.one * size;
}

Mathf.Min(a, b) mengembalikan angka yang lebih kecil dari keduanya, jadi size membesar hingga mencapai 3, lalu tetap di angka 3.

Skala bekerja dari pivot object, yang untuk bentuk bawaan Unity berada di tengah. Cube berukuran 1 unit yang berada di atas tanah memiliki pusat pada y = 0.5. Jika skalanya diubah menjadi setinggi 3 unit, cube menjulur 1.5 unit ke atas dan 1.5 unit ke bawah dari titik itu, sehingga separuh bagiannya tenggelam ke tanah. Agar berdiri di atas tanah, pusatnya harus berada pada setengah tingginya: y = 1.5.

Ukuran child dikalikan dengan ukuran parent-nya: child dengan localScale (1, 1, 1) di bawah parent yang skalanya 2 akan digambar dua kali lebih besar. transform.lossyScale membaca ukuran akhirnya di dunia, dan nilainya hanya dapat dibaca. localScale adalah properti yang kamu atur.

challenge icon

Tantangan

Sedang

Es batu sedang mencair. Sejak awal permainan, ukurannya menyusut pada setiap sumbu sebesar melt (0.2) per detik, dari ukuran 1 hingga 0.4, lalu tetap pada ukuran tersebut.

Jika menyusut dari bagian tengahnya, es batu akan melayang, jadi jaga agar bagian bawahnya tetap menyentuh tanah (pada y = 0) sepanjang waktu. Posisi x dan z-nya tidak berubah.

Tekan Play untuk melihatnya mencair, lalu tekan Check.

Coba sendiri

using UnityEngine;

public class Melt : MonoBehaviour
{
    public float melt = 0.2f;

    void Update()
    {
        // Perkecil sebesar melt setiap detik hingga 0.4, dengan bagian bawah tetap menyentuh tanah
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar Scripting Unity