7 Unity játékfejlesztési nyelv, amit meg kell tanulni: melyik a legjobb?

7 Unity játékfejlesztési nyelv, amit meg kell tanulni: melyik a legjobb?

A játékok fejlesztése soha nem volt ilyen egyszerű. Az olyan játékfejlesztő platformok, mint a Unity, lehetővé teszik az egyszerű 2D-s platformerektől a teljesen részletes 3D-s első személyű lövöldözésig mindent. A Unity ingyenes a kis fejlesztők számára, és rengeteg oktatóanyag található arról, hogyan lehet a legjobban használni a szerkesztőt az ötletek prototípusának elkészítéséhez.





Ha megtanulja használni a Unity programot, csak eddig juthat el. A játék valódi magja az a kód lesz, amely meghatározza a viselkedését. Nehéz lehet kitalálni, hogy melyik nyelvet kell megtanulni a játékfejlesztéshez, de a Unity esetében ez egyszerű.





a legjobb ingyenes élő TV -alkalmazás androidra

1. A legjobb választás: C#

Bárki, aki Unity-vel kezdi, vagy bárki, aki már ismeri az objektum-orientált programozást, a C# a megfelelő nyelv a Unity számára. Valójában a C# az egyetlen nyelv, amelyet érdemes megtanulni a platform számára, és jó okkal.





A Unity a Mono programot használja, amely a Microsoft .NET keretrendszerének platformok közötti megvalósítása. A C# a .NET elsődleges nyelve, és a Unity összes könyvtára a C# kód használatával készült. Azt mondani, hogy a C# az Unity nyelve, nem lenne túlzás. A Unity világossá tette, hogy a C# nyelvet tekintik az egyetlen nyelvnek, amelyet a jövőben használni kell.

Ez jó hír, mivel a C# erőteljes nyelv, és könnyen megtanulható. Az egység csak egy a sok közül jó okok a tanulásra C# , és ha kezdő vagy, még hozzáférhetőbbnek is találhatod. A játékok fejlesztése strukturálja a tanulást, és a projekt-alapú célok az új tantárgyak jobb megértéséhez vezetnek.



A bevezetésével C# job rendszer és ECS , A Unity egyre tovább tolja, amit a C# -al lehet tenni, és az új Burst fordító gyorsabbá teszi, mint valaha.

2. A jelenlegi alternatíva: JavaScript

A Unity támogatja a JavaScriptet is-UnityScript néven. A megjelenés óta a JavaScript a C#, mint a teljes funkcionalitású Unity fejlesztési nyelv mellett helyezkedik el. A Unity parancsfájl -referencia példakódot tartalmazott a C# és a JavaScript kódban is a könyvtár legtöbb eleméhez.





Ez hasznos volt a JavaScript háttérből érkező fejlesztők számára, mivel a kód felépítésének különbözőségei ellenére ismerős szintaxist használhattak. Volt azonban egy probléma.

Míg a UnityScript hasonló a JavaScripthez --- nem az. Az UnityScript rendelkezik osztályokkal, amelyekkel a JavaScript nem rendelkezik. A JavaScript olyan szolgáltatásai, mint a többváltozós deklaráció és az opcionális pontosvesszők, nem érhetők el az UnityScriptben.





Talán döntő fontosságú, hogy a JavaScript segítségének keresése az Unity projektekben mindig zavart okozott, mivel a legtöbben JavaScript -ként emlegették, nem pedig UnityScript -ként. Mind a webdizájn, mind a játékfejlesztés eredményei elmosódtak, és a nyelvek közötti különbség vitatott pont volt a tiszta JavaScript -fejlesztők számára.

Talán nem meglepő, hogy az Unity bejelentette, hogy visszavonják az UnityScript támogatását, és most van egy az ütemterv a leszereléshez . Még mindig használhatja a JavaScriptet az Unityvel, de tudva, hogy ennek vége lesz, miért tenné?

3. A régi harmadik választás: Boo

A Unity első napjaiban lehetőség volt a Boo --- Python-szerű nyelv használatára. Ez talán nem meglepő, mint Rodrigo B. De Oliveira, Boo tervezője , az Unity -nek dolgozott. A nyelv kompatibilis a .NET és a Mono programokkal, és teljes mértékben megvalósítható lenne a játék motorjával. Mi romlott el?

Nem elég sokan használták, valószínűleg feltételezve, hogy pusztán a Python utánzására törekszik. Idővel az Unity megszüntette a Boo támogatását, és az UnityScript közelgő változásai az összes régi Boo -szkriptet használhatatlanná teszik az Unity -ben. Vannak, akik ezt kihagyott lehetőségnek tekintik, mivel a Boo nagyszerű kísérlet volt a .NET programozás Python-szerű szintaxisára.

A Python szerelmeseinek azonban van egy másik lehetőségük.

4. A páratlan választás: IronPython

Ha játékokat szeretne fejleszteni, akkor valószínűleg nem a Python a megfelelő nyelv, de lehetséges. Charlie Calvert a Microsoft fejlesztői közösség blogjában vázolja fel hogyan futtassam a Python -t a C# -ból --- de nem a gyenge szívűeknek való. Majdnem tíz évvel később az IronPython még mindig aktív fejlesztés alatt áll.

Röviden, le kell töltenie a IronPython könyvtárak a GitHub -ból és hivatkozzon rájuk a C# projektben. Ez lehetővé teszi, hogy a Python parancsfájlokat a C# szkriptekből hívja meg, mint bármely más könyvtárat. Az IronPython ezt is lehetővé teszi .NET könyvtárak hívása a Pythonból . Bármennyire is hasznosnak hangzik, mivel a Unity a C# -ra támaszkodik, ez a funkció nem segít.

Az IronPython --- és az IronRuby testvérprojekt, amely összekapcsolja a C# -ot a Ruby programozási nyelvvel-fantasztikus projektek, de nem praktikusak a Unity-vel való használatra.

5. Az érdekes választás: Lua

A Unity számára a külső nyelv egyik legjobb megvalósítása az MoonSharp --- egy Lua tolmács. Ez a projekt nem a C# nyelv helyettesítésére szolgál, inkább hídként működik. A MoonSharp tökéletes felhasználási módja az lenne, ha a játék játékosai módot adnának a játékmódok létrehozására a Lua nyelven.

Használhatja azt is az objektumok és a tervezési szintek leírására az alapvető játékkódtól.

Ha már C# -ban kódol, és érdekes módot keres a kóddal való interfészre, akkor érdemes megfontolni a MoonSharp -ot. Mivel ingyenesen elérhető Az Unity Asset boltja , közvetlenül importálhatja projektjeibe.

6. A legjobb nyelv a beépülő modulokhoz: C/C ++

A robusztus Unity könyvtár és a C# által rendelkezésre álló összes eszköz ellenére néha szükség lehet saját beépülő modulokra. A fő okok, amelyek miatt a felhasználók a beépülő modulokat választják, többek között a sebesség vagy a más nyelven írt kódbázishoz való hozzáférés. Ha ezeket a szkripteket DLL -beépülő modulokká építi, mentheti az újrafeldolgozó kódot, és bizonyos esetekben javíthatja a teljesítményt.

A legtöbb esetben a C ++ lesz a plugin létrehozásához használt nyelv, de a C ugyanolyan jól működik. Amíg a kód DLL -be épül, addig az Unity plugin mappájába helyezhető, és kódban hivatkozhat rá. A valószínűség azonban az, hogy ha már kényelmesen kódol C/C ++ nyelven, akkor a C# tanulása viszonylag egyszerű feladat lenne!

a Windows 10 kikapcsolja a gyors indítást

7. Új nyelv a beépülő modulokhoz: Rust

A rozsda olyan nyelv, amely körül nagy a nyüzsgés. A tapasztalt programozók imádják a hihetetlen mennyiségű irányítást, amit ad, miközben elkerüli a kevésbé biztonságos nyelveken, például a C ++ nyelvű írás buktatóit. A Rustot a Mozilla hozta létre 2009-ben, hogy a fejlesztők gyorsan fejleszthessenek nagy teljesítményű szoftvereket.

Bár nem lehet közvetlenül írni a Rust -ot a Unity -ben, a Unity -kódból elérheti a Rust -ban írt funkciókat és módszereket. Jim Fleming részletesen bemutatja, hogyan kell ezt megtenni bejegyzésében a Mediumon .

Ha ez ismerősnek tűnik, azért, mert ez egy másik módja a natív beépülő modulok létrehozásának. Kihasználva a Rust azon képességét, hogy más nyelvekkel tudjon kapcsolódni, közvetlenül hívhatja a Rust függvényeket a C# kódból a Unity DllImport tulajdonság. Természetesen több lépés is van közöttük, és elolvastam Jim követő posztját az FFI -k (idegen függvény interfészek) jó megértése mellett ajánlott!

Egyszerű választás

A Unity hozzáállása minden olyan nyelvhez, amely nem C#, világos, és a Unity folyamatos fejlesztései erre az együgyűségre támaszkodnak. Párosítsa ezt a Microsoft folyamatos C# nyelvfejlesztésével, és a C# tanulása a Unity játékfejlesztéshez nem gond. És mindenképpen nézd meg Unity Learn a játékfejlesztés egyszerűbb módja .

Ez azonban nem az egyetlen lehetőség, a Unity csak egy motor, és rengeteg van játékfejlesztő szoftver lehetőségek választani.

Részvény Részvény Csipog Email Canon vs Nikon: Melyik a jobb márka?

A Canon és a Nikon a két legnagyobb név a kameraiparban. De melyik márka kínálja a kamerák és objektívek jobb választékát?

Olvassa tovább
Kapcsolódó témák
  • Programozás
  • JavaScript
  • Játékfejlesztés
  • C
  • Egység
A szerzőről Ian Buckley(216 megjelent cikk)

Ian Buckley szabadúszó újságíró, zenész, előadó és videó producer, Berlinben, Németországban él. Amikor éppen nem ír vagy a színpadon, barkácsol elektronikával vagy kóddal, abban a reményben, hogy őrült tudós lesz.

Bővebben: Ian Buckley

Iratkozzon fel hírlevelünkre

Csatlakozz hírlevelünkhöz, ahol technikai tippeket, véleményeket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!

Feliratkozáshoz kattintson ide