7 Unity mänguarenduskeelt: milline on parim?

7 Unity mänguarenduskeelt: milline on parim?

Mängude arendamine pole kunagi olnud lihtsam. Mänguarendusplatvormid, nagu Unity, võimaldavad luua kõike alates lihtsatest 2D-platvormimisseadmetest kuni täielikult detailsete 3D-esimese inimese laskuriteni. Unity on väikestele arendajatele tasuta ja on palju õpetusi selle kohta, kuidas redaktorit oma ideede prototüüpimiseks kõige paremini kasutada.





Programmi Unity kasutamise õppimine viib teid seni. Teie mängu tõeline tuum on kood, mis määrab selle käitumise. Mängude arendamiseks vajaliku keele välja selgitamine võib olla raske --- kuid Unity puhul on see lihtne.





kuidas vähendada mälukasutust Windows 10

1. Parim valik: C#

Kõigile, kes alustavad Unityga või kellel on varasemad teadmised objektorienteeritud programmeerimisest, on C# Unity jaoks õige keel. Tegelikult on C# platvormi jaoks ainus keel, mida tasub õppida, ja seda põhjusega.





Unity kasutab Monot, mis on Microsofti .NET-raamistiku platvormideülene rakendus. C# on .NETi esmane keel ja kõik Unity raamatukogud on ehitatud C# koodi abil. Öelda, et C# on ühtsuse keel, poleks liialdus. Unity on selgelt öelnud, et nad peavad C# ainsaks keeleks, mida saab edasi kasutada mootoriga.

See on hea uudis, kuna C# on võimas keel ja seda on lihtne õppida. Ühtsus on vaid üks paljudest head põhjused õppida C# , ja kui olete algaja, võite isegi leida selle kättesaadavamaks. Mängude arendamine annab õppimisele struktuuri ja projektipõhised eesmärgid viivad uute ainete parema mõistmiseni.



Sissejuhatusega C# töösüsteem ja ECS , Unity surub C# -ga tehtavat üha kaugemale ja uus Burst -kompilaator muudab selle kiiremaks kui kunagi varem.

2. Praegune alternatiiv: JavaScript

Unity toetab ka JavaScripti-tuntud kui UnityScript. Alates väljaandmisest on JavaScript istunud kõrvuti C# -ga, mis on täisfunktsionaalne Unity arenduskeel. Unity skriptiviidel oli enamiku raamatukogu elementide näidiskood nii C# kui ka JavaScriptis.





See oli kasulik JavaScripti taustast pärit arendajatele, kuna vaatamata koodi struktuuri erinevustele said nad kasutada tuttavat süntaksit. Siiski tekkis probleem.

Kuigi UnityScript tundub sarnane JavaScriptiga --- see pole nii. UnityScriptil on klassid, mida JavaScript mitte. JavaScripti funktsioonid, nagu mitme muutuja deklareerimine ja valikulised semikoolonid, pole UnityScriptis saadaval.





Võib -olla on ülioluline, et JavaScripti abi otsimine Unity projektides on alati tekitanud segadust, kuna enamik inimesi nimetas seda pigem JavaScripti kui UnityScripti jaoks. Nii veebidisaini kui ka mänguarenduse tulemused hägusid koos ning keelte erinevus oli puhaste JavaScripti arendajate jaoks vaidluskoht.

Võib -olla pole üllatav, et Unity teatas, et kavatseb UnityScripti toetuse tühistada ja nüüd on a ajakava selle lõpetamiseks . Saate Unityga JavaScripti endiselt kasutada, kuid miks te peaksite teadma, et see hakkab lõppema?

3. Vana kolmas valik: Boo

Unity algusaegadel oli võimalus kasutada Boo --- Pythoni-taolist keelt. See pole ehk üllatav, sest Rodrigo B. De Oliveira, Boo disainer , töötas Unity heaks. Keel ühildub .NET -i ja Mono -versiooniga ning oleks täielikult rakendatud mängumootoriga. Mis läks valesti?

Seda ei kasutanud piisavalt inimesed, eeldades tõenäoliselt, et see üritab lihtsalt Pythonit jäljendada. Aja jooksul kaotas Unity Boo toe ja UnityScripti eelseisvad muudatused muudavad Unity's kõik vanad Boo skriptid kasutuks. Mõni võib seda pidada kasutamata võimaluseks, kuna Boo oli suurepärane katse Pythoni-laadsele .NET-i programmeerimise süntaksile.

Pythoni armastajatel on aga veel üks võimalus.

4. Kummaline valik: IronPython

Kui soovite mänge arendada, pole Python tõenäoliselt teie jaoks keel, kuid see on võimalik. Charlie Calvert kirjeldab oma Microsofti arendajate kogukonna ajaveebis kuidas käivitada Pythoni C# -st --- aga see pole nõrganärvilistele. Peaaegu kümme aastat hiljem on IronPython endiselt aktiivselt arendamisel.

Lühidalt, peate alla laadima IronPythoni teegid GitHubist ja viidake neile oma C# projektis. See võimaldab teil helistada Pythoni skriptidele C# skriptidest sarnaselt mis tahes teisele teekile. IronPython võimaldab seda ka helistades .NET raamatukogudesse Pythonist . Nii kasulik kui see ka kõlab, kuna Unity tugineb C# -le, ei aita see funktsioon.

IronPython --- ja IronRuby, see on õdeprojekt, mis ühendab C# Ruby programmeerimiskeelega-on fantastilised projektid, kuid need ei ole Unityga praktilised.

5. Huvitav valik: Lua

Üks paremaid välise keele rakendusi Unity jaoks on MoonSharp --- Lua tõlk. See projekt ei ole mõeldud asendama C# keelt, vaid pigem silda. MoonSharpi ideaalne kasutusviis oleks teie mängu mängijatele omamoodi lisada mängumooduleid luua keeles.

Saate seda kasutada ka objektide ja kujundustasemete kirjeldamiseks oma põhilisest mängukoodist.

Kui kodeerite juba C# -is ja otsite huvitavat viisi oma koodiga liidestamiseks, tasub MoonSharpi kaaluda. Kuna see on tasuta saadaval Unity varade pood , saate selle otse oma projektidesse importida.

6. Parim keel pluginate jaoks: C/C ++

Vaatamata tugevale Unity raamatukogule ja kõigile saadaolevatele tööriistadele, mida C# pakub, võite mõnikord soovida oma pistikprogramme. Peamised põhjused, miks inimesed pistikprogramme valivad, hõlmavad kiirust või juurdepääsu teises keeles juba kirjutatud koodibaasile. Nende skriptide koostamine DLL -pistikprogrammideks salvestab ümbertegemise koodi ja võib mõnel juhul parandada jõudlust.

Enamikul juhtudel on pluginate loomisel kasutatav keel C ++, kuid C töötaks sama hästi. Niikaua kui kood ehitatakse DLL -i, saab selle paigutada Unity'i pistikprogrammi kausta ja viidata koodis. Tõenäosus on aga see, et kui teil on juba mugav C/C ++ kodeerida, oleks C# õppimine suhteliselt lihtne ülesanne!

kuidas saada odavalt Windows 10

7. Pluginate uus keel: Rust

Rooste on keel, mille ümber on palju suminat. Kogenud programmeerijad armastavad seda selle uskumatu hulga kontrolli eest, vältides samas lõkse, kui kirjutatakse vähem turvalistes keeltes nagu C ++. Rust loodi Mozilla poolt 2009. aastal, et arendajad saaksid kiiresti välja töötada suure jõudlusega tarkvara.

Kuigi Rustit pole võimalik Unity'is otse kirjutada, pääsete oma Unity -koodist juurde Rustis kirjutatud funktsioonidele ja meetoditele. Jim Fleming kirjeldab üksikasjalikult, kuidas seda teha oma postituses Mediumis .

Kui see tundub tuttav, siis sellepärast, et see on veel üks viis natiivsete pistikprogrammide loomiseks. Kasutades Rusti võimet liituda teiste keeltega, saate helistada Rusti funktsioonidele otse C# koodist, kasutades Unity DllImport atribuut. Loomulikult on nende vahel mitu sammu ja lugedes Jimi järelpostitust koos FFI -de (välisfunktsiooniliidesed) hea mõistmisega on soovitatav!

Lihtne valik

Unity suhtumine igasse keelde, mis ei ole C#, on selge ja Unity pidev täiustamine tugineb sellele üksmeelsusele. Paarige see koos Microsofti pideva C# keele täiustamisega ja C# õppimine Unity mängude arendamiseks on lihtne. Ja kontrollige kindlasti Unity Learn - lihtsam viis mänguarenduse õppimiseks .

See pole aga teie ainus võimalus, Unity on ainult üks mootor ja neid on palju mängude arendamise tarkvara valikud valida.

Jaga Jaga Piiksuma E -post Canon vs Nikon: milline kaamera kaubamärk on parem?

Canon ja Nikon on kaameratööstuse kaks suurimat nime. Kuid milline kaubamärk pakub paremat kaamerate ja objektiivide valikut?

Loe edasi
Seotud teemad
  • Programmeerimine
  • JavaScript
  • Mängu arendamine
  • C
  • Ühtsus
Autori kohta Ian Buckley(Avaldatud 216 artiklit)

Ian Buckley on vabakutseline ajakirjanik, muusik, esineja ja videoprodutsent, kes elab Saksamaal Berliinis. Kui ta parasjagu ei kirjuta ega laval, nokitseb ta isetehtud elektroonika või koodi kallal, lootuses saada hulluks teadlaseks.

Rohkem Ian Buckleylt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin