Menu
CoddyTech

Yönler

Coddy'nin Unity Journey'sinin Unity'de Script Yazmanın Temelleri bölümünün bir parçası. Ders 25 / 85.

Unity, her biri bir birim uzunluğunda olan altı yön için isimler kullanır:

  • Vector3.right (1, 0, 0) ve Vector3.left (-1, 0, 0)
  • Vector3.up (0, 1, 0) ve Vector3.down (0, -1, 0)
  • Vector3.forward (0, 0, 1) ve Vector3.back (0, 0, -1)

Ayrıca Vector3.zero (0, 0, 0) ve Vector3.one (1, 1, 1) da vardır. Her yön bir birim uzunluğunda olduğundan, bir yön ile hızın çarpımı tam olarak o hızda bir hareket sağlar. Bu salyangoz, kameradan saniyede 0.5 birim hızla uzaklaşır:

public float speed = 0.5f;

void Update()
{
    transform.position += Vector3.forward * speed * Time.deltaTime;
}

Bu, new Vector3(0, 0, speed * Time.deltaTime) ile aynı hareketi sağlar; ancak yönü okumak daha kolaydır ve yanlış eksene koyma olasılığı daha düşüktür. Eksi işareti bir yönü tersine çevirir: -Vector3.forward, Vector3.back değeridir. Bu yönler nesneye değil, dünyaya aittir: salyangoz ters yöne dönmüş olsa bile Vector3.forward, dünyanın z eksenidir. Bir sonraki derste nesneler baktıkları yönde hareket ettirilecek.

challenge icon

Görev

Kolay

Vinç kancasını, Unity'nin adlandırılmış yönlerini kullanarak dört ok tuşuyla hareket ettir.

  1. Update() içinde, her ok tuşu için Input.GetKey kullanan bir if yaz.
  2. Her biri, yönünü speed * Time.deltaTime ile çarparak ekler: Vector3.right, Vector3.left, Vector3.up veya Vector3.down; örneğin transform.position += Vector3.up * speed * Time.deltaTime;.

“Oyna” düğmesine bas ve yönlendir: kanca kayar, yükselir ve alçalır. Ardından “Kontrol et”.

Kendin dene

using UnityEngine;

public class Hook : MonoBehaviour
{
    public float speed = 2f;

    void Update()
    {
        // Sağ/sol ok tuşları: x ekseni boyunca kaydırır. Yukarı/aşağı ok tuşları: yükseltir ve alçaltır.
    }
}

Unity'de Script Yazmanın Temelleri bölümündeki tüm dersler

Kendi başına pratik yap: Unity playground