vývoj her nebyl nikdy jednodušší. Platformy pro vývoj her, jako je Unity, umožňují vytvářet vše od jednoduchých 2D plošinovek až po plně podrobné 3D střílečky první osoby. Unity je zdarma pro malé vývojáře, a tam je nepřeberné množství návodů o tom, jak nejlépe použít editor prototypovat své nápady.
naučit se používat program Unity vás zatím dostane pouze. Skutečným jádrem vaší hry bude kód, který určuje jeho chování., Zjistit, který jazyk se naučit pro vývoj her může být těžké – – – ale v případě jednoty je to jednoduché.
1. Nejlepší Volba: C#
Pro každého, kdo začíná s Unity, nebo někdo s předchozí znalostí objektově orientovaného programování, C# je právě jazyk se naučit pro Jednotu. Ve skutečnosti je C# jediným jazykem, který stojí za to se učit pro platformu, as dobrým důvodem.
Unity používá Mono, což je multiplatformní implementace Microsoft. NET framework. C# je primární jazyk. NET a všechny knihovny Unity jsou postaveny pomocí kódu C#., Říci, že C# je jazyk jednoty, by nebylo přehnané. Jednota dala jasně najevo, že C# považují za jediný jazyk pro použití s motorem vpřed.
to je dobrá zpráva, protože C# je silný jazyk a snadno se učí. Jednota je jen jedním z mnoha dobrých důvodů, proč se naučit C#, a pokud jste začátečník, můžete ji dokonce najít přístupnější. Vývoj her dává strukturu učení a cíle založené na projektech vedou k většímu pochopení nových předmětů.,
Existuje mnoho programovacích jazyků, tak který z nich byste si měli vybrat jeden, aby se to naučit? Zde je několik důvodů, proč se učit C#.
se zavedením systému C# job a ECS Unity tlačí to, co lze udělat s C# dále a dále, a nový kompilátor Burst to zrychlí než kdy předtím.
2. Současná alternativa: JavaScript
Unity také podporuje JavaScript – – – známý jako UnityScript., Od vydání JavaScript seděl vedle sebe s C# jako plně vybavený jazyk pro vývoj jednoty. Odkaz na skriptování Unity měl příkladový kód jak v C#, tak v JavaScriptu pro většinu prvků knihovny.
to bylo užitečné pro vývojáře přicházející z pozadí JavaScriptu, protože navzdory rozdílům ve způsobu, jakým byl kód strukturován, mohli použít známou syntaxi. Byl však problém.
zatímco UnityScript vypadá podobně jako JavaScript – – – to není. UnityScript má třídy, něco, co JavaScript není., Vlastnosti JavaScriptu, jako je více proměnných deklarace a volitelných polokolon nejsou k dispozici v UnityScript.
možná zásadní je, že hledání javascriptové pomoci na projektech Unity vždy způsobilo zmatek, protože většina lidí ji označovala spíše jako JavaScript než UnityScript. Výsledky jak pro web design, tak pro vývoj her se rozostřily a rozdíl mezi jazyky byl sporným bodem pro čisté vývojáře JavaScriptu.,
Možná nepřekvapivě, Jednoty oznámila, že se chystá odstoupit podpora pro UnityScript a nyní je timeline v místě vyřadit z provozu. Stále můžete používat JavaScript s Unity, ale s vědomím, že to skončí, proč byste?
3. Stará třetí volba: Boo
v prvních dnech Unity byla možnost použít Boo – – – Python podobný jazyk. To je možná nepřekvapivé, protože Rodrigo B. De Oliveira, Booův designér, pracoval pro Unity. Jazyk je kompatibilní s. NET a Mono a bude plně implementován s herním motorem. Co se pokazilo?,
málo lidí ji používalo, pravděpodobně za předpokladu, že se pouze pokoušelo napodobit Python. Postupem času Unity upustila podporu Boo a nadcházející změny UnityScript způsobí, že všechny staré Boo skripty budou v Unity zbytečné. Někteří by to mohli vidět jako zmeškanou příležitost, protože Boo byl skvělý pokus o syntaxi podobnou Pythonu pro programování.Net.
milovníci Pythonu však mají jinou možnost.
4. Zvláštní volba: IronPython
Pokud chcete vyvíjet hry, Python pravděpodobně není jazyk pro vás, ale je to možné., Ve svém blogu Microsoft Developer Community, Charlie Calvert nastiňuje, jak spustit Python z C# – – – ale není to pro slabé srdce. Téměř o deset let později je IronPython stále v aktivním vývoji.
stručně řečeno, budete muset stáhnout knihovny IronPython z GitHubu a odkazovat na ně ve vašem projektu C#. To vám umožní volat Python skripty z C # skriptů, stejně jako byste jakékoliv jiné knihovny. IronPython také umožňuje volání. NET knihovny z Pythonu. Jak užitečné, jak to zní, protože Unity spoléhá na C# Tato funkce nepomůže.,
IronPython a IronRuby, je to sesterský projekt propojení C# s Ruby programovací jazyk—jsou fantastické projekty, ale nejsou praktické pro použití s Unity.
5. Zajímavá volba: Lua
jednou z lepších implementací externího jazyka pro jednotu je moonsharp–tlumočník Lua. Tento projekt není navržen tak, aby nahradil C# jako jazyk, více působí jako most. Ideální případ použití pro MoonSharp by bylo přidat způsobem pro hráče vaší hry k vytvoření herních modů v jazyce Lua.,
můžete jej také použít k popisu objektů a úrovní designu odděleně od základního herního kódu.
Pokud již kódujete v C# a hledáte zajímavý způsob, jak propojit svůj kód, MoonSharp stojí za zvážení. Protože je k dispozici zdarma na Unity Asset store, můžete jej importovat přímo do vašich projektů.
6. Nejlepší jazyk pro pluginy: c / c++
navzdory robustní knihovně Unity a všem dostupným nástrojům, které C # dává, někdy možná budete chtít své vlastní pluginy., Hlavní důvody, proč se lidé rozhodnou pro pluginy patří rychlost, nebo přístup k kód již napsaný v jiném jazyce. Vytváření těchto skriptů do pluginů DLL ukládá předělávací kód a v některých případech může zlepšit výkon.
ve většině případů bude c++ jazykem používaným pro vytváření pluginů, ale C bude fungovat stejně dobře. Pokud se kód staví do DLL, může být umístěn do složky pluginů Unity a odkazován v kódu. Pravděpodobnost je však, pokud jste již pohodlné kódování v c / c++, že učení C# by byl relativně jednoduchý úkol!
7., Nový jazyk pro pluginy: Rust
Rust je jazyk se spoustou bzučení kolem něj. Zkušení programátoři ji milují za neuvěřitelné množství kontroly, které dává, a zároveň se vyhýbají nástrahám psaní v méně bezpečných jazycích, jako je C++. Rust byl vytvořen Mozillou v roce 2009 jako způsob, jak vývojáři rychle vyvíjet vysoce výkonný software.
i když není možné přímo psát Rust in Unity, můžete přistupovat k funkcím a metodám napsaným v Rustu z kódu Unity. Jim Fleming pokrývá, jak to udělat podrobně ve svém příspěvku na médiu.,
Pokud se to zdá známé, je to proto, že je to další způsob, jak vytvořit nativní pluginy. Využitím Rustovy schopnosti rozhraní s jinými jazyky můžete volat funkce Rust přímo z kódu C# pomocí atributu Dlliport Unity. Přirozeně, existuje několik kroků mezi tím, a čtení Jimova následného příspěvku spolu s získáním dobrého porozumění ffis (rozhraní cizích funkcí) je doporučeno!
jednoduchá volba
postoj jednoty k jakémukoli jazyku, který není C#, je jasný a neustálé zlepšování jednoty se spoléhá na tuto jednotu., Spojte to s pokračujícím zlepšováním C# společnosti Microsoft jako jazyka a učení C# pro vývoj her Unity není nasnadě. A nezapomeňte se podívat na Unity Learn pro snadnější způsob, jak se naučit vývoj her.
to však není vaše jediná možnost, Unity je pouze jeden motor a existuje spousta možností softwaru pro vývoj her, ze kterých si můžete vybrat.
- Programování
- JavaScript
- Vývoj Hry
- C
- Jednoty
O Autorovi
Ian Buckley je nezávislý novinář, hudebník, performer a video producent žijící v Berlíně, Německo. Když nepíše nebo na jevišti, pohrává si s DIY elektronikou nebo kódem v naději, že se stane šíleným vědcem.
Více od Iana Buckleyho