Oyun geliştirme için C# mı Python mu?

wante1638

Picopat
Katılım
28 Ocak 2025
Mesajlar
100
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Merhaba iyi sosyaller. Öncelikle ben oyun geliştirme alanlarına yönelmek istiyorum ve bu süreçte şu andan itibaren yazılım dillerini öğrenmenin işime yarayacağını düşünüyorum fakat arada kaldım önce Python öğrenip sonra C# öğrenirsem (Unity) bu süreçte işime yarar mı yoksa direk c#tan mi başlayayım? Ayrıca Python öğrenmem için yardımcı olabilecek bir site kaynak vb. öneriniz varsa kesinlikle açığım ayrıca şu an da attığım adımların ileride kariyerimi belirleyeceğini düşünüyorum aranızda yazılımcı olan biri veya oyun geliştirmeye ilgilenen biri tecrübeleri yardımıyla yapmam veya yapmamam gereken şeyleri söylerse çok sevinirim. Tekrar iyi sosyaller.
 
Direkt temel olmadan C#'dan başlarsan pek birşey anlayacağını sanmıyorum. En basiti Python en iyisi Python'dan başlamanızdır. Python için YouTube'de kurs videoları var.
 
Python oyun geliştirmek için uygun bir dil değildir. PyGame kütüphanesi olsa bile. C# tabii ki de. Çünkü Unity direk C# kullanıyor. Ancak dil bilmeyen birisi C# ile başlarsa afallar. 6 ayda öğreneceği şeyleri 12 ayda öğrenir. O yüzden algoritma ve mantığı kavrama açısından Python öğrenilmesi daha mantıklı. Python için belirli bir kaynak yok. Ancak para vermek istemiyorsan kurs alma. Sana eski ama hala çok iyi öğreten (2021) bir yazılı kaynak atabilirim:
Python Programlama Dili — Yazbel Python Belgeleri
Eğer İngilizce var ise:
Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.

Bu iki kaynaktan öğrenirsen Udemy'den saçma sapan kurslara 300-400 TL heba etmene gerek kalmaz. Kalan şeyleri de oradan buradan deneme yanılma ile öğrenebilirsin. Kendim şahsen 1 kuruş ödemeden bu kaynaklardan öğrendim ve OpenCV ile nesne algılamaya kadar gittim. Tabii ben çok eskiden öğrenmiştim ama insan aklı güncellenmiyor sonuçta. Öğrenmende sakınca yok yani. Udemy öneren olsa bile alma. C# veya C++/Unreal Engine Blueprint olsa neyse ama bu kadar internette çok dilli bir sürü kaynağı bulunan bir dili uyduruk bir adamdan 300-400 TL'ye öğrenmek saçma.
 
Nasıl oyunlar yapacağına ve gelecekten beklentilerine bağlı.

Python öğrenirsen RenPy motoruyla görsel roman tarzı oyunlar yapabilirsin veya Godot motoruyla 2D çok güzel oyunlar çıkarabilirsin. Bunun dışında uzun vadede sektörde iş bulma amacın varsa Python genelde ciddiye alınmaz.

Diğer yandan C# özellikle Unity ile birlikte küçük şirketler ve mobil oyunlarda sıkça kullanılıyor. Tek başına ya da küçük ekiplerle düşük bütçeyle güzel işler yapılır. Godot/GDScript ikilisine göre biraz daha zor olabilir ama daha güçlü olur.

Diğer bir yol da C++ ve Unreal Engine yolu. 3D grafikler konusunda eline su dökebilecek motor bulamazsın ama hem Unreal hem de C++ öğrenmesi diğerlerine göre daha zor olur. Hoş, büyük şirketler C++ dışında kod kolay kolay yazmazlar. Kariyeri ilerletmek istediğin zaman öğrenmek zorundasın. Ayrıca C++ diğer yazılım dillerini öğrenmene ve efektif şekilde kullanmana da çok yardımcı olur.

Ancak dil bilmeyen birisi C# ile başlarsa afallar. 6 ayda öğreneceği şeyleri 12 ayda öğrenir. O yüzden algoritma ve mantığı kavrama açısından Python öğrenilmesi daha mantıklı.
Katılmıyorum. Direkt C'yle bile başlanır, mis gibi de olur. Çok daha oturaklı ve verimli bi' öğrenme deneyimi, giriş olur yazılıma.
 
Nasıl oyunlar yapacağına ve gelecekten beklentilerine bağlı.

Python öğrenirsen RenPy motoruyla görsel roman tarzı oyunlar yapabilirsin veya Godot motoruyla 2D çok güzel oyunlar çıkarabilirsin. Bunun dışında uzun vadede sektörde iş bulma amacın varsa Python genelde ciddiye alınmaz.
Oyun sektöründe doğru fakat Python bilmeyen adamı otomasyonla ilgili bir yazılım işine almazlar. Çünkü çoğu program/uygulamada ufak tefek Python kodları kullanılıyor. Ya da çoğu yapay zeka ile otonomlar Python ile yapılıyor. Genel sektörde ciddiye alınmaz fakat Back-end bir işte kesinlikle insan hafızasında tutulması gereken bir dil. Basitleştirilmiş bir dil olduğu için unutması da kolay değil zaten.

Katılmıyorum. Direkt C'yle bile başlanır, mis gibi de olur. Çok daha oturaklı ve verimli bi' öğrenme deneyimi, giriş olur yazılıma.
Algoritma bilmeyen adam C# başlarsa class, namespace gibi kavramları anlayamaz. Dolayısıyla en azından öğrenmesi adına Python başlayıp geçmesi daha doğru olur.
 
Oyun sektöründe doğru
sektörde iş bulma amacın varsa Python genelde ciddiye alınmaz.
🙂
Algoritma bilmeyen adam C# başlarsa class, namespace gibi kavramları anlayamaz. Dolayısıyla en azından öğrenmesi adına Python başlayıp geçmesi daha doğru olur.
Katılmıyorum. Gördüğüm kadarıyla konu sahibinin kısa sürede ürün çıkarma gibi bir acelesi yok. Bu durumda direkt C++ öğrenerek bile başlasa bence daha iyi olur. Öğrenmek Python'a göre daha zor olabilir ama andaval değilsen ve yeterince çabalarsan gayet de öğrenilebilir.

C/C++, Rust gibi düşük seviye dilleri öğrenmek işin mantığını anlamaya çok yardımcı olur. Asıl algoritmayı bunlarla öğrenirsin zaten, Python'da her şey için tek komutla indireceğin bir kütüphane var. Kendisi de İngilizce'den hallice.

Üniversitelerde de zaten C öğreterek başlarlar yazılıma.
 
Once programlamanin kendisini ogrenmelisin, sonra oyun programlama ogrenmelisin.

O sebeple hangi dille programlama ogrendigin cok fark etmez. C de olur C# da JS de. Programlama temelin olduktan sonra istedigin oyun motoruyle istedigin dilde game dev ogrenmeye baslayabilirsin.

Emeklemeden kosmaya calisirsan bir sey anlamaz, cabuk birakirsin.

Kaynak olarak da dillerin kendi dokumantasyonundan dillerin API'i hakkinda kesin bilgi alirsin, programlama temeli icin de ( algoritma ve data structure ) nasil ogrenmeyi seviyorsan kitap okuyabilir, video seri izleyebilir ( online universite dersleri ) ya da parca parca farkli online kurslar takip edebilirsin.
 
Benim bu konudan çıkardığım sonuç çoğu kişinin ve sorduğum bir bilgisayar mühendisi öğretmenim gibi Python'la başlayıp yazılım nedir bu işin mantığı nedir algoritma nedir bunları öğrenmem daha sonra C# C++ veya JS öğrenmem yönünde ben çoğu oyun motorunu öğrenmek istiyorum. Boş zamanım çok fazla bu yüzden teker teker hepsini öğreneceğim şu anda yaşım 12 ben başlamak için biraz geç olduğunu düşünüyorum sizce birden fazla oyun motorunu ve en çok kullanılan 8 10 dili şimdiden bilmem ileride işime yarar mı? Cevap veren herkese çok teşekkür ederim.
 
Benim bu konudan çıkardığım sonuç çoğu kişinin ve sorduğum bir bilgisayar mühendisi öğretmenim gibi Python'la başlayıp yazılım nedir bu işin mantığı nedir algoritma nedir bunları öğrenmem daha sonra C# C++ veya JS öğrenmem yönünde ben çoğu oyun motorunu öğrenmek istiyorum. Boş zamanım çok fazla bu yüzden teker teker hepsini öğreneceğim şu anda yaşım 12 ben başlamak için biraz geç olduğunu düşünüyorum sizce birden fazla oyun motorunu ve en çok kullanılan 8 10 dili şimdiden bilmem ileride işime yarar mı? Cevap veren herkese çok teşekkür ederim.
Öncelikle en çok kullanılan 8-10 dili bilmene gerek yok, dil öğrenmek böyle bir şey değil. Her dilin kendince avantajı dezavantajı var bu yüzden alanlara ayrılmış durumda zaten yazılım dünyası. Örneğin yapay zeka için python kullanılırken oyun alanında çoğunlukla c++ kullanılır.

Çoğu oyun motorunu da öğrenmeye gerek yok, bu kafayla başlama yazılıma. Önce otur algoritma nedir, programlama nedir temelini öğren. Daha sonra bir dil seç ki oyun yapmak istiyorum diyorsun sana 2 seçenek sunabilirim.

C# öğrenirsen Unity ile devam edersin. Hem C#'ı öğrenmiş olur hem de bir oyun motoru neler yapar onu öğrenmiş olursun ki bu kısa sürecek bir şey değil.

C++ öğrenirsen ister Unreal Engine öğrenirsin ister kendi oyun motorunu yazarsın istersen SFML, SDL gibi kütüphaneleri kullanarak sadece C++ ile oyun yazarsın.

Çok dil bilmek değil, alanını iyi bilmek algoritmayı iyi bilmek problem çözmeyi başarabilmek seni öne atar. Oyun alanındayken gidip de python, javascript tarzı bir dil bilmene de gerek yok ki @Shimada Sensei nin de dediği gibi, C ailesiyle başlaman çok daha oturaklı olur, pyton bana kalırsa yapay zeka, veri bilimi gibi alanlara girmeyeceksen tamamen fuzuli giriş yapılması.
 
Benim bu konudan çıkardığım sonuç çoğu kişinin ve sorduğum bir bilgisayar mühendisi öğretmenim gibi Python'la başlayıp yazılım nedir bu işin mantığı nedir algoritma nedir bunları öğrenmem daha sonra C# C++ veya JS öğrenmem yönünde ben çoğu oyun motorunu öğrenmek istiyorum. Boş zamanım çok fazla bu yüzden teker teker hepsini öğreneceğim şu anda yaşım 12 ben başlamak için biraz geç olduğunu düşünüyorum sizce birden fazla oyun motorunu ve en çok kullanılan 8 10 dili şimdiden bilmem ileride işime yarar mı? Cevap veren herkese çok teşekkür ederim.
En çok kullanılan motor veya dili öğrenmek zorunda değilsin. Hangisi senin için lazım ne yapacaksın amacın ne?
Amacın programlama öğrenmekse dil değil, temeli öğren. Amacın oyun programlamaksa bu sefer işin süzgeçleme kısmındasın. Örneğin:
3D oyun yapacaksın. UE bu konuda Thriple A
2D oyun yapacaksın. UE bu konuda "Büyük kepçeyle, küçük işe kalkışma"ya benzer.
Gibi gibi.
Ayrıca bütün dilleri ve yazılımları bilme ihtiyacı duymaktan çık. Bir dilde, bir yazılımda kendini geliştir.
 

Technopat Haberler

Geri
Yukarı