Java kurslarımı bir yıl önce aldığımda, Java'nın çoğunlukla yurtdışı oyun şirketlerinde, C ++ ise ABD'de kullanıldığı söylendi. Derinlemesine öğrenmek için hangi dillere odaklanmalıyım?
Java kurslarımı bir yıl önce aldığımda, Java'nın çoğunlukla yurtdışı oyun şirketlerinde, C ++ ise ABD'de kullanıldığı söylendi. Derinlemesine öğrenmek için hangi dillere odaklanmalıyım?
Yanıtlar:
Yaygın programlama dilleri, oyun geliştirme türüne göre ayrılabilir.
Grafiğe gelince zarfı zorlayan büyük, üçlü A oyunlarında, genellikle projenin çoğunluğu için düz C ve C ++ karışımı kullanılmıştır. Genellikle, bir komut dosyası dili dahil edilecektir - ancak bu tüm motorlar için mutlaka doğru değildir.
Oyun kodu genellikle özel bir dilde (UnrealScript), Python, Lua (CryTek, Spark Engine) veya bazı durumlarda C # (The Sims 2) ile yazılmıştır. Birkaç oyun motoru JavaScript'i (Unity, vb.) Desteklemeye başlıyor.
Elbette gölgelendirici dilleri de kullanılmaktadır.
Mobil alanda, iPhone'lar objektif-C tarafından yönetilirken, diğer pek çok cep telefonu Java'yı (Android, Brew tabanlı vb.) Kullanmaktadır.
Hintliler veya küçük şirketler ise hedef platformlarına bağlı olarak hemen hemen her şeyi kullanabilirler. Örneğin, C # küçük zamanlı Live geliştiricileri ile ortaktır. Flash geliştiricileri açıkça ActionScript kullanıyor.
Al işte ozaman, buyur. Umarım yardımcı olur.
C ++ mevcut oyun pazarında oldukça öne çıkıyor. Düşünce C hala yaygın olarak kullanılıyor.
Oyun yaparken ana odak noktanız dil değil son ürün olmalıdır. Asla "Bunu X dilinde nasıl yapabiliriz?" Diye bir projeye başlamayın. "Bunu en iyi şekilde nasıl yapabiliriz?"
Nihai kaynağıdır TIOBE Endeksi . Her dilin ne için kullanıldığını size söylemez ...
Daha önce bahsedildiği gibi, C ++ temelde öğrenmek için dil; Büyük konsolların tümü daha iyi veya daha kötüsü için bir C ++ geliştirme ortamına ev sahipliği yapar. C #, XNA destekli oyunlarda, çıkmaya başlıyor, ancak en sık araç geliştirme için de kullanılıyor.
Lua ayrıca oyunlarda en sık kullanılan betik dillerinden biridir; En azından onunla aşina bir aşinalık olması yardımcı olacaktır.
Genellikle oyunu oluşturmak için kullanılan yapı zinciri Python veya Perl ile yazılmış komut dosyalarını içerir; bunlara aşina olmak da yararlı (bir zorunluluk olmasa da).
Bir dil öğrenmek değil, farklı programlama kavramlarını ve birkaç dilde, çerçevede ve ortamda nasıl uygulanacağını öğrenmek en iyisidir.
Belki de belirli bir dili öğrenmeye odaklanmamalısın. Nasıl gelişmelisin.
Dün, iOS SDK ve Xcode'u indirdim. Hemen aldım ve biraz tetris yaptım. Ben bir as3 çocuğuyum ve Objective-C'yi öğrenmekte bile sıkılmadım. Ama basit bir oyun yapabildim çünkü nasıl geliştireceğimi biliyorum.
Yani, buradaki amacım, belirli bir dilden ziyade yeni kavramları öğrenmek için daha fazla zaman harcamanız gerektiğidir. Veya X dilini öğrenin ve bilginizi diğer dillere taşıyın.
Oyun geliştirme farklı bir top oyun formu uygulama programlamasıdır.
Oyun dünyasında her şey hız ile ilgili. 1080p HD grafikli zarfı iterken, her son işlemci döngüsü yüksek örnekleme sesi ve nex gen AI sayılır.
Tarihsel olarak C ve C ++ fastlardı ama java şimdi bazı durumlarda hız açısından c ++ ile karşılaştırılabilir durumda.
C ++, tasarladığınız mimari üzerinde diğer dillerden daha fazla kontrol sahibi olmanızı sağlar.
Oyun geliştiricilerin çoğu, son derece iyi bir anlam ifade eder, eski okul yöntemiyle öğretildiklerinden, eski teknolojiler konusunda çok uzmanlar.
Ancak ticari oyun geliştirmenin C ++ 'ı desteklemesinin en büyük nedeni, oyun endüstrisinde 15 yıldan fazla bir süredir kullanılmış olması ve bunun için milyarlarca evde ve halk erişim kütüphanesinde bulunmasıdır. İsterseniz şansınız birisi c ++ ile oluşturulmuş demektir.
Java'nın geniş çapta ve sürekli değişen mobil mimaride geliştirmeyi kolaylaştıracağı için gittikçe daha popüler hale geldiğini söylemekle birlikte, son dönem oyunlarda bir süredir c ++ ile yazılmış çekirdeği bulunmaya devam edecek.
Tabii ki iOS cihazları için Amaç-C. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html Ayrıca çoğu OS X programı da kodlanmıştır: https://developer.apple.com/technologies/ mac / cocoa.html