Oyun Programlama

Unity C# Command Design Pattern

Command Design Pattern Nedir? Nesne yönelimli programlamada Command Design Pattern, bir nesneyi bir eylemi gerçekleştirmek veya daha sonra bir olayı tetiklemek için gereken tüm bilgileri içine almak için kullanılan davranışsal bir tasarım desenidir. Bu bilgiler yöntem adını, yöntemin sahibi olan nesneyi ve yöntem parametreleri için değerleri içerir. Aşağıdaki senaryonun ardındaki fikir, bir box gameobject'iniz olduğu ve ardından kutuyu WASD ile hareket ettirebileceğinizdir. Ancak komut düzeni sayesinde, Z tuşuyla hareketleri geri alma ve tüm hareketleri en baştan R tu

Oyun Programlama, Yazılım Mühendisliği

Bir Oyun Geliştirme Ekibindeki Farklı Roller

Oyun geliştirme çok zengin bir tarihe sahip ve tüm yaş grupları arasında oldukça popüler. Video oyunları geçen yıl 100 milyar doların üzerinde bir gelir elde etti. Artık herkes onların bir parçası olmak istiyor. Fakat oyun geliştirmek sanıldığı kadar basit değil.  Çok sayıda üyeden oluşan ve yetenekli ekipler gerektiriyor. Her ekibin kendine özgü rolü vardır. Bu yazıda bu rolleri anlatmaya çalışacağım. Game Designer Game Designer oyunun oynanışını , kurallarını ve genel yapısını yaratan bir ekip üyesidir. Kullanıcı arayüzü, dokümantasyon, anlatım, içerik ve paketleme gibi

Oyun Programlama, Unity

Unity C# Singleton Pattern (Tek Nesne Deseni)

Singleton Pattern (Tek Nesne Deseni) , Yazılım Mühendisliğinde en bilinen kalıplardan biridir. Temel olarak, bir Singleton yalnızca tek bir örneğinin oluşturulmasına izin veren ve genellikle bu örneğe basit erişim sağlayan bir sınıftır. Çoğunlukla, bir singleton örneği oluşturulurken herhangi bir parametrenin olmasına izin vermez. (Her sahnede aynı objeleri kullanan bir sınıfınız var ise bu desen size uygundur.) Bu makale yalnızca parametre gerektirmeyen durumlarla ilgilidir. Bu yazıyı okumadan önce Unity MonoBehavior Sınıfı Temel Fonksiyonlar adlı yazımı okumanızı öneri

Oyun Programlama, Unity

Unity 2D Objeleri Sürükle ve Bırak (Drag And Drop Object)

Unity 2D ile objelerin sürüklenip bırakılması (Drag and Drop) işleminin nasıl yapılacağını MonoBehavior sınıfından OnMouseDrag ve OnMouseDown fonksiyonlarını kullanarak anlatacağım. Öncelikle bir objenin sürüklenip bırakılması için bir Collider'e sahip olması gerekir. Taşıyacağımız objeye uygun olarak bir collider ekleyebilirsiniz. Boş bir GameObject oluşturup içine Sprite Renderer ve Box Collider ekledim. SpriteRenderer bileşeninin Sprite özelliğini UISprite olarak değiştirdim. Daha sonra bir "Drag and Drop Object" isimli bir c# script oluşturduk ve objemize dahil ettik

Oyun Programlama, Unity

Unity – Bir Objeyi Döndürme (Rotate an Object)

Unity 2D ile  bir objeyi dairesel şekilde döndürme işlemi veya bir objeyi başka bir objenin etrafında döndürme işlemi yapabiliriz. C# kullanarak bu konuyu ele alacağız. Bir Objeyi Döndürme (Rotate an Object) Bir objeyi dairesel şekilde döndürmek için Transform bileşeninde Rotation vectorünün z değerini 0 ile 360 arası değiştirmemiz gerekir. Ayrıca bu 0 değerinden başlayıp 360 dereceye ne denli hızlı ulaşacağı da artış miktarı ile belirlenebilir. [crayon-5e4c2eaaeded6266695626/]   Eğer SerializeField olarak tanımlanmış alanlar hakkında bilgi almak istiyorsanız Un

Oyun Programlama, Unity

Unity Coroutine Nedir, Nasıl Kullanılır?

Unity Coroutine Nedir? Normal fonksiyonlar çağrıldığında fonksiyon tamamlanmadan diğer işlemlere geçilmez. Bir Coroutine oluşturarak Bağımsız bir işlev oluşturabilir. Ayrıca bir timer görevi de görebilir. Örneğin bir objeyi belirli aralıklar ile büyültebiliriz. Unity Coroutine Nasıl Kullanılır ? Bir Coroutine IEnumerator tanımlayıcısı ile tanımlanır ve StartCoroutine fonksiyonu ile çalıştırılır. Yield return parametresi ile WaitForSeconds gibi fonksiyonlar kullanabilir. Coroutine Örneği [crayon-5e4c2eaaee3a3511996959/] Bir C# Script oluşturduk. Ardından IEnumerator ta

Oyun Programlama, Unity

Unity SerializeField Nedir?

"Unity'de SerializeField ile tanımlanan alanlar ne işe yarar?" sorusunun cevabını arıyoruz. SerializeField olarak belirtilen değişkenlerin değerlerini Unity oyun motorumuzda tanımlamamıza olanak sağlar. Bunu bir örnek ile açıklayalım. Unity SerializeField Örneği İlk adım olarak bir proje oluşturalım. Project penceresinde sağ tıklayıp Create > C# Script seçeneğini seçelim. Daha sonra istediğiniz şekilde adlandırabilirsiniz. Ardından C# scriptimize çift tıklayıp Visual Studio'da açalım. Birkaç farklı türden Serialize Field olarak değişkenler tanımlayalım. [crayon

Oyun Programlama

Oyun Programlamaya Nasıl Başladım

Selam hacı abi, Önceki yazımda sonraki blog yazımın konusunu bulduğumu söylemiştim. Oyun programlamak evet ama karıştırmayın. Programlamak farklı bir şey oyun programlamak farklı. İnsan kendi yaptığı bir yazılımı kullanabilir ama kendi yaptığı oyunundaki o zor bölümü bir türlü geçemez. Bundan yaklaşık 2 sene önce Algoritma ve Programlama sınavım vardı. Sınav sabah saat 8:30 saatlerindeydi. Malum bende ikinci öğretimim. Dedim yaa sabaha kadar dururum ben öyle giderim sınava ne olacak sanki. Sonra sabaha kadar oyun oynayarak geçirdim zamanı. Sonra sınava girdim. Aslında i