Unity'de oyun nesnelerinin kontrol ayarlarını yapmak isteyenler için kullanışlı ipuçları içeren bir yazı Kontrol ayarlarınızı nasıl yapılandıracağınızı öğrenmek için hemen okuyun!

Unity, geliştirilmekte olan oyunların grafiksel arayüzleri oluşturmak, oyun mantığını oluşturmak, nesnelerin hareketlerini kontrol etmek ve oyunların diğer önemli özellikleri için kullanılan bir oyun motorudur. Unity ile bir oyunun başarıya ulaşması için doğru ve iyi çalışan kontrol ayarlarına ihtiyaç vardır.
Bu nedenle, Unity oyun motorunda oyun nesneleri için kontrol ayarlarının nasıl yapılabileceği hakkında bu makalede ayrıntılı bilgi verilecektir. Kontrol ayarları, oyun nesnelerinin hareketlerini, saldırılarını ve diğer özelliklerini kontrol etmek için kullanılabilecek özellikleri içerir.
Kontrol ayarlarının yapılması, Input Manager kullanılarak tuş atama veya kod ile tuş atama yöntemleri kullanılarak gerçekleştirilebilir. Axis ve Button ayarları veya joystick ve gamepad kullanarak kontrol ayarları gibi ekstra özellikler de kontrol ayarlarına eklenerek oyun nesneleri için daha iyi kontrol ayarları sağlanabilir.
Bu makalede kontrol ayarları yapmanın adımları ve örnekleri ayrıntılı bir şekilde ele alınacaktır. Kontrol ayarlarını kaydetme ve yükleme, kontrol ayarlarındaki değişiklikleri yapma gibi konularda da bilgi verilecektir. Bunlar Unity'de kontrol ayarları hakkında nasıl başarılı işlemler yapabileceğiniz hakkında yeterli bilgiyi edinmenize yardımcı olacaktır.
Kontrol Ayarları
Unity, oyun nesnelerini kontrol etmek için birçok özellik sunar. Bu özellikler, oyun nesnelerine ait kontrollerin hareketlerini ve davranışlarını belirlemeye yardımcı olur. Kontrol ayarları, oyun geliştiricilerinin oyun nesnelerinin yönetimlerini kolaylaştırır. Unity'de kontrol ayarları, Input Manager veya kod kullanılarak yapılabilmektedir.
Input Manager'ı kullanarak kontrol ayarları yapmak oldukça basittir. Oyun nesnesindeki komutların ataması yapılabilen Input Manager, oyun geliştiricilerinin isteklerine göre özelleştirilebilir. Ayrıca, Unity'nin içerisinde özellikle joystick veya gamepad kullanarak kontrol ayarları yapmak da mümkündür.
Bu özellikler sayesinde oyun nesnelerinin hareketleri ve kontrolleri daha akıcı ve başarılı bir şekilde gerçekleştirilebilir. Ayrıca, kontrol ayarlarının kaydedilmesi ve kullanılabilir hale getirilmesi de oldukça kolaydır. İlk yapılması gereken kontrol ayarlarının kaydedilmesi ve yükleme işlemi gerçekleştirilerek kullanıma hazır hale getirilmesidir.
Fire1 Tuşunu Belirleme
Oyun nesnelerinin ateş etme kontrolleri, oyundaki aksiyonu ve heyecanı artıran en önemli özelliklerdendir. Bu nedenle, belirli bir tuşa atanmış olmaları önemlidir. Bu işlem Unity'de oldukça kolaydır.
Fire1 tuşu, oyun nesnelerinin ateş etme işlevi için varsayılan olarak ayarlanmıştır. Ancak bu tuşa alternatif bir tuş atamak istiyorsanız, Input Manager veya kod yazarak yapabilirsiniz.
Input Manager kullanarak tuş atamak için, "Edit > Project Settings > Input" seçeneklerine tıklayarak Input Manager'ı açın. Burada, size önceden tanımlanmış veya kendi tanımladığınız bir tuş listesi gösterilecektir. Yeni bir tuş eklemek, mevcut bir tuşu değiştirmek veya silmek için bu listeyi düzenleyebilirsiniz.
Ayrıca, kod yazarak da bir tuşa atama yapabilirsiniz. Örneğin, "Fire2" tuşuna atama yapmak için, "Input.GetButtonDown("Fire2")" komutunu kullanabilirsiniz.
Fire1 tuşu haricinde, oyun nesneleri için ekstra tuşlara da atama yapabilirsiniz. Bu işlem için, Axis ve Button ayarlarını kullanabilirsiniz. Örneğin, "Jump" butonunu ayarlamak istiyorsanız, "Edit > Project Settings > Input" seçeneklerine tıklayarak Input Manager'ı açın ve "Jump" butonunu oluşturun.
Joystick veya gamepad kullanarak kontrol ayarları yapmak istiyorsanız, Input Manager'ı kullanarak tuşları atamak yeterli olmayabilir. Bu durumda, "Input.GetAxisRaw" fonksiyonunu kullanarak joystick veya gamepad ile etkileşim sağlayabilirsiniz.
Fire1 tuşunu belirlemek ve diğer tuşları atamak, oyunların kontrol edilmesinde kritik öneme sahiptir. Bu işlemleri yapılandırmak, oyuncuların oyunları daha kolay ve keyifle oynamalarını sağlar.
Input Manager Kullanarak Tuş Atama
Input Manager, Unity'de tuş atamalarını yapmak için kullanılan bir araçtır. Bununla, farklı eylemleri belirli bir tuşa atayabilir ve oyuncuların kontrolleri özelleştirilebilir.
Input Manager kullanarak tuş atama işlemi şu adımları takip eder:
- Öncelikle, Editör Menüsü'nden Project Settings > Input seçeneğine tıklanır.
- Bu ekranda, Unity'deki varsayılan tuşların bulunduğu Input Manager seçenekleri ortaya çıkar. Bu tuşlara ihtiyacınız yoksa silmeniz veya üzerine yazmanız mümkündür.
- Yeni bir tuş ataması eklemek için "+", tuşu tıklanır ve yeni bir tuş ataması ekranı açılır.
- Burada, Axis (eksen) veya Button (tuş) olmak üzere iki farklı tür tuş seçeneği bulunur. Axis, sürekli bir girdi sağlamak için kullanılırken, Button ise yalnızca basılı veya bırakıldığında bir girdi sağlar.
- Son olarak, tuş atamasına özel bir isim verilir ve hangi tuşun atanacağı belirlenir.
Bu adımları doğru bir şekilde takip ederek Input Manager kullanarak oyun nesnelerine tuş atamaları yapabilir ve oyunu özelleştirebilirsiniz. Ayrıca, Input Manager'ın kullanımı sayesinde farklı tuş kombinasyonları da ayarlayabilirsiniz.
Kod İle Tuş Atama
Kod ile tuş atamanın yapılabilmesi için öncelikle Input sınıfının GetButtonDown() fonksiyonu kullanılmalıdır. Bu fonksiyon, önceden belirlenmiş bir tuşa basıldığında doğru sonucu verir.
Örneğin, klavyeden "space" tuşuna basıldığında ateş edilmesini sağlamak istediğimizi varsayalım. Aşağıdaki kod parçası, sağlanan bu tuş atamasını gerçekleştirir:
```csharpvoid Update(){ if (Input.GetButtonDown("Jump")) { Shoot(); }}```
Yukarıdaki örnekte "Jump" kelimesi, tuş atamasının yapıldığı örnek isimdir. Bu isim, Input Manager menusunda veya direkt olarak kodda tanımlanabilir. Ayrıca "Shoot()" fonksiyonu da daha önceden tanımlanmış olmalı ve ateş etmeyi sağlamalıdır.
Kod ile tuş atama yöntemi, özellikle oyun nesnelerinde eklenen özel kontroller için oldukça kullanışlıdır. Böylece oyunun kendi içinde belirli tuşların ne işe yaradığı bilinir ve bu tuşlar için basit bir isimlendirme yapılabilir.
Kod içinde yapılan tuş atamaları, diğer kontrollerle bir arada kullanılabilir. Bu sayede oyun nesnelerinin nasıl kontrol edileceği tamamen kod tarafından belirlenebilir. Ancak, bu yöntem daha karmaşık kodlar gerektirebilir ve sadece deneyimli geliştiriciler tarafından tercih edilebilir.
Kod ile tuş atama yöntemi, her ne kadar biraz daha zor olsa da, hızlı ve doğru sonuçlar verir. Yukarıda verilen örneklerle, bu yöntemin nasıl kullanılabileceği anlaşılırken, oyun nesneleri için kontrol ayarlarına dair farklı seçenekler de öğrenilmiş oldu.
Ek Kontrolleri Ayarlama
Oyun kontrol ayarları genellikle sadece temel hareketleri içerir. Ancak bazı oyunlar daha fazla kontrol özelliği gerektirebilir. Bu durumda ekstra kontrol ayarları gerekli olabilir.
Unity'de ekstra kontrol ayarları için iki farklı seçenek bulunmaktadır. İlk olarak, projenize bir Axis ve Button oluşturarak ekstra kontrol ayarları ekleyebilirsiniz. Bu yöntem, örneğin oyun nesneleri için farklı hız seviyeleri belirlemek gibi birçok özellik için kullanışlıdır.
İkinci seçenek ise, joystick veya gamepad kullanarak kontrol ayarlarınızı özelleştirmektir. Bu yöntem özellikle oyununuzu konsolda oynatmak istiyorsanız kullanışlıdır. Unity, Xbox ve Playstation gibi popüler konsol oyunları için genellikle bu özellikleri kullanır.
Ekstra kontrol ayarlarını ayarlamak için Input Manager'ı kullanabilirsiniz. Input Manager, oyun nesnelerinden gelen girdilerin nasıl işleneceğini belirler. Kontrol ayarlarınızı burada ayarlayabilirsiniz.
Örneğin, button eksenleri için bir input axis oluşturmak istiyorsanız, yeni bir Axis oluşturmanız gerekebilir. Bu işlem, Edit > Project Settings > Input yolunu izleyerek yapılabilmektedir. Ayrıca, Joystick veya Gamepad kontrollerinizi kullanarak özelleştirilmiş ayarlar yapabilirsiniz. Bu bölümlerdeki değişimleri kullanarak nesneleriniz için özel kontrol ayarları belirleyebilirsiniz.
Ekstra kontrol ayarları, oyununuzu özelleştirerek daha eğlenceli bir oyun deneyimi sağlayabilir. Bu ayarları kullanarak oyun nesneleriniz için özel kontroller oluşturabilirsiniz.
Axis ve Button Ayarları
Unity'de kontrol ayarlarından biri de Axis ve Button ayarlarıdır. Axis, dikey ve yatay eksende hareket eden nesnelerin kontrolünü sağlar. Örneğin, bir araba oyununda hızlanma için 'Vertical' Axis'ini kullanabilirsiniz. Button ise, tek dokunuşla gerçekleşen eylemleri kontrol eder. Örneğin, ateş etmek için 'Fire1' Button'ı kullanabilirsiniz.
Axis ve Button ayarları, projede belirli nesnelere ait olabilir veya tüm projeyi kapsayabilir. Örneğin, 'Horizontal' Axis'ini tüm projede kullanmak isterseniz 'Edit -> Project Settings -> Input' kısmına girerek burada 'Axes' panelinden 'Horizontal' Axis'ini düzenleyebilirsiniz. Aynı şekilde, 'Fire1' Button'ı tek bir nesneye özgü yapmak istiyorsanız, bu nesneye script ekleyerek kodla belirleyebilirsiniz.
Aşağıdaki örneklerde, 'Vertical' Axis'i kullanarak bir karakterin ileri ve geri hareket etmesini, 'Jump' Button'ıyla karakterin zıplamasını ve 'Fire1' Button'ıyla atış yapmasını sağlayacak ayarlar verilmiştir:
Axis/Buton Adı | Pozitif Yönü | Negatif Yönü | Hassasiyeti |
---|---|---|---|
Vertical | W veya Yukarı Ok | S veya Aşağı Ok | 1 |
Jump | Space Bar | - | - |
Fire1 | Left Mouse Button | - | - |
Bu örneklerde, 'Vertical' Axis'inde pozitif yön olarak 'W' tuşu veya 'Yukarı Ok' kullanıldı. Negatif yön olarak da 'S' tuşu veya 'Aşağı Ok' belirlendi. 'Jump' Button'ı sadece Space Bar'la çalışacak şekilde ayarlandı. 'Fire1' Button'ı ise sol fare tuşu olarak belirlendi. Ayrıca, hassasiyet kısmını belirtmek isterseniz, kaydadeğer herhangi bir sayı belirleyebilirsiniz.
Bu örnekler, Axis ve Button ayarlarını nasıl kullanacağınız konusunda fikir verebilir. Kendi projenizde benzer ayarlamaları yaparak, oyun nesnelerinizin kontrollerini daha iyi hale getirebilirsiniz.
Joystick veya Gamepad Kullanarak Kontrol Ayarları
Joystick veya gamepad, oyun deneyimini daha gerçekçi hale getirirken daha keskin kontroller sağlayabilir. Unity'de kontrol ayarlarını joystick veya gamepad ile yapmak oldukça kolaydır.
Joystick veya gamepad'i kullanarak bir oyun nesnesini kontrol etmek için öncelikle Unity'de Input Manager'dan gereken ayarların yapılması gerekmektedir. Input Manager'da 'Axes' bölümüne giderek ilk önce 'Horizontal' veya 'Vertical' olmak üzere uygun bir eksen ayarlamak gerekmektedir.
Eksen Adı | Pozitif Tuşu | Negatif Tuşu |
---|---|---|
Horizontal | rightArrow | leftArrow |
Vertical | upArrow | downArrow |
Bu örnek kodda, sağ ok tuşu 'Horizontal' ekseni için pozitif tuş olarak belirlenirken sol ok tuşu negatif tuş olarak belirtilmiştir. Benzer şekilde, yukarı ok tuşu 'Vertical' ekseni için pozitif tuş, aşağı ok tuşu ise negatif tuş olarak tanımlanmıştır.
Joystick veya gamepad'ler yeni bir 'Axis' ayarı gerektirmez. Bunun yerine, değiştirilmiş 'Horizontal' ve 'Vertical' eksenlerini kullanarak gamepad'den gelen verileri Input Manager'da işleyebilirsiniz. Örneğin, gamepad'in analog stick'i 'Horizontal' ve 'Vertical' eksenlerinde hangi yönde kaydırıldığında ne olacağını belirleyebilirsiniz.
- Öncelikle Unity'e bağlı olan gamepad'i bağlayın.
- Input Manager'da yeni bir eksen ayarı oluşturun ve eksen adını yazın.
- Eksenin pozitif ve negatif tuş atamalarını yapın.
- Kodu yazarak, gamepad verilerini input olayında işleyin.
Joystick veya gamepad kullanarak kontrol ayarları, oyun deneyimini geliştirirken aynı zamanda daha doğru ve net kontrol sağlar. Input Manager'da doğru ayarlamalar yapıldıktan sonra, artık joystick veya gamepad'i kullanarak oyun nesnelerini kolaylıkla kontrol edebilirsiniz.
Kontrol Ayarlarını Kaydetmek ve Kullanmak
Unity'de yapılan kontrol ayarlarının kaydedilmesi oldukça önemlidir. Bu sayede ayarlar daha sonra kullanılabilir ve tekrar yapılandırılması gerekmez. Kontrol ayarlarını kaydetmek için öncelikle kaydedilecek dosyanın adı ve konumu belirlenmelidir.
Kontrol ayarlarını kaydetmek için öncelikle File menüsüne gidilir ve burada Save Project seçeneği tıklanır. Açılan penceredeki adı ve konumu belirlenen dosya kaydedilir. Daha sonra bu dosya, farklı scene'lerde kullanılmak üzere tekrar yüklenebilir.
Kontrol ayarlarının kullanımı için ise, ayarlar önceden kaydedildikten sonra herhangi bir scriptte çağrılabilecek şekilde kullanılabilir. Bunun için öncelikle en sağlam yöntem olan PlayerPrefs kullanılmalıdır. Bu yöntemde ayarların saklanacağı anahtar kelime belirlenir ve ayarlar bu anahtar kelime altında saklanır. Bu sayede daha sonraki kullanımlarda bu anahtar kelime çağrılarak ayarlar aynı şekilde kullanılabilir.
Bunun yanı sıra, PlayerPrefs'un yanında ScriptableObject da kullanılabilir. ScriptableObject kullanarak önceden belirlenen ve kaydedilen ayarlar, oyun nesnesi script'lerinde rahatlıkla kullanılabilir. Ayarların kaydedilmesi ve kullanımı için bahsedilen yöntemler oldukça basittir ve Unity ustaları tarafından oldukça sık kullanılmaktadır.
Kaydetme ve Yükleme
Kontrol ayarlarını yapmak ve bu ayarları kaydetmek oldukça önemlidir. Bu sayede oyun nesnelerinin kontrolü daha rahat ve daha rahat kullanılabilir hale gelir. Unity'de kontrol ayarlarını yapmak ve kaydetmek oldukça kolaydır.
Öncelikle kontrol ayarlarını yapmak istediğimiz oyun nesnesi seçilir. Daha sonra Input Manager'a giriş yapılır ve istenen tuşa atama yapılır. Atama işlemi sırasında, tuşun ismi ve kontrol tipi seçilmelidir. Örneğin, "Fire1" olarak belirtilen tuşa "Mouse0" kontrol tipi atanabilir.
Kontrol ayarlarını kaydetmek ve yüklemek için, File menüsünden "Save Project" seçeneği seçilmelidir. Bu işlem, kontrol ayarlarını Unity projesine kaydeder. Ayrıca, "Load Project" seçeneği ile de kontrol ayarları geri yüklenebilir.
Kontrol ayarlarında yapılan değişiklikleri uygulamak için, yine Input Manager'a giriş yapılır ve değişiklikler yapılır. Daha sonra, yapılan değişiklikler kaydedilerek uygulanır.
Kontrol ayarlarını kaydederken, farklı bir proje açmak istediğinizde, kontrol ayarlarınızın bu projede de korunması için "Asset" dosyasında "InputManager.asset" dosyasını alıp yeni projenize aktarmanız gerekiyor.
Tüm bu adımları takip ederek bir kontrol ayarı yapılıp kaydedildiğinde, oyun nesnesi yönetimi daha kolay hale gelir. Bunun yanı sıra, bu işlem sırasında oluşabilecek aksaklıkların da önüne geçilir. Bir sonraki yazımızda görüşmek üzere.
Kontrol Ayarlarında Değişiklik Yapma
Kontrol ayarlarında değişiklik yapmak oldukça kolaydır. Yapmak istediğiniz değişikliği sağ tıklayarak açılan menüden "Edit Axes" veya "Edit Buttons" seçeneğini seçmelisiniz. Bu menülerde yeni eksenler veya düğmeler ekleyebilir, mevcut olanları düzenleyebilir veya silebilirsiniz.
Ayrıca, "Input Manager" penceresinden yapabileceğiniz değişiklikleri de unutmayın. Bu pencerede önceden oluşturulmuş eksenden veya düğmeden herhangi birini seçebilir, düğme veya ekseni yeniden adlandırabilir ve ilgili özellikleri düzenleyebilirsiniz.
Kontrol ayarlarına yapılan değişikliklerin Unity'de görüntülenmesi için "Apply" düğmesine tıklamanız gerekir. "Cancel" düğmesiyle de tüm değişiklikleri reddedebilirsiniz.
Kontrol ayarlarındaki değişiklikleri uygulamak için, yaptığınız değişiklikleri kaydederek başka bir projeye de taşıyabilirsiniz. Bunun için, "Project Settings" altında "Input" seçeneğine gitmeniz ve ardından "Export" düğmesine tıklayarak ayarları XML dosyası olarak kaydetmeniz yeterlidir. Kaydedilen dosyayı başka bir projeye sürükleyerek kullanabilirsiniz.
Sonuç olarak, Unity'de kontrol ayarları üzerinde yapabileceğiniz birçok değişiklik var. Kolaylıkla düzenlenebilen bu ayarlar sayesinde oyun nesnelerinin kontrollerini tamamen özelleştirebilir ve oyunculara daha iyi bir oyun deneyimi sunabilirsiniz.