2D oyun nasıl yapılır?

RightBehindYou

Decapat
Katılım
5 Ağustos 2021
Mesajlar
142
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Merhaba, 2D bir oyun yapmak istiyorum, lakin herhangi bir C# veya C++ bilgisine sahip değilim (az çok Python biliyorum). Açıkçası 3. sınıfta başladı bu merakım, kodlama kursuna giderken eve geldiğimde Minecraft, CS:GO filan oynarken sürekli bu oyunların nasıl programlandığı vs. kafamdaydı sürekli. İşte kursta öğrendiğim bilgileri oynarken oyuna entegre etmeye çalışıyorum ("if" filan gibi), acaba böyle mi yapılmış ne kadar karmaşık filan diyordum. Lakin ne kadar isteğim olsa da hiç motivasyonum olmadı. Yeterli donanıma sahip bir bilgisayarım yoktu, çizim bilgim yoktu, kim oynayacak ki benim oyunumu vs. Ancak nedense son zamanlarda çok istiyorum, çok boş yaptım sanırım, şimdi asıl konuya gelelim.

Başlıktaki soru cidden çok basit ve bu işi kolay sanan birinin soracağı bir soru gibi gelmiş olabilir. Lakin bu işin ne kadar karmaşık olduğunu biliyorum. Belki aylarımı, belki de senelerimi alacak bu proje. Kafamdaki plan az çok şöyle; mobil oyunla başlamak istiyorum, daha kolay büyüyebileceğini düşündüğüm için. Google Play Store'daki Mad Dex tarzı bir oyun (duvarlardan atlamalı zıplamalı bir oyun), 2020'de çıkmış olan Ghostrunner oyunu gibi duvardan sürünerek bir yerlere atlamalı (bu oyun tarzının ismini bilmiyorum kusura bakmayın, söylerseniz çok yardımcı olursunuz) ve pixel art çizim tarzı bir oyun, izlemem gereken yol nedir? Hangi aşamaları hangi sırayla gitsem daha iyi olur? Oyun motoru olarak Unity 2D mi kullanmam gerek? Photoshop bilgisine çok sahip olmadığımdan Aseprite programı uygun mudur? Yazım yanlışı veya bazı kelimeleri yanlış yazdıysam kullandıysam affınıza sığınırım. Cevaplarınız için şimdiden teşekkürler.
 
Son düzenleyen: Moderatör:
Öncelikle yüksek miktarda C# bilginiz olması gerekir. Çünkü sizin o dediğiniz oyun tarzları için matematiksel işlemler gerekiyor. Sonra modelleme ve oyun motoru kullanmayı öğrenmeniz gerekiyor. C# dili ile Unity kullanabilirsiniz. Yüksek grafikli bir şey yapmak istiyorsanız işler değişiyor. C++ ve Unreal Engine devreye giriyor.

Yani programlama öğrenmeniz gerekiyor. Sizin o dediğiniz if else neredeyse her dil içinde olan bir sorgu elemanı. Oyun yapmak için X ve Y ekseni, yükseklik gibi, alan derinliği gibi matematiksel işlemleri kullanmanız gerekiyor. Çünkü karakteriniz kendi kendine hareket etse bile bir rotaya göre gitmesi gerekiyor. Yoksa harita dışına çıkar :) Buna bug diyoruz.
 
  • Unity 2D oyun motoru ile başlamanızı öneririm. Unity 2D çok kullanışlı ve güçlü bir oyun motorudur ve mobil oyunların yanı sıra PC oyunları da yapabileceğiniz bir platformdur. Ayrıca Unity'nin açık kaynak kodlu bir versiyonu bulunmaktadır ve kolayca öğrenme kaynakları bulunmaktadır.
  • Aseprite programı da iyi bir seçim olabilir. Photoshop gibi çok kapsamlı bir program olmasa da, pixel art için yeterli bir özellik seti sunar.
  • İleri seviye C# bilgisi gerekiyor 2-3 ay C# diline yoğunlaşın.
 
Öncelikle yüksek miktarda C# bilginiz olması gerekir. Çünkü sizin o dediğiniz oyun tarzları için matematiksel işlemler gerekiyor. Sonra modelleme ve oyun motoru kullanmayı öğrenmeniz gerekiyor. C# dili ile Unity kullanabilirsiniz. Yüksek grafikli bir şey yapmak istiyorsanız işler değişiyor. C++ ve Unreal Engine devreye giriyor.

Yani programlama öğrenmeniz gerekiyor. Sizin o dediğiniz if else neredeyse her dil içinde olan bir sorgu elemanı. Oyun yapmak için X ve Y ekseni, yükseklik gibi, alan derinliği gibi matematiksel işlemleri kullanmanız gerekiyor. Çünkü karakteriniz kendi kendine hareket etse bile bir rotaya göre gitmesi gerekiyor. Yoksa harita dışına çıkar :) Buna bug diyoruz.
  • Unity 2D oyun motoru ile başlamanızı öneririm. Unity 2D çok kullanışlı ve güçlü bir oyun motorudur ve mobil oyunların yanı sıra PC oyunları da yapabileceğiniz bir platformdur. Ayrıca Unity'nin açık kaynak kodlu bir versiyonu bulunmaktadır ve kolayca öğrenme kaynakları bulunmaktadır.
  • Aseprite programı da iyi bir seçim olabilir. Photoshop gibi çok kapsamlı bir program olmasa da, pixel art için yeterli bir özellik seti sunar.
  • İleri seviye C# bilgisi gerekiyor 2-3 ay C# diline yoğunlaşın.
Teşekkürler peki C# bilgimi en pratik yoldan nasıl geliştirebilirim?
 

Geri
Yukarı