Unity Oyun Geliştirme Öğrenilecek 7 Dil: Hangisi En İyisi?

Unity Oyun Geliştirme Öğrenilecek 7 Dil: Hangisi En İyisi?

Oyun geliştirmek hiç bu kadar kolay olmamıştı. Unity gibi oyun geliştirme platformları, basit 2D platform oyunlarından tamamen ayrıntılı 3D birinci şahıs nişancı oyunlarına kadar her şeyi yaratmayı mümkün kılar. Unity, küçük geliştiriciler için ücretsizdir ve fikirlerinizi prototiplemek için editörün en iyi nasıl kullanılacağına dair çok sayıda öğretici vardır.





Unity programını nasıl kullanacağınızı öğrenmek sizi ancak bir yere kadar götürür. Oyununuzun gerçek özü, davranışını belirleyen kod olacaktır. Oyun geliştirme için hangi dili öğreneceğinizi bulmak zor olabilir --- ancak Unity söz konusu olduğunda bu basittir.





duvar kağıdı windows 10 olarak bir gif nasıl ayarlanır

1. En İyi Seçim: C#

Unity ile başlayan veya önceden nesne yönelimli programlama bilgisi olan herkes için C#, Unity için öğrenilecek doğru dildir. Aslında, C# platform için öğrenmeye değer tek dildir ve bunun iyi bir nedeni vardır.





Unity, Microsoft'un .NET çerçevesinin platformlar arası bir uygulaması olan Mono'yu kullanır. C#, .NET'in birincil dilidir ve Unity'nin tüm kitaplıkları C# kodu kullanılarak oluşturulmuştur. C#'ın Unity'nin dili olduğunu söylemek abartı olmaz. Unity, ileriye dönük motorda kullanılacak tek dilin C# olduğunu düşündüklerini açıkça belirtti.

C# güçlü bir dil olduğu ve öğrenmesi kolay olduğu için bu iyi bir haber. Birlik birçok kişiden sadece biri C# öğrenmek için iyi nedenler , ve yeni başlayan biriyseniz, onu daha erişilebilir bile bulabilirsiniz. Oyun geliştirmek, öğrenmeye yapı kazandırır ve proje tabanlı hedefler yeni konuların daha iyi anlaşılmasına yol açar.



tanıtımı ile birlikte C# iş sistemi ve ECS , Unity, C# ile yapılabilecekleri daha da ileriye taşıyor ve yeni Burst derleyicisi bunu her zamankinden daha hızlı hale getiriyor.

2. Mevcut Alternatif: JavaScript

Unity ayrıca UnityScript olarak bilinen JavaScript'i de destekler. Yayınlandığından beri JavaScript, tam özellikli bir Unity geliştirme dili olarak C# ile yan yana oturdu. Unity komut dosyası başvurusu, kitaplığın çoğu öğesi için hem C# hem de JavaScript'te örnek koda sahipti.





Bu, JavaScript arka planından gelen geliştiriciler için yararlıydı, çünkü kodun yapılandırılma biçimindeki farklılıklara rağmen, tanıdık sözdizimini kullanabiliyorlardı. Ancak bir sorun vardı.

UnityScript JavaScript'e benzer görünse de --- öyle değil. UnityScript, JavaScript'in sahip olmadığı sınıflara sahiptir. JavaScript'in çoklu değişken bildirimi ve isteğe bağlı noktalı virgül gibi özellikleri UnityScript'te mevcut değildir.





Belki de en önemlisi, Unity projelerinde JavaScript yardımı aramak, çoğu kişinin UnityScript yerine JavaScript olarak adlandırdığı için her zaman kafa karışıklığına neden olmuştur. Hem web tasarımı hem de oyun geliştirme sonuçları birlikte bulanıktı ve diller arasındaki fark, salt JavaScript geliştiricileri için bir çekişme noktasıydı.

Belki de şaşırtıcı olmayan bir şekilde Unity, UnityScript desteğini geri çekeceklerini duyurdu ve şimdi bir hizmetten çıkarmak için yerinde zaman çizelgesi . JavaScript'i Unity ile kullanmaya devam edebilirsiniz, ancak bunun sona ereceğini bilerek neden yapasınız?

3. Eski Üçüncü Seçim: Boo

Unity'nin ilk günlerinde, Python benzeri bir dil olan Boo'yu kullanma seçeneği vardı. Rodrigo B. De Oliveira olarak bu belki de şaşırtıcı değil, Boo'nun tasarımcısı , Unity için çalıştı. Dil, .NET ve Mono ile uyumludur ve oyun motoruyla tam olarak uygulanacaktır. Ne yanlış gitti?

Yeterince insan kullanmadı, muhtemelen Python'u taklit etmeye çalıştığını varsayarak. Zamanla Unity, Boo için desteği bıraktı ve UnityScript'te yapılacak değişiklikler, Unity'deki tüm eski Boo komut dosyalarını işe yaramaz hale getirecek. Boo, .NET programlaması için Python benzeri sözdiziminde büyük bir girişim olduğundan, bazıları bunu kaçırılmış bir fırsat olarak görebilir.

Ancak Python severlerin başka bir seçeneği daha var.

4. Tuhaf Seçim: IronPython

Oyun geliştirmek istiyorsanız, Python muhtemelen sizin için uygun bir dil değildir, ancak mümkündür. Charlie Calvert, Microsoft Developer Community blogunda şunları özetliyor: Python'u C#'dan nasıl çalıştırırım --- ama korkaklar için değil. Neredeyse on yıl sonra, IronPython hala aktif geliştirme aşamasındadır.

Kısacası, indirmeniz gerekecek. GitHub'dan IronPython kitaplıkları ve C# projenizde bunlara referans verin. Bu, Python komut dosyalarını C# komut dosyalarından başka herhangi bir kitaplıkta yaptığınız gibi çağırmanıza olanak tanır. IronPython ayrıca şunları sağlar: Python'dan .NET kitaplıklarını çağırma . Bu kulağa ne kadar faydalı gelse de Unity C#'a dayandığından bu işlevsellik yardımcı olmuyor.

IronPython --- ve IronRuby, C# ile Ruby programlama dilini bağlayan kardeş projedir --- harika projelerdir, ancak Unity ile kullanım için pratik değildirler.

5. İlginç Seçim: Lua

Unity için harici bir dilin daha iyi uygulamalarından biri AyKeskinliği ---bir Lua tercümanı. Bu proje, bir dil olarak C#'ın yerini alacak şekilde tasarlanmamıştır, daha çok bir köprü görevi görür. MoonSharp için mükemmel kullanım örneği, oyununuzun oyuncularının Lua dilinde oyun modları oluşturması için bir yol eklemek olacaktır.

Ayrıca nesneleri ve tasarım seviyelerini ana oyun kodunuzdan ayrı olarak tanımlamak için de kullanabilirsiniz.

Halihazırda C# ile kodlama yapıyorsanız ve kodunuzla arayüz oluşturmanın ilginç bir yolunu arıyorsanız, MoonSharp dikkate değer. Ücretsiz olarak sunulduğundan Unity'nin Varlık mağazası , doğrudan projelerinize aktarabilirsiniz.

6. Eklentiler için En İyi Dil: C/C++

Sağlam Unity kitaplığına ve C#'ın sunduğu tüm mevcut araçlara rağmen, bazen kendi eklentilerinizi isteyebilirsiniz. İnsanların eklentileri tercih etmesinin ana nedenleri arasında hız veya başka bir dilde yazılmış bir kod tabanına erişim sayılabilir. Bu komut dosyalarını DLL eklentilerinde oluşturmak, kodun yeniden oluşturulmasından tasarruf sağlar ve bazı durumlarda performansı iyileştirebilir.

Çoğu durumda, eklenti oluşturma için kullanılan dil C++ olacaktır, ancak C de eşit derecede iyi çalışır. Kod bir DLL'de oluşturulduğu sürece, Unity'nin eklenti klasörüne yerleştirilebilir ve kodda referans alınabilir. Bununla birlikte, eğer C/C++'da zaten rahat bir şekilde kodlama yapıyorsanız, C# öğrenmenin nispeten basit bir iş olma olasılığı vardır!

hotmail görünümle aynı mı

7. Eklentiler için Yeni Dil: Rust

Rust, çevresinde çok fazla vızıltı olan bir dildir. Deneyimli programcılar, C++ gibi daha az güvenli dillerde yazmanın tuzaklarından kaçınırken sağladığı inanılmaz miktarda kontrol için onu severler. Rust, geliştiricilerin yüksek performanslı yazılımları hızlı bir şekilde geliştirmelerinin bir yolu olarak 2009 yılında Mozilla tarafından oluşturuldu.

Doğrudan Unity'de Rust yazmak mümkün olmasa da, Unity kodunuzdan Rust'ta yazılan işlevlere ve yöntemlere erişebilirsiniz. Jim Fleming, nasıl yapılacağını ayrıntılı olarak ele alıyor Medium'daki yazısında .

Bu size tanıdık geliyorsa, bunun nedeni Yerel Eklentiler oluşturmanın başka bir yolu olmasıdır. Rust'ın diğer dillerle arayüz oluşturma yeteneğinden yararlanarak Unity's kullanarak Rust işlevlerini doğrudan C# kodundan çağırabilirsiniz. DllImport bağlanmak. Doğal olarak, arada birkaç adım vardır ve Jim'in takip yazısını okumak FFI'leri (yabancı fonksiyon arayüzleri) iyi bir şekilde anlamanın yanı sıra tavsiye edilir!

Basit Bir Seçim

Unity'nin C# olmayan herhangi bir dile karşı tutumu açıktır ve Unity'deki sürekli iyileştirmeler bu tek görüşlülüğe dayanır. Bunu, Microsoft'un bir dil olarak sürekli C# geliştirmesiyle birleştirin ve Unity oyun geliştirme için C# öğrenmek hiç de kolay değil. Ve kontrol ettiğinizden emin olun Oyun geliştirmeyi öğrenmenin daha kolay bir yolu için Unity Learn .

Ancak bu tek seçeneğiniz değil, Unity sadece bir motor ve bol miktarda var. oyun geliştirme yazılımı seçenekleri ndan şeçmek.

Paylaş Paylaş Cıvıldamak E-posta Canon vs. Nikon: Hangi Fotoğraf Makinesi Markası Daha İyi?

Canon ve Nikon, kamera endüstrisindeki en büyük iki isim. Ancak hangi marka daha iyi kamera ve lens yelpazesi sunuyor?

Sonrakini Oku
İlgili konular
  • Programlama
  • JavaScript
  • Oyun Geliştirme
  • C
  • Birlik
Yazar hakkında Ian Buckley(216 Makale Yayınlandı)

Ian Buckley, Berlin, Almanya'da yaşayan serbest gazeteci, müzisyen, sanatçı ve video yapımcısıdır. Yazmadığı veya sahnede olmadığı zamanlarda, çılgın bir bilim insanı olma umuduyla kendin yap elektroniği veya koduyla uğraşıyor.

Ian Buckley'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın