7 Bahasa Pengembangan Permainan Perpaduan untuk Belajar: Mana Yang Terbaik?

7 Bahasa Pengembangan Permainan Perpaduan untuk Belajar: Mana Yang Terbaik?

Membangunkan permainan tidak pernah semudah ini. Platform pengembangan permainan seperti Unity memungkinkan untuk membuat semuanya dari platformer 2D sederhana hingga penembak orang pertama 3D yang terperinci. Unity percuma untuk pemaju kecil, dan terdapat banyak tutorial mengenai cara terbaik menggunakan editor untuk memprototaip idea anda.





Mempelajari cara menggunakan program Unity hanya akan membawa anda sejauh ini. Inti sebenar permainan anda adalah kod yang menentukan kelakuannya. Mengetahui bahasa mana yang harus dipelajari untuk pengembangan permainan sukar --- tetapi dalam kes Unity, itu mudah.





windows tidak dapat mengesan proksi rangkaian ini

1. Pilihan Terbaik: C #

Bagi sesiapa yang bermula dengan Unity, atau sesiapa yang mempunyai pengetahuan sebelumnya mengenai pengaturcaraan berorientasikan objek, C # adalah bahasa yang tepat untuk belajar untuk Unity. Sebenarnya, C # adalah satu-satunya bahasa yang layak dipelajari untuk platform ini, dan dengan alasan yang baik.





Unity menggunakan Mono, yang merupakan pelaksanaan lintas-platform kerangka Microsoft .NET. C # adalah bahasa utama .NET, dan semua perpustakaan Unity dibina menggunakan kod C #. Untuk mengatakan bahawa C # adalah bahasa Perpaduan tidak akan berlebihan. Unity telah memperjelas bahawa mereka menganggap C # sebagai satu-satunya bahasa yang dapat digunakan dengan mesin maju.

Ini adalah berita baik, kerana C # adalah bahasa yang hebat dan mudah dipelajari. Perpaduan hanyalah salah satu daripada banyak alasan yang baik untuk belajar C # , dan jika anda seorang pemula, anda mungkin merasa lebih mudah diakses. Membangun permainan memberi struktur pembelajaran, dan tujuan berdasarkan projek membawa kepada pemahaman yang lebih besar mengenai mata pelajaran baru.



Dengan pengenalan Sistem pekerjaan C # dan ECS , Unity mendorong apa yang dapat dilakukan dengan C # semakin jauh, dan penyusun Burst yang baru menjadikannya lebih pantas daripada sebelumnya.

2. Alternatif Semasa: JavaScript

Unity juga menyokong JavaScript --- dikenali sebagai UnityScript. Sejak dilancarkan, JavaScript telah duduk berdampingan dengan C # sebagai bahasa pengembangan Unity yang lengkap. Rujukan skrip Unity mempunyai contoh kod dalam C # dan JavaScript untuk kebanyakan elemen perpustakaan.





Ini berguna untuk pembangun yang berasal dari latar belakang JavaScript kerana walaupun terdapat perbezaan cara kod tersusun mereka dapat menggunakan sintaks yang sudah biasa. Namun, ada masalah.

Walaupun UnityScript nampak serupa dengan JavaScript --- tidak. UnityScript mempunyai kelas, sesuatu yang tidak dilakukan oleh JavaScript. Ciri-ciri JavaScript seperti perisytiharan pelbagai dan titik koma pilihan tidak terdapat di UnityScript.





Mungkin yang paling penting, mencari bantuan JavaScript pada projek Unity selalu menimbulkan kekeliruan kerana kebanyakan orang menyebutnya sebagai JavaScript dan bukannya UnityScript. Hasil untuk kedua-dua reka bentuk web dan pengembangan permainan menjadi kabur, dan perbezaan antara bahasa adalah titik pertikaian bagi pengembang JavaScript yang murni.

Mungkin tidak menghairankan, Unity mengumumkan mereka akan menarik sokongan untuk UnityScript, dan sekarang ada garis masa di tempat untuk menyahaktifkannya . Anda masih boleh menggunakan JavaScript dengan Unity, tetapi mengetahui ia akan berakhir, mengapa anda melakukannya?

3. Pilihan Ketiga Lama: Boo

Pada masa awal Unity, ada pilihan untuk menggunakan Boo --- bahasa seperti Python. Ini mungkin tidak mengejutkan kerana Rodrigo B. De Oliveira, Pereka Boo , bekerja untuk Perpaduan. Bahasa itu sesuai dengan .NET dan Mono dan akan dilaksanakan sepenuhnya dengan mesin permainan. Apa yang salah?

Tidak cukup orang yang menggunakannya, mungkin menganggapnya hanya berusaha meniru Python. Lama kelamaan, Unity menurunkan sokongan untuk Boo, dan perubahan yang akan datang pada UnityScript akan menjadikan semua skrip Boo lama tidak berguna di Unity. Sebilangan mungkin melihat ini sebagai peluang yang terlepas, kerana Boo adalah usaha hebat dalam sintaks seperti Python untuk pengaturcaraan .NET.

Pecinta Python memang mempunyai pilihan lain.

4. Pilihan Aneh: IronPython

Sekiranya anda ingin mengembangkan permainan, Python mungkin bukan bahasa untuk anda, tetapi mungkin. Dalam blog Microsoft Developer Community, Charlie Calvert menggariskan cara menjalankan Python dari C # --- tetapi bukan untuk orang yang lemah lembut. Hampir sepuluh tahun kemudian, IronPython masih dalam perkembangan aktif.

Ringkasnya, anda perlu memuat turun Perpustakaan IronPython dari GitHub dan rujuk mereka dalam projek C # anda. Ini akan membolehkan anda memanggil skrip Python dari skrip C # seperti yang anda lakukan di perpustakaan lain. IronPython juga memungkinkan untuk memanggil perpustakaan .NET dari Python . Sama berguna seperti ini, kerana Unity bergantung pada C # fungsi ini tidak membantu.

IronPython --- dan IronRuby, ini adalah projek saudara yang menghubungkan C # dengan bahasa pengaturcaraan Ruby --- adalah projek yang hebat, tetapi tidak praktikal untuk digunakan dengan Unity.

5. Pilihan Menarik: Lua

Salah satu pelaksanaan bahasa luar untuk Unity yang lebih baik adalah BulanSharp --- seorang jurubahasa Lua. Projek ini tidak dirancang untuk menggantikan C # sebagai bahasa, lebih berfungsi sebagai jambatan. Kes penggunaan yang sempurna untuk MoonSharp adalah menambah cara pemain permainan anda membuat mod permainan dalam bahasa Lua.

Anda juga boleh menggunakannya untuk menggambarkan objek dan tahap reka bentuk secara berasingan dari kod permainan teras anda.

Sekiranya anda sudah membuat pengekodan di C # dan mencari cara menarik untuk berinteraksi dengan kod anda, MoonSharp patut dipertimbangkan. Oleh kerana ia tersedia secara percuma pada Kedai Aset Unity , anda boleh mengimportnya terus ke projek anda.

6. Bahasa Terbaik untuk Pemalam: C / C ++

Walaupun perpustakaan Unity yang mantap dan semua alat yang disediakan oleh C #, kadangkala anda mungkin memerlukan pemalam anda sendiri. Sebab utama pengguna memilih pemalam termasuk kelajuan, atau akses ke pangkalan data yang sudah ditulis dalam bahasa lain. Membina skrip ini ke pemalam DLL akan menjimatkan semula kod dan dapat meningkatkan prestasi dalam beberapa kes.

Dalam kebanyakan kes, C ++ akan menjadi bahasa yang digunakan untuk pembuatan plugin, tetapi C akan berfungsi dengan baik. Selagi kod itu masuk ke dalam DLL, ia boleh dimasukkan ke dalam folder plugin Unity dan dirujuk dalam kod. Walau bagaimanapun, kemungkinannya adalah jika anda sudah selesa membuat kod dalam C / C ++, bahawa belajar C # akan menjadi tugas yang agak mudah!

piawaian 802.11 dikenali sebagai:

7. Bahasa Baru untuk Pemalam: Karat

Karat adalah bahasa dengan banyak keributan di sekitarnya. Pengaturcara yang berpengalaman menyukainya kerana jumlah kawalan yang luar biasa yang diberikannya sambil mengelakkan masalah penulisan dalam bahasa yang kurang selamat seperti C ++. Rust diciptakan oleh Mozilla pada tahun 2009, sebagai cara bagi pembangun untuk mengembangkan perisian berprestasi tinggi dengan cepat.

Walaupun tidak boleh menulis Rust di Unity secara langsung, anda boleh mengakses fungsi dan kaedah yang ditulis dalam Rust dari kod Unity anda. Jim Fleming merangkumi cara melakukannya secara terperinci dalam jawatannya di Medium .

Sekiranya ini kelihatan biasa, ini kerana cara lain untuk membuat Plugin Asli. Dengan memanfaatkan kemampuan Rust untuk berinteraksi dengan bahasa lain, anda boleh memanggil fungsi Rust terus dari kod C # menggunakan Unity's DllImport atribut. Secara semula jadi, terdapat beberapa langkah di antara, dan membaca catatan susulan Jim bersama dengan mendapatkan pemahaman yang baik tentang FFI (antaramuka fungsi asing) disarankan!

Pilihan Ringkas

Sikap Unity terhadap bahasa apa pun yang bukan C # jelas, dan peningkatan berterusan terhadap Unity bergantung pada pemikiran tunggal ini. Pasangkan ini dengan peningkatan berterusan C # Microsoft sebagai bahasa, dan belajar C # untuk pengembangan permainan Unity adalah tidak perlu. Dan pastikan anda melihatnya Unity Learn untuk kaedah belajar permainan yang lebih mudah .

Ini bukan satu-satunya pilihan anda, Unity hanya satu mesin, dan terdapat banyak pilihan perisian pembangunan permainan untuk dipilih.

Berkongsi Berkongsi Tweet E-mel Canon vs Nikon: Jenama Kamera mana yang lebih baik?

Canon dan Nikon adalah dua nama terbesar dalam industri kamera. Tetapi jenama mana yang menawarkan barisan kamera dan lensa yang lebih baik?

Baca Seterusnya
Topik-topik yang berkaitan
  • Pengaturcaraan
  • JavaScript
  • Pembangunan Permainan
  • C
  • Perpaduan
Mengenai Pengarang Ian Buckley(216 Artikel Diterbitkan)

Ian Buckley adalah wartawan bebas, pemuzik, pemain dan penerbit video yang tinggal di Berlin, Jerman. Ketika dia tidak menulis atau di atas pentas, dia bermain-main dengan elektronik DIY atau kod dengan harapan menjadi saintis gila.

Lagi Dari Ian Buckley

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan