7 Mga Wika sa Pag-unlad ng Laro ng Pagkakaisa na Alamin: Alin ang Pinakamahusay?

7 Mga Wika sa Pag-unlad ng Laro ng Pagkakaisa na Alamin: Alin ang Pinakamahusay?

Ang pagbuo ng mga laro ay hindi kailanman naging madali. Ang mga platform ng pagbuo ng laro tulad ng Unity ay ginagawang posible upang lumikha ng lahat mula sa simpleng mga platform ng 2D hanggang sa ganap na detalyadong mga 3D shooters ng unang tao. Ang pagkakaisa ay libre sa maliliit na developer, at mayroong isang kayamanan ng mga tutorial sa kung paano pinakamahusay na magagamit ang editor upang prototype ang iyong mga ideya.





Ang pag-aaral kung paano gamitin ang programa ng Unity ay makakakuha ka lamang sa ngayon. Ang tunay na core ng iyong laro ay ang code na tumutukoy sa pag-uugali nito. Ang pagtatrabaho kung aling wika ang matututunan para sa pag-unlad ng laro ay maaaring maging mahirap --- ngunit sa kaso ng Unity, simple ito.





lg telepono ay hindi nakakonekta sa computer

1. Ang Pinakamahusay na Pagpipilian: C #

Para sa sinumang nagsisimula sa Unity, o sinumang may dating kaalaman sa object-oriented na programa, ang C # ay ang tamang wika upang matuto para sa Unity. Sa katunayan, ang C # lamang ang wika na nagkakahalaga ng pag-aaral para sa platform, at may magandang dahilan.





Gumagamit ang Unity ng Mono, na isang cross-platform na pagpapatupad ng balangkas ng .NET ng Microsoft. Ang C # ay ang pangunahing wika ng .NET, at lahat ng mga aklatan ng Unity ay binuo gamit ang C # code. Upang sabihin na ang C # ay ang wika ng Unity ay hindi magiging isang labis. Nilinaw ng pagkakaisa na isinasaalang-alang nila ang C # na tanging wika para magamit sa pagpunta ng makina.

Magandang balita ito, dahil ang C # ay isang malakas na wika at madaling malaman. Ang pagkakaisa ay isa lamang sa marami magandang dahilan upang malaman C # , at kung ikaw ay isang nagsisimula, maaari mo ring makita itong mas madaling ma-access. Ang pagbuo ng mga laro ay nagbibigay ng istraktura sa pag-aaral, at ang mga hangarin na batay sa proyekto ay humantong sa higit na pag-unawa sa mga bagong paksa.



Sa pagpapakilala ng C # system ng trabaho at ECS , Pinipilit ng Unity kung ano ang maaaring gawin sa C # nang paunti, at ang bagong tagatala ng Burst ay ginagawa itong mas mabilis kaysa dati.

2. Ang Kasalukuyang Kahalili: JavaScript

Sinusuportahan din ng Unity ang JavaScript --- kilala bilang UnityScript. Mula nang mailabas, nakaupo ang JavaScript sa tabi-tabi ng C # bilang isang buong tampok na wika ng pag-unlad ng Unity. Ang sanggunian sa Unity scripting ay may halimbawa ng code sa parehong C # at JavaScript para sa karamihan ng mga elemento ng library.





Kapaki-pakinabang ito para sa mga developer na nagmumula sa isang background sa JavaScript dahil sa kabila ng mga pagkakaiba sa paraan ng pagkakabuo ng code maaari silang gumamit ng pamilyar na syntax. Gayunpaman, mayroong isang problema.

Habang ang UnityScript ay tila katulad ng JavaScript --- hindi. Ang UnityScript ay may mga klase, isang bagay na hindi sa JavaScript. Ang mga tampok ng JavaScript tulad ng maraming variable na deklarasyon at opsyonal na mga semi-colon ay hindi magagamit sa UnityScript.





Marahil na mahalaga, ang paghahanap para sa tulong ng JavaScript sa mga proyekto ng Unity ay laging nagdulot ng pagkalito dahil ang karamihan sa mga tao ay tinukoy ito bilang JavaScript kaysa sa UnityScript. Ang mga resulta para sa parehong disenyo ng web at pag-unlad ng laro ay malabo, at ang pagkakaiba sa pagitan ng mga wika ay isang punto ng pagtatalo sa purong mga developer ng JavaScript.

Marahil ay hindi nakakagulat, inihayag ng Unity na aatras nila ang suporta para sa UnityScript, at mayroon na ngayong timeline sa lugar upang mai-decommission ito . Maaari mo pa ring gamitin ang JavaScript sa Unity, ngunit alam na magtatapos na ito, bakit mo gagawin?

3. Ang Matandang Ikatlong Pagpipilian: Boo

Sa mga unang araw ng Unity, mayroong pagpipilian na gumamit ng Boo --- isang mala-Python na wika. Marahil ito ay hindi nakakagulat bilang Rodrigo B. De Oliveira, Taga-disenyo ni Boo , nagtrabaho para sa Unity. Ang wika ay katugma sa .NET at Mono at ganap na ipapatupad sa engine ng laro. Ano ang naging mali?

Hindi sapat ang ginamit ng mga tao, malamang na ipinapalagay na sinusubukan lamang nitong gayahin ang Python. Sa paglipas ng panahon, bumagsak ang Unity ng suporta para sa Boo, at ang paparating na mga pagbabago sa UnityScript ay gagawing walang silbi ang lahat ng mga lumang script ng Boo sa Unity. Maaaring makita ito ng ilan bilang isang napalampas na pagkakataon, dahil ang Boo ay isang mahusay na pagtatangka sa Python-like syntax para sa .NET na programa.

Ang mga nagmamahal sa Python ay may isa pang pagpipilian, gayunpaman.

4. Ang Odd Choice: IronPython

Kung nais mong bumuo ng mga laro, marahil ay hindi ang Python ang wika para sa iyo, ngunit posible ito. Sa kanyang blog ng Microsoft Developer Community, binabalangkas ni Charlie Calvert kung paano patakbuhin ang Python mula sa C # --- ngunit hindi ito para sa mga mahina ang puso. Makalipas ang sampung taon, ang IronPython ay nasa aktibong pag-unlad pa rin.

Sa madaling sabi, kakailanganin mong i-download ang Mga aklatan ng IronPython mula sa GitHub at sanggunian ang mga ito sa iyong proyekto sa C #. Papayagan ka nitong tumawag sa mga script ng Python mula sa mga script na C # na kagaya ng nais mong anumang ibang silid-aklatan. Pinapayagan din ng IronPython pagtawag .NET aklatan mula sa Python . Tulad ng kapaki-pakinabang sa tunog na ito, dahil ang Unity ay umaasa sa C # ang pagpapaandar na ito ay hindi makakatulong.

Ang IronPython --- at IronRuby, kapatid na proyekto ng pag-uugnay sa C # sa wika ng programa ng Ruby --- ay kamangha-manghang mga proyekto, ngunit hindi sila praktikal para magamit sa Unity.

5. Ang Kagiliw-giliw na Pagpipilian: Lua

Isa sa mga mas mahusay na pagpapatupad ng isang panlabas na wika para sa Unity ay MoonSharp --- isang interpreter ni Lua. Ang proyektong ito ay hindi idinisenyo upang mapalitan ang C # bilang isang wika, higit na kumilos bilang isang tulay. Ang perpektong kaso ng paggamit para sa MoonSharp ay idaragdag sa isang paraan para sa mga manlalaro ng iyong laro upang lumikha ng mga mod ng laro sa wikang Lua.

Maaari mo ring gamitin ito upang ilarawan ang mga bagay at antas ng disenyo nang hiwalay mula sa iyong pangunahing code ng laro.

Kung naka-coding ka na sa C # at naghahanap ng isang kagiliw-giliw na paraan upang mai-interface ang iyong code, sulit na isaalang-alang ang MoonSharp. Dahil magagamit ito nang libre sa Tindahan ng Asset ng Unity , maaari mong mai-import ito nang direkta sa iyong mga proyekto.

6. Pinakamahusay na Wika para sa Mga Plugin: C / C ++

Sa kabila ng matatag na library ng Unity at lahat ng mga magagamit na tool na ibinibigay ng C #, kung minsan ay maaaring gusto mo ang iyong sariling mga plugin. Ang mga pangunahing kadahilanang ang mga tao na pumili para sa mga plugin ay nagsasama ng bilis, o pag-access sa isang codebase na nakasulat na sa ibang wika. Ang pagbuo ng mga script na ito sa mga plugin ng DLL ay nakakatipid ng remaking code at maaaring mapabuti ang pagganap sa ilang mga kaso.

Sa karamihan ng mga kaso, ang C ++ ay ang wikang ginagamit para sa paglikha ng plugin, ngunit ang C ay gagana nang pantay na maayos. Hangga't ang code ay bumubuo sa isang DLL, maaari itong mailagay sa folder ng plugin ng Unity at mag-refer sa code. Ang posibilidad ay, gayunpaman, kung komportable ka na sa pag-cod sa C / C ++, ang pag-aaral ng C # ay magiging isang simpleng gawain!

paano makita kung sino ang sumusunod sa iyo sa facebook

7. Bagong Wika para sa Mga Plugin: Kalawang

Ang kalawang ay isang wika na may maraming buzz sa paligid nito. Gustung-gusto ito ng mga nakaranas ng programmer para sa hindi kapani-paniwalang dami ng kontrol na ibinibigay nito habang iniiwasan ang mga bitag ng pagsulat sa mga hindi gaanong ligtas na mga wika tulad ng C ++. Ang kalawang ay nilikha ng Mozilla noong 2009, bilang isang paraan para sa mga developer na mabilis na makabuo ng software na may mahusay na pagganap.

Habang hindi posible na isulat nang direkta ang Rust in Unity, maaari mong ma-access ang mga pagpapaandar at pamamaraan na nakasulat sa Rust mula sa iyong Unity code. Saklaw ni Jim Fleming kung paano ito gawin nang detalyado sa kanyang post sa Medium .

Kung tila pamilyar ito, ito ay dahil ito ay isa pang paraan upang lumikha ng Mga Native Plugin. Sa pamamagitan ng paggamit ng kakayahan ng Rust na makipag-ugnay sa ibang mga wika, maaari mong tawagan ang mga pagpapaandar ng Rust nang direkta mula sa C # code gamit ang Unity's DllImport katangian Naturally, maraming mga hakbang sa pagitan, at binabasa ang follow up post ni Jim kasama ang pagkakaroon ng isang mahusay na pag-unawa sa FFIs (mga interface ng banyagang pag-andar) ay pinapayuhan!

Isang Simpleng Pagpipilian

Ang pag-uugali ng Unity sa anumang wika na hindi C # ay malinaw, at ang patuloy na pagpapabuti sa Unity ay umaasa sa solong pag-iisip na ito. Paresin ito sa patuloy na pagpapabuti ng Microsoft ng C # bilang isang wika, at ang pag-aaral ng C # para sa pag-unlad ng laro ng Unity ay isang walang kabuluhan. At tiyaking mag-check out Unity Matuto para sa isang mas madaling paraan upang malaman ang pagbuo ng laro .

Hindi lamang ito ang iyong pagpipilian, ang Unity ay isang engine lamang, at maraming mga pagpipilian sa pag-unlad ng software ng laro upang pumili mula sa.

Magbahagi Magbahagi Mag-tweet Email Canon vs. Nikon: Aling Camera Brand Ay Mas Mabuti?

Ang Canon at Nikon ay ang dalawang pinakamalaking pangalan sa industriya ng camera. Ngunit aling tatak ang nag-aalok ng mas mahusay na lineup ng mga camera at lente?

Basahin Susunod
Mga Kaugnay na Paksa
  • Programming
  • JavaScript
  • Pag-unlad ng Laro
  • C
  • Pagkakaisa
Tungkol sa May-akda Ian Buckley(216 Mga Artikulo Nai-publish)

Si Ian Buckley ay isang freelance journalist, musikero, tagapalabas at tagagawa ng video na naninirahan sa Berlin, Germany. Kapag hindi siya nagsusulat o nasa entablado, nakikipag-usap siya sa mga elektronikong DIY o code sa pag-asang maging isang baliw na siyentista.

Higit pa Mula kay Ian Buckley

Mag-subscribe sa aming newsletter

Sumali sa aming newsletter para sa mga tip sa tech, pagsusuri, libreng ebook, at eksklusibong deal!

Mag-click dito upang mag-subscribe