Yön Ver
Coddy'nin Unity'de 3D Yılan Oyunu kursunda ders 2 / 14.
Yılan, ok tuşlarıyla veya WASD ile döner. Kamera tahtaya ön kenardan bakar; bu nedenle ekranın yukarısı +z yönündedir, yani Vector3.forward, aşağısı ise Vector3.back yönündedir. Vector3.up gökyüzünü gösterir: onunla hareket ettirilen bir kafa tahtadan yükselir.
Her basışta bir dönüş gerçekleşir; bu nedenle tuşları Input System'den wasPressedThisFrame ile oku. Basış yalnızca direction değerini değiştirir. Yılanın ritmini koruması için Step() başı bir sonraki tikte hareket ettirir. D'ye basıldığında ekranın sağına doğru ilerleyen bir gezgin:
Keyboard keyboard = Keyboard.current;
if (keyboard != null && keyboard.dKey.wasPressedThisFrame)
{
heading = Vector3.right;
}Input System'de klavye için eksenler yoktur: ok tuşu ile harf tuşu, || ile birleştirilmiş iki ayrı tuştur. Klavye olmayan bir aygıtta Keyboard.current null olur; bu yüzden değeri başta bir kez oku ve kontrol et.
Görev
KolaySnake'eusing UnityEngine.InputSystem;ekle.Update()'in başındaKeyboard.current'ı oku. Yukarı ok veya W tuşuna basıldığındadirection,Vector3.forwardolarak ayarlanır; aşağı ok veya S tuşundaVector3.back; sol ok veya A tuşundaVector3.left; sağ ok veya D tuşundaVector3.rightolarak ayarlanır.Step()'i olduğu gibi bırak: baş bir sonraki oyun adımında döner.
Oyna'ya bas, oyuna tıkla ve yön ver; ardından Kontrol Et'e bas.
Kendin dene
using UnityEngine;
public class Snake : MonoBehaviour
{
public float tick = 0.15f; // iki adım arasındaki saniye cinsinden süre
private float timer;
private Vector3 direction = Vector3.right;
void Update()
{
timer += Time.deltaTime;
if (timer >= tick)
{
timer -= tick;
Step();
}
}
void Step()
{
transform.position += direction;
}
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.