Input System paketi
- Oyun Geliştirme kursu
- İleri seviye
- Ders 55/71
- 4 dk
Yeni Input System paketini projeye eklemeyi öğrenirsin.
Yeni Input System neden var?
Eski Input sınıfı küçük oyunlar için yeterlidir; gamepad ve dokunmatik gibi çoklu cihazlar isteyen oyunlarda yetersiz kalır. Yeni Input System paketi giriş olaylarını cihazdan bağımsız tanımlamanı sağlar ve Window > Package Manager > Unity Registry altından kurulur.
using UnityEngine.InputSystem;
if (Keyboard.current.spaceKey.isPressed)
{
Debug.Log("Bosluk basildi");
}Kurulumdan sonra Keyboard, Gamepad ve Mouse sınıflarıyla cihazlara doğrudan ulaşırsın.
Kurulumdan sonra etkinleştirme
Paket kurulunca Unity etkin giriş yöntemini değiştirmeyi teklif eder ve editörü yeniden başlatır. Aynı seçim Edit > Project Settings > Player > Active Input Handling altında da yapılır. Burada Input Manager (Old), Input System Package (New) ve Both seçenekleri vardır; Both iki sistemin aynı anda çalışması demektir.
using UnityEngine.InputSystem;
if (Gamepad.current != null)
{
Debug.Log("Gamepad bagli");
}Uygulama Aktif giriş ayarını hesapla
GirdiAyari adında bir MonoBehaviour yaz. eskiKullan ve yeniKullan adında iki bool alan ekle ve ikisini de true yap. Start içinde üç durumu ele al: ikisi de true ise Both, yalnızca yeniKullan true ise Input System Package (New), diğer durumda Input Manager (Old) değerini ayar değişkenine ata. Son olarak Debug.Log(ayar) çağır.
Başlangıç kodu
using UnityEngine;
public class GirdiAyari : MonoBehaviour
{
bool eskiKullan = true;
bool yeniKullan = true;
void Start()
{
string ayar = "";
// eskiKullan ve yeniKullan degerlerine gore uc durumu ele al
// iki deger de true ise birlesik secenegi ata
// yalnizca yeniKullan true ise yeni paket secenegi ata
// diger durumda eski yonetici secenegi ata
Debug.Log(ayar);
}
}Örnek çözüm
using UnityEngine;
public class GirdiAyari : MonoBehaviour
{
bool eskiKullan = true;
bool yeniKullan = true;
void Start()
{
string ayar;
if (eskiKullan && yeniKullan)
{
ayar = "Both";
}
else if (yeniKullan)
{
ayar = "Input System Package (New)";
}
else
{
ayar = "Input Manager (Old)";
}
Debug.Log(ayar);
}
}Beklenen çıktı
Both
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Yeni Input System paketi nereden kurulur?
- Package Manager'dan, Unity Registry listesinden kurulur Doğru cevap
- Player Settings > Quality altından açılır
- Asset Store üzerinden indirilir
- Build Settings penceresinden eklenir
Açıklama: Input System resmî bir Unity paketidir; Window > Package Manager > Unity Registry altından Input System seçilir ve Install düğmesine basılır.
2 Etkin giriş ayarını tamamla
string ayar = "____";
string ayar = "Both";
Açıklama: Eski ve yeni giriş birlikte çalışacaksa Active Input Handling değeri Both olur; tek sistemli değerler bu durumu karşılamaz.
3 Kurulum terimleri
| Kavram | Anlamı |
|---|---|
Unity Registry |
Paketlerin resmi listesi |
Install |
Secilen paketi projeye ekleme |
Active Input Handling |
Calisacak giris sistemini secme |
Both |
Eski ve yeni girisin birlikte calismasi |