Menu
CoddyTech

Çapraz Hız

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

Sağ ve yukarı ok tuşlarına birlikte basılı tutarsan ham eksenler yönü (1, 0, 1) olarak verir. Uzunluğu, .magnitude, 1 + 1’in kareköküdür, yaklaşık 1.41. Bu vektörle hareket eden bir yürüyen, çapraz yönde 1 birim düz ilerlediği sürede 1.41 birim yol alır: %41 daha hızlı.

.normalized, aynı yönü gösteren ve tam olarak 1 birim uzunluğunda olan vektörün bir kopyasını verir: (1, 0, 1), yaklaşık (0.71, 0, 0.71) olur ve (0, 0, 5), (0, 0, 1) olur. Bir hızla çarpıldığında, yön ne olursa olsun o hızda hareket eder. Bu arı, çiçeğe uzak ya da yakın olmasına bakmaksızın saniyede 2 birim hızla çiçeğe doğru uçar; .normalized olmadan çiçek ne kadar uzaktaysa o kadar hızlı uçardı:

public Vector3 flower = new Vector3(4, 1, 3);
public float speed = 2f;

void Update()
{
    Vector3 toFlower = flower - transform.position;
    transform.position += toFlower.normalized * speed * Time.deltaTime;
}

Vector3.zero.normalized, sıfırın bir yönü olmadığı için (0, 0, 0) olarak kalır. v.normalized, v’yi olduğu gibi bırakır; v.Normalize() ise v’nin kendisini değiştirir.

challenge icon

Görev

Kolay

Yürüyenin hareketini yaz. Ham eksenlerle ok tuşları (veya WASD) okunarak onu x ekseninde sola ve sağa, z ekseninde yukarı ve aşağı hareket ettirir. Çapraz yönler de dahil olmak üzere her yönde saniyede speed birim hızla hareket eder, anında hareket etmeye başlar ve durur, hiçbir tuşa basılı değilken olduğu yerde kalır.

Play düğmesine bas, düz ve çapraz yürü, ardından Check düğmesine bas.

Kendin dene

using UnityEngine;

public class Walker : MonoBehaviour
{
    public float speed = 4f;

    void Update()
    {
        // Yön tuşları veya WASD: x ve z eksenlerinde speed hızında hareket et; çapraz hareketlerde de aynı hızı koru.
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

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