Skelbimas

Stebina interneto ekonomikos ypatybė - išaugo indie vaizdo žaidimų skaičius. Kadaise buvo išskirtinės tūkstančių žmonių, kelių milijonų dolerių, trigubo A studijos, domenas, buvo sukurta daugybė įrankių rinkinių, kurie perduokite šiuolaikinius žaidimų kūrimo išteklius asmenų ar nedidelių, specialių programuotojų ir dizainerių kolekcijų rankoms. Anksčiau aptarėme geriausi indie žaidimai 10 „Indie“ žaidimų taip gerai, kad pamiršite, kad jie visi yra „Indie“Tačiau kartais gali būti, kad norisi kažko, kas skiriasi nuo indie normos. Žaidimas, kuris vadovaujasi indie vertybėmis, tačiau yra pagamintas tokios kokybės, kokia yra žinoma dėl populiariausių AAA žaidimų. Pavadinimai kaip ... Skaityti daugiau , todėl būtinai patikrinkite, ar nėra įkvėpimo, ką galima pasiekti naudojant tokias priemones kaip Unity.

Šį vadovą galima atsisiųsti kaip nemokamą PDF. Atsisiųskite „Vienybės žaidimo“ programavimą: vadovas pradedančiajam. Nukopijuokite tai ir pasidalykite ja su draugais ir šeima.

Šios „indie“ žaidimų kūrimo komandos pademonstravo judrumą ir toleranciją rizikai, daugeliu atvejų leidžiančias žaidimų inovacijas paspartinti greičiau nei jų didelius biudžetas. Pastaraisiais metais įvyko keletas šokiruojančių sėkmingų indie pavadinimų, įskaitant

instagram viewer
Minecraft, Limboir Super mėsos berniukasir net jei jums nereikia įgūdžių kurti tokius žaidimus, galite tai padaryti sukurkite žaidimą naudodami „Buildbox“ Kaip sukurti vaizdo žaidimą per savaitę naudojantYra programa, kuri daro žaidimų kūrimą neįtikėtinai lengvą net ir tiems, kurie visiškai neturi vaizdo žaidimų projektavimo patirties. Jis vadinamas „Buildbox“. Štai kodėl turėtumėte tai išbandyti. Skaityti daugiau .

Sparčiai besikeičiančiame indie žaidimų kūrimo peizaže Vienybė tapo de facto standartu: dėl mažų kainų, patogumo naudoti ir plačių funkcijų rinkinio jis idealiai tinka greitam žaidimų vystymui. Vienybė yra tokia lanksti, kad net gali sukurkite savo pasirinktinius žaidimų valdiklius Kaip pasigaminti pasirinktinį žaidimų valdiklį naudojant „Arduino“ ir „Unity“Ar kada norėjote sukurti savo žaidimų valdiklį? Tai lengviau, nei jūs manote! Skaityti daugiau su šiek tiek pasidaryk pats žinok, kaip!

Net ir didelės studijos, tokios kaip CCP Ieva internete) naudoti jį greitai formuojant žaidimų koncepcijas. „Unity“ siūlo „žaidimų variklį dėžutėje“ - fizikos ir perteikimo variklį su kabliukais kelioms scenarijų kalboms, pritaikomus praktiškai bet kokiam vaizdo žaidimų žanrui.

Nors „Unity“ teikia vaizdinį redaktorių, skirtą manipuliuoti žaidimo aplinka, „Unity“ nėra „nulinio programavimo“ žaidimų kūrimo įrankis. Tai reikalauja, kad programavotumėte rezultatus, tačiau taip pat suteikiate daug lankstesnį ir galingesnį įrankį nei bet kuri „žaidimų kūrėjo“ programa.

Vienybė neatliks darbo už jus, tačiau tai žymiai sumažina patekimo į rinką kliūtis. Pradėjus visiškai nuo nulio, naudojant „C ++“ ir „OpenGL“, gali praeiti dienos, kol bus pasiekta ta vieta, kur ekrane iš tikrųjų yra kažkas pavaizduoto. Naudojant Unity, tai trunka apie dešimt sekundžių. Vienybė pagrindinius žaidimų kūrimo elementus greitai ir intuityviai perduoda naujokų programuotojams.

Šiandien aš jums parodysiu viską, ką reikia žinoti norint sukurti žaidimą Vienybėje, kuris yra suskaidytas į dešimt pagrindinių skyrių:

§1 - Vienybės versijos

§2 - „Unity“ įdiegimas

§3 - Trumpas į objektą orientuotos paradigmos įvadas

§4 - Vienybės pagrindai

5 straipsnis - pavyzdys: pagrindiniai žaidimo elementai

6 dalis - scenarijų kūrimas vienybėje

7 straipsnis. Pavyzdys: Scenarijus

§8 - Dokumentacijos tyrimas / Sužinokite daugiau

§9 - jūsų žaidimo kūrimas / kompiliavimas į autonominę programą

§10-Baigiamosios pastabos

1. Vienybės versijos

„Unity“ skleidžia du pagrindinius skonius: „pro“ versiją ir nemokamą versiją. Čia yra skirtumų skaičius, tačiau, plačiąja prasme, „pro“ versija palaiko daugybę vaizdinių patobulinimų (pvz., minkštųjų realaus laiko šešėlių ir po apdorojimo) ir daugybė palyginti nedidelių funkcijų, kurios ypač naudingos sudėtingesnėms funkcijoms žaidimai.

Nepaisant to, daugumai palyginti paprastų žaidimų, kuriuos galbūt norėsite sukurti, nemokama „Unity“ versija yra visiškai tinkama. Išsamiau išskaidysime pagrindinius skirtumus tiems, kurie domisi.

1.1 Kainodara

Nemokama „Unity“ versija, be abejo, yra nemokama. Tačiau yra keletas apribojimų: nemokama „Unity“ versija negali būti licencijuojama jokiai įmonei, kurios metinės pajamos yra didesnės nei $100,000. Nors tokios organizacijos nepatenka į šio vadovo taikymo sritį, jei įtariate, kad galite tapti tokia organizacija, tikriausiai pravartu pradėti rengti „Pro“ versiją.

Pro „Unity“ versiją yra $75 mėnesį, arba $1500 gauti nuolatinę licenciją, ir neturi jokių apribojimų, ką galite daryti su ja sukurtais žaidimais. Taip pat yra 30 dienų nemokamas bandomasis laikotarpis, kurį mes naudosime šiam vadovui, kad galėtume pateikti jums kuo išsamesnę galimų funkcijų apžvalgą. Vienerių metų studento licenciją taip pat galima gauti per Studica dėl $129.

1.2 Savybės

Yra daugybė funkcijų, kurių nėra nemokamoje „Vienybės“ versijoje. Tačiau svarbiausi skirtumai yra šie: nemokamoje „Unity“ versijoje trūksta daugybės pateikimo parinkčių, kurias tai leidžia geriau atrodantys, greičiau veikiantys žaidimai (LOD palaikymas, apdorojimas ekrano vietoje, patobulinti šešėliai, realaus laiko minkšti šešėliai ir atidėtas perteikimas). To taip pat trūksta mechanim animacijos sistemair kai kurie PG įrankiai.

Apskritai, sudėtingesniems, didelio masto projektams ar projektams, kur svarbu atlikti grafinį atlikimą, verta naudoti „pro“ versiją. Aš naudoju pro versiją, nes kuriu virtualios realybės žaidimus Oculus Rift „Oculus Rift“ apžvalgaVirtuali tikrovė nėra nauja, tačiau pagaliau prieinama ir yra mūsų suprantama. Po ketverių metų ir dviejų vystymosi prototipų pasirodė „Oculus Rift“ galutinis vartotojams skirtas leidimas. Skaityti daugiau , o norint tinkamai sąveikauti su laisvų rankų įranga su laisvų rankų įranga, reikalingas tolesnis apdorojimas ekrane.

2. „Unity“ diegimas

Unity įdiegti paprasta. Vykdomąją programą galite atsisiųsti iš unity3d.com/get-unity/download.

Atsisiuntę paleiskite ją ir vykdykite diegimo programos instrukcijas. Kai diegimas bus baigtas, pasirodys langas pavadinimu „suaktyvinti„ Unity “licenciją“. Pažymėkite langelį „aktyvuoti nemokamą„ 30 dienų “„ Unity Pro “bandomąją versiją“, tada „Gerai“.

Sveikiname! Dabar turite 30 dienų „Unity Pro“ bandymą. Pasibaigus bandomajam laikotarpiui, jei nenorite pirkti profesionalaus versijos, galite pereiti prie nemokamos versijos ir išlaikyti esamą turinį.

3. Trumpas į objektą orientuotos paradigmos įvadas

Prieš pradedant dirbti su „Unity“, svarbu šiek tiek peržvelgti pagrindus. Vienybė palaiko abu C # ir „JavaScript“ dėl žaidimų programavimas 7 „Unity“ žaidimų kūrimo kalbos, kurias reikia išmokti: kas yra geriausia?Norite pradėti žaidimo kūrimą „Vienybėje“? Jums reikės mokėti vieną iš šių su „Unity“ suderinamų kalbų. Skaityti daugiau ; mes dirbsime su C # šia mokymo programa.

Pirmiausia, jei niekada anksčiau nesate programuojami, atidėkite šią mokymo programą ir praleiskite kelias dienas dirbdami naudodami „Microsoft“ C # kalbos pradmuo kol nesijausite patogiai vartodami kalbą paprastoms užduotims atlikti.

Jei norėtumėte kažko, kas šiek tiek skiriasi nuo C # (bet nebūtinai kalbos, kurią galite naudoti „Unity“), tada pasižiūrėkite į mūsų vadovą šešios lengviausios programavimo kalbos pradedantiesiems 6 lengviausios programavimo kalbos, kurias reikia išmokti pradedantiesiemsMokymasis programuoti yra ne tik tinkamos kalbos suradimas, bet ir redagavimo procesas. Čia yra šešios populiariausios programavimo kalbos pradedantiesiems. Skaityti daugiau .

Jei anksčiau esate užprogramavę imperatyvia ar į objektus orientuota kalba, pavyzdžiui, „C“ ar „Java“, nugręžkite pagrindą ir susipažinkite su tuo, kaip C # skiriasi nuo kitų kalbų, kurias anksčiau naudojote. Bet kuriuo atveju, nesinaudokite instrukcija, kol nesijausite patogiai spręsdami paprastas problemas, susijusias su C # (pavyzdžiui, jei manęs paprašytų jei norite parašyti programą, išspausdinančią pirmąjį šimtą pirminių skaičių, turėtumėte mokėti parašyti tą programą nepasitarę „Google“).

Čia svarbiausia suprasti sąvoką objektyvi paradigma Iš kur atsirado „objekto orientuotas“ programavimas?Orientuotas į objektą nėra tik atsitiktinis žodžių junginys, kurį girdite programavimo ratuose. Pavadinimas yra priežastis, tačiau kas? Prisijunkite prie manęs, kai tyrinėju pagrindinius programavimo koncepcijų pagrindus ir paaiškinu ... Skaityti daugiau (sutrumpintai OOP). Objektinėmis kalbomis programos yra suskirstytos į funkcinius vienetus, vadinamus Objektai. Kiekvienas objektas turi savo privačius kintamuosius ir funkcijas. Vadinamos objekto specifinės funkcijos metodai.

Idėja yra moduliškumas: kiekvieną objektą izoliuojant ir verčiant kitus objektus su juo sąveikauti naudodamiesi jo metodais galite sumažinti galimų netyčinių sąveikų skaičių - klaidų. Taip pat galite kurti objektus, kuriuos vėliau galėsite pakartotinai naudoti be pakeitimų. Vienybėje statysite šiuos objektus ir pritvirtinsite juos žaidimo subjektai (kieno elgesį jie valdys).

Objektai yra akimirksniu iš klases: klasė yra tik failas, kuriame pateikiamas jūsų objekto apibrėžimas. Taigi, jei norite a Makas objektas, kuris jūsų žaidime tvarko priešo AI, jūs parašytumėte „Mook“ klasę ir pridėtumėte tą failą prie kiekvieno priešo subjekto. Kai vykdysite savo žaidimą, kiekvienas priešas turės „Mook“ objekto kopiją.

Pridėti naują scenarijų prie objekto atrodo taip:

Žaidimo su vienybe programavimas: pradedančiųjų vadovas vienybės programos žaidimas 1

Pirmas, pasirinkite objektą ir eik į Inspektorius. Spustelėkite Pridėti komponentą mygtuką.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 2

Eiti į naujas scenarijus, įveskite norimą vardą ir spustelėkite sukurkite ir pridėkite.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 3

Dabar jūs turite naują scenarijų, kurį galite redaguoti dukart spustelėdami jį!

Klasės failas atrodo maždaug taip:

naudojant „UnityEngine“; viešosios klasės „Mook“: „MonoBehaviour“ (privati ​​plūdės sveikata; negaliojanti pradžia () {sveikata = 100; } negaliojantis atnaujinimas () {jei (sveikata> 0) {/ * Ieškokite žaidėjo, jei susidursite su žaidėju kelyje, nužudykite jį, jei esate nušautas, pašalinkite atsitiktinį kiekį sveikatos * /}} }

Padalinkime tai:

  • „UnityEngine“ naudojimas: Ši eilutė C # nurodo, kad norime naudoti „Unity“ bibliotekas, kurios leidžia prisijungti prie „Unity“ žaidimo variklio.
  • Visuomenės klasės mokinys: „MonoBehaviour“:Ši eilutė skelbia klasę ir jos pavadinimą - Makas.
  • Privatus plūdės sveikata: Tai skelbia privačios klasės kintamąjį (kurį galima pakeisti tik klasės viduje). Kintamojo vertė yra išreikšta Pradėti.
  • Void start (): Tai skelbia metodą, vadinamą Pradėti. „Start“ yra specialus metodas, kuris vykdomas tik vieną kartą, paleidus žaidimą.
  • Netinkamas atnaujinimas (): Atnaujinimas yra dar vienas specialus metodas, kuris veikia kiekviename kadre. Didžioji jūsų žaidimo logikos dalis bus čia.
  • // jei kelyje susidursite su žaidėju, nužudykite jį: Ši eilutė yra komentaras (bet kurią eilutę, prasidedančią dvigubu brūkšniu, C # nepaiso). Komentarai naudojami norint priminti sau, ką daro tam tikri kodo bitai. Šiuo atveju šis komentaras yra naudojamas įsitvirtinti sudėtingesniame kodo bloke, kuris iš tikrųjų daro tai, ką apibūdina komentaras.

Kartu su Pradėti ir Atnaujinti, savo metodus galite pritaikyti beveik bet kokiu vardu. Tačiau sukurti metodai nebus vykdomi, nebent jie vadinami. Paskelbkime hipotetinės klasės metodą, vadinamą „addTwoNumbers“ tai sudės du skaičius kartu:

„public float addTwoNumbers“ (plūduriuoja a, plūduriuoja b) {grąžinti a + b; }

Tai skelbia viešą (prieinamą kitiems objektams) metodą, kuris grąžina plūdę, vadinamą „addTwoNumbers“, kurios įvestis yra dvi plūdės (vadinamos a ir b). Tada ji grąžina dviejų verčių sumą kaip išvestį.

Skambinti šiuo metodu iš tos pačios klasės (tarkim, iš vidaus) Atnaujinti) atrodo taip:

plūdės rezultatas = addTwoNumbers (1, 2);

Skambinimas metodu iš kitos klasės yra panašus:

„addTwoNumbers“ egzempliorius; plūdės rezultatas = instance.addTwoNumbers (1, 2);

Vėlgi, tai tik sukuria mūsų klasės egzempliorių, pasiekia tinkamą metodą ir tiekia jam numerius, kuriuos norime pridėti, tada išsaugo rezultatą rezultatas. Paprasta.

Jei scenarijus pridedamas prie objekto, turinčio specialių savybių (pvz., Dalelių skleidėjo), kurio negalima pasiekti naudodamiesi įprastu „GameObject“ parametrų rinkiniu, galite pasirinkti jį traktuoti kaip kitokio tipo žaidimo objektą „GetComponent“ metodas.

Tai atrodo taip:

„GetComponent“().Žaisti();

Jei kas nors jums yra nepažįstamas, grįžkite atgal ir praeikite C # gruntą. Toliau eidami sutaupysime daug nusivylimo.

4. Vienybės pagrindai

Šiame skyriuje mes stengsimės perprasti pagrindinę „Unity“ variklio mechaniką. „Unity“ darbo eiga vyksta maždaug taip:

  1. Sukurkite subjektą, kuris atliktų vaidmenį žaidime (tuščia „GameObjects“ gali būti naudojamas abstrakčioms loginėms užduotims).
  2. Parašykite arba raskite klasės failą ir pridėkite jį prie subjekto kaip scenarijų (naudodami Pridėti komponentą mygtuką inspektorius vaizdas.
  3. Bėk > testas > derinimo > pakartoti kol jis veiks ir pereik prie kito žaidimo elemento.

„Unity“ yra keletas pagrindinių peržiūros skirtukų, kurie gali būti išdėstyti įvairiais būdais pagal vartotojo skonį. Didieji penki yra:

  1. Žaidimas: rodo veikiantį žaidimo egzempliorių, su kuriuo galite bendrauti ir išbandyti.
  2. Scena: pateikia statinę, redaguojamą žaidimų pasaulis.
  3. Inspektorius: leidžia jums modifikuoti atskirus žaidimų pasaulio subjektus, pasirenkant juos redaktorius skirtukas.
  4. Projektas: leidžia naršyti po projekto failus ir vilkti modelius, medžiagą ir kitus išteklius į redaktorius skirtuką, kad juos pateiktumėte žaidimų pasaulyje.
  5. Hierarchija: Šiame skirtuke rodomi visi pasaulio objektai, leidžiant surasti nutolusius objektus scenoje ir pagrindinius objektus vienas kitam spustelėdami ir vilkdami.

Žemiau pateiktoje schemoje rasite visų šių dalykų vietas:

Žaidimo su vienybe programavimas: pradedančiojo vadovas vienybės programos žaidimas 0

4.1 Vienybės subjektai

4.1.1 Akys

Akys yra būdas 3D geometrija atstovaujama Vienybėje. Galite naudoti integruotą „Unity“ primityvus objektus (kubus, rutulius, cilindrus ir tt) arba importuokite savo 3D modelius iš modeliavimo paketo, pvz Blenderis Darbo su „Blender“ pradžia: 7 fantastiniai vadovėliai pradedantiesiems3D modeliavimas yra puikus būdas kūrybiškumui palaikyti palaikant ryšį su savo technine puse. Čia yra keletas nuostabių nemokamų vadovėlių. Skaityti daugiau arba Majai „Mokymosi majai 2016“: nuo ko pradėtiMaya yra įrankis, naudojamas 3D animacijai, tačiau jis ateina su neįtikėtinai staigia mokymosi kreive. Kokia ten gera mokymo medžiaga? Skaityti daugiau . „Unity“ palaiko įvairius 3D formatus, įskaitant .fbxir .3ds.

Pagrindiniai įrankiai, skirti manipuliuoti akimis, yra mastelio keitimo, pasukimo ir vertimo mygtukai viršutiniame kairiajame sąsajos kampe. Šie mygtukai prideda valdymo piktogramas prie modelių redaktoriaus rodinyje, kuriuos vėliau galima naudoti manipuliuojant jais erdvėje. Norėdami pakeisti objekto tekstūrą ar fizines savybes, pasirinkite jas ir naudokite inspektorius vaizdas analizuoti medžiaga ir tvirtas kūnas elementai.

4.1.2 GUI elementai

Tradicinius GUI rašmenis ir tekstą galima parodyti naudojant GUI tekstas ir GUI tekstūra „GameObjects“ redaktoriuje. Tačiau patikimesnis ir realistiškesnis būdas valdyti vartotojo sąsajos elementus yra naudoti 3D tekstas ir Keturkojis „GameObjects“ (su skaidriomis tekstūromis ir neišryškintu permatomu šederiu), skirti HUD elementus į žaidimų pasaulį kaip subjektus.

Viduje konors hierarchija Šie žaidimo elementai gali būti nutempiami į pagrindinę kamerą, kad jie taptų vaikais, užtikrinant, kad jie judėtų ir pasisuktų kartu su kamera.

GUI elementų (teksto ir tekstūros) dydį ir mastelį galima pakoreguoti naudojant atitinkamus inspektoriaus skirtuko laukus.

4.1.3 Medžiagos

Medžiagos yra tekstūrų ir skustuvai Paaiškintos penkios svarbios kompiuterinių žaidimų sąlygosJei žaidžiate žaidimą konsolėje, techninės detalės yra tvarkomos už jus. Kai kurie žaidėjai teikia pirmenybę tam, tačiau kompiuterinių žaidimų žaidėjai dažnai naudojasi didesniu valdymu, kurį turi žaidimo akimis. Skaityti daugiau , ir juos galite vilkti tiesiai į žaidimo objektus iš projekto skirtuko. Daugybė šešėlių yra su „Unity Pro“, ir jūs galite pritaikyti prie jų pritvirtintą tekstūrą naudodamiesi inspektoriaus skirtuku objekto, kuriam jie yra pritaikyti.

Norėdami importuoti tekstūrą, konvertuokite ją į .jpg, .png, arba .bmpir vilkite jį į turtas aplankas, esantis "Unity" projekto kataloge (kuris pasirodo Mano dokumentai pagal nutylėjimą). Po kelių sekundžių redaktoriuje pasirodys pakrovimo juosta. Kai jis baigsis, galėsite rasti vaizdą kaip tekstūrą po projektas skirtukas.

4.1.5 Žibintai

Žibintai yra „GameObjects“ kuris spinduliuoja pasaulį. Jei jūsų scenoje nėra apšvietimo, visi daugiakampiai yra nupiešti tokiu pat ryškumo lygiu, suteikdami pasauliui plokščią, išplautą vaizdą.

Žibintai gali būti išdėstyti, pasukti ir turėti keletą vidinių charakteristikų, kurias galite pritaikyti. intensyvumas slankiklis kontroliuoja šviesos ryškumą, o diapazonas kontroliuoja, kaip greitai jis išnyksta.

Gairės scenos vaizdas parodykite maksimalų apšvietimo diapazoną. Norėdami pasiekti norimą efektą, žaisite abiem nustatymais. Taip pat galite pakoreguoti šviesos spalvą, raštą (sausainis ant paviršiaus, į kurį nukreipta šviesa, ir koks pliūpsnis atsiranda ekrane žiūrint tiesiai į šviesą. Slapukas gali būti naudojamas suklastoti tikroviškesnius šviesos modelius, sukurti dramatiškus melagingus šešėlius ir modeliuoti projektorius.

Trys pagrindinės šviesos rūšys yra: vieta, taškasir kryptinis.

Taškiniai žibintai turėti vietą 3D erdvėje ir projektuoti šviesą tik viena kryptimi kintamo kampo kūge. Tai yra naudingi žibintuvėliams, prožektoriams ir apskritai suteikia galimybę tiksliau valdyti apšvietimą. Taškinis apšvietimas gali mesti šešėlį.

Taškiniai žibintai turėti vietą 3D erdvėje ir tolygiai nukreipti šviesą į visas puses. Taškinės lemputės nemeta šešėlių.

Posūkio žibintaigaliausiai yra naudojami saulės šviesai modeliuoti: jie skleidžia šviesą tokia kryptimi, tarsi iš be galo toli. Krypties lemputės veikia kiekvieną scenos objektą ir gali sukelti šešėliai.

4.1.6 Dalelių sistemos

A Dalelių sistema yra „GameObject“ kuris generuoja ir valdo šimtus ar tūkstančius dalelių vienu metu. Dalelės yra maži, optimizuoti 2D objektai, rodomi 3D erdvėje. Dalelių sistemos naudoja supaprastintą perteikimą ir fiziką, tačiau realiu laiku gali demonstruoti tūkstančius subjektų be mikčiojimo, todėl jos idealiai tinka dūmams, gaisrui, lietui, kibirkštims, magiškiems efektams ir dar daugiau.

Yra daugybė parametrų, kuriuos galite pakoreguoti, kad pasiektumėte šį poveikį, ir prie jų galite prieiti, neršdami dalelių sistemą po komponentų redaktorius > dalelių sistemos parinkimas > atidarius inspektoriaus skirtuką. Galite pakeisti kiekvienos dalelės dydį, greitį, kryptį, sukimąsi, spalvą ir tekstūrą ir nustatyti, kad dauguma šių parametrų taip pat keistųsi laikui bėgant.

Pagal susidūrimas atributas, jei įgalinsite jį ir nustatysite modeliavimo erdvę į pasaulis gausite dalelių, kurios susidurs su objektais pasaulyje, kurios gali būti naudojamos daugybei realių dalelių efektų, įskaitant lietų, judantį vandenį ir kibirkštis.

5. Pavyzdys: pagrindiniai žaidimo elementai

Šiam mokymui mes sugalvosime paprastą žaidimą Tenisas - tai, ką mes kelis kartus apžvelgėme pasidaryk pats „pasidaryk pats“:

  • „Arduino“ klasikinis tenisas Kaip atkurti klasikinį teniso žaidimą naudojant „Arduino“„Pong“ buvo pirmoji visų laikų vaizdo žaidimų programa, pasiekusi masinę rinką. Pirmą kartą istorijoje „vaizdo žaidimo“ idėja buvo įnešta į šeimos namus „Atari 2600“ dėka ... Skaityti daugiau
  • „Arduino OLED“ tenisas „Arduino Retro“ žaidimai su OLED ekranuAr kada susimąstėte, kiek daug darbo reikia norint parašyti savo retro žaidimus? Ar lengva „Pongas“ koduoti „Arduino“? Skaityti daugiau

Šiame skyriuje apžvelgsime pagrindinius elementus - scenarijaus mokymo programa bus pateikta vėliau.

Pirmiausia suskirstykime „Pong“ žaidimą į pagrindinius jo komponentus. Pirmiausia mums reikia dviejų menčių ir rutulio. Rutulys sklinda už ekrano, todėl norėsime, kad jį būtų galima nustatyti iš naujo. Taip pat norime, kad tekstas parodytų dabartinį rezultatą, ir norėdami parodyti jums visus pagrindinius „Vienybės“ elementus, norime išgalvoto dalelių efekto, kai paspausite kamuolį. Visas žaidimas turės būti dramatiškai apšviestas.

Tai suskaidoma į rutulio objektas (sfera), a neršta, dvi irklinės atramos su dalelių skleidėjai pridedamas, a 3D teksto subjektas, ir a taškinė šviesa. Šiai mokymo programai mes naudosime numatytąją fizinę medžiagą atšokti, su atšokimo kombainas nustatytas į padauginti. Štai kaip atrodo sąranka per dešimt ekrano kopijų:

Žaidimo su vienybe programavimas: pradedančiojo vadovas vienybės programos žaidimas 4
Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 5

Pirmiausia sukurkite kubo atrama už irklu.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 6

Atitikite mastelį, kopijuoti, ir padėkite sfera tarp menčių kamuoliui.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 7

Tada sukurkite 3DText objektas ir skalė ir padėtis teisingai, pakeisdamas šrifto dydis atributas, kad gautumėte mažiau pikselių atvaizdą.

Programuoti žaidimą su vienybe: Vienybės programos žaidimas pradedantiesiems 8

Kitas, sukurkite du dalelių sistemos, išsirinkite norimas charakteristikas ir pritvirtinkite prie menčių.

Programuoti žaidimą su vienybe: Vienybės programos žaidimas pradedantiesiems 9
Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 10

Kitas, jūs norite padėkite ir pasukite fotoaparatą kad ji teisingai įrėmintų sceną. Pasirinkus fotoaparatą, apatiniame dešiniajame kampe galite pamatyti nedidelę kameros vaizdo peržiūrą.

Žaidimo su vienybe programavimas: Vienybės programos žaidimas pradedantiesiems 11

Prieš baigdami, mes turime sukurti du papildomus kubus, kurie būtų buferiai, kad kamuolys nepatektų į žaidimo plotą. Mes galime padaryti juos nematomus panaikindami žymėjimą tinklelio tinklelis viduje konors inspektoriaus skirtukas.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 13
Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 14

Jei paspausite žaisti, dabar galite pamatyti išdėstytus pagrindinius mūsų žaidimo elementus. Jie dar nieko nepadarys, bet mes susitvarkysime!

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 12

Dabar, kai jau turime šią sąranką, mes kalbėsime apie tai, kas susiję su šių elementų scenarijavimu žaidimui kurti.

6. Scenarijus vienybėje

Kai turėsite scenarijų, pridėtą prie objekto, galėsite jį peržiūrėti, du kartus spustelėdami jį inspektorius. Tai atsidaro „MonoDevelop“, numatytoji „Unity“ kūrimo aplinka. Iš esmės „Monodevelop“ yra teksto rengyklė, kurios funkcijos yra specialiai optimizuotos programavimo link.

Raktažodžiai ir komentarai paryškinti mėlyna ir žalias, o skaitinės reikšmės ir eilutės pasirodo raudona. Jei jūs naudojote Užtemimas ar kitų IDE, „MonoDevelop“ yra labai panašus. Tu gali statyti scenarijus iš redaktoriaus, norėdami patikrinti sintaksės klaidas, pvz .:

Programuoti žaidimą su vienybe: Vienybės programos žaidimas pradedantiesiems 15

Apskritai, norėdami, kad scenarijus sąveikautų su „Unity“, turėsite nurodyti elementus, kuriuos turi scenarijų turintis objektas (šių elementų sąrašą galite pamatyti skiltyje inspektorius skirtuką, kai pasirinktas atitinkamas objektas). Tada galite paskambinti metodais arba nustatyti kiekvieno iš šių elementų kintamuosius, kad galėtumėte atlikti norimus pakeitimus.

Jei norite, kad objekto scenarijus paveiktų kito objekto savybes, galite sukurti tuščią „GameObject“ scenarijuje, ir naudokite inspektorius priskirti jį kitam scenos objektui.

Elementų, kuriuos gali turėti objektas, sąrašas yra toks (paimtas iš inspektoriaus požiūrio į vieną iš mūsų menčių, pateiktų aukščiau pateiktame pavyzdyje):

  1. Transformuoti
  2. Kubas (tinklo filtras)
  3. „Box Collider“
  4. Tinklelis Renderer

Kiekvienas iš šių objekto aspektų gali būti įtakotas scenarijaus viduje. Toliau panagrinėsime kaip.

6.1 Transformuoti

„GameObject“ „Unity“ transformavimo funkcijos kontroliuoja to objekto fizinius parametrus: jo skalė, jos padėtis, ir tai orientacija. Juos galite pasiekti iš tokio scenarijaus:

transform.pozicija = newPositionVector3; transform.rotation = newRotationQuaternion; transform.localScale = newScaleVector3;

Aukščiau pateiktuose pavyzdžiuose įvardyti kintamieji yra pavadinimuose nurodyti tipai. Čia yra keletas pagrindinių detalių: padėtis ir mastelis, kaip ir tikėjotės, yra saugomi kaip „Vector3“. Galite pasiekti X, Yir Z kiekvieno komponento (pavyzdžiui, transformacija.y. pateikia objekto atstumą virš nulio plokštumos).

Tačiau norint išvengti Gimdos spyna, sukimai yra tvarkomi kaip Kvaternionai (keturių komponentų vektoriai). Kadangi rankomis manipuliuojami ketvertai nėra intuityvūs, sukimais galite manipuliuoti naudodami Eulerio kampus, naudodami Kvaternionas. Euleris toks metodas:

transform.rotation = Kvartonas. Euleris (žingsnis, posūkis, ritinys);

Jei norite sklandžiai perkelti objektus iš vienos vietos į kitą, rasite Slerpas naudingas ketvirčių ir vektorių metodas. „Slerp“ pateikia tris argumentus - esamą būseną, galutinę būseną ir pokyčių greitį ir sklandžiai interpoliuoja nurodytu greičiu. Sintaksė atrodo taip:

transform.position = Vector3.Slerp (startPositionVector3, newDestinationVector3, 1);

6.2 Pjaustytojas

Pateikimo funkcijos „Unity“ leidžia jums valdyti, kaip reklamų paviršiai yra atvaizduojami ekrane. Galite iš naujo priskirti tekstūrą, pakeisti spalvą ir pakeisti objekto ekraną ir matomumą. Sintaksė atrodo taip:

render.enabled = false; render.material.color = nauja spalva (0, 255, 0); render.material.mainTexture = myTexture; render.material.shader = newShader;

Daugelis jų turi gana aiškias funkcijas. Pirmasis pavyzdys padaro nagrinėjamą objektą nematomu: naudingas triukas daugelyje situacijų. Antrasis pavyzdys priskiria naują RGB spalva (būtent žalią) prie nagrinėjamo objekto. Trečiasis priskiria pagrindinę difuzinę tekstūrą naujam tekstūros kintamajam. Paskutiniame pavyzdyje objekto medžiagos shaderis keičiamas į naujai apibrėžtą shaderio kintamąjį.

6.3 Fizika

Vienybė ateina su integruotu fizikos varikliu - tai kažkas fizikos smėlio dėžės žaidimai Smash, Drive and Build: 3 nuostabūs fizikos smėlio dėžių treniruokliai Skaityti daugiau visi naudoti. Tai leidžia jums priskirti fizines objektų savybes ir leisti jums tvarkyti jų modeliavimo detales. Apskritai, užuot bandžius įgyvendinti savo fiziką naudojant vadovėlį ir transformavimo sistemą, paprasčiau ir patikimiau yra naudoti „Unity“ fizikos variklį kiek įmanoma plačiau.

Reikia visų fizikos rekvizitų susidūrėjai. Tačiau patį modeliavimą tvarko a tvirtas kūnas, kurį galima pridėti inspektorius vaizdas. Tvirtos kūno dalys gali būti kinematinis arba nekinematinis.

Kinematikos fizikos atramos susiduria su (ir daro įtaką) aplink jas esančiomis nekinematinėmis fizikos rekvizitomis, tačiau pačios susidūrimo jos neturi. Statinės kinematinės atramos yra patarlės, nejudančios, o judantys kinematiniai objektai - patarlė nesustabdoma jėga (rekordui susidūrus, jie tiesiog praeina pro kiekvieną kita).

Be to, galite sureguliuoti kampinį objekto pasipriešinimą (kiek energijos reikia jo sukimui), pakeisti jo masę, nustatyti, ar jį veikia gravitacija, ar pritaikyti jėgas.

Pavyzdžiai:

rigidbody.angularDrag = 0,1f; rigidbody.mass = 100; rigidbody.isKinematic = false; rigidbody.useGravity = tiesa; tvirtas kūnas. „AddForce“ (transformuoti pirmyn * 100);

Visa tai yra gana savaime suprantama. Vienintelis dalykas, į kurį reikia atkreipti dėmesį, yra vartojimas transformuoti.į priekį. Visi „Vector3“ turi tris komponentus (.Persiųsti, .aukštynir .teisus), susietus su jais, prie kurių galima prieiti ir sukti su jais (Persiųsti yra mėlynos rodyklės kryptis redaktoriuje). transformuoti.į priekį raktinis žodis yra tiesiog dabartinio objekto pirmyn nukreiptas vektorius, kurio dydis 1. Jį galima padauginti iš plūdės, kad būtų sukurta didesnė jėga objektui. Taip pat galite nurodyti transform.up ir transformacija.teisėir paneigkite juos, kad gautumėte savo priešingybes.

6.4 Susidūrimas

Dažnai kurdami žaidimą norėtumėte, kad susidūrimas pakeistų kodo būseną, o ne tik fizikos modeliavimą. Tam jums reikės susidūrimo aptikimo metodas.

Norint nustatyti „Unity“ susidūrimus, reikia tam tikro paruošiamojo darbo. Pirma, bent vienam iš susidūrimo objektų reikia a ne kinematinis standusis kūnas prie jo pritvirtintas. Abu objektai turi turėti teisingus susidūrimus, nustatytus kaip nesuaktyvinantys. Bendras abiejų objektų greitis turi būti pakankamai mažas, kad jie iš tikrųjų susidurtų, užuot tiesiog praleidę vienas kitą.

Jei turite viską, kuo pasirūpinta, galite patikrinti, ar nėra susidūrimo, į scenarijų, pridėtą prie objekto, su kuriuo norite patikrinti susidūrimą, įdėkite specialų susidūrimo aptikimo metodą. Metodas atrodys taip:

negaliojantis „OnCollisionEnter“ (kitas susidūrimas) {// daryk reikalus čia. }

Šis metodas bus automatiškai paleistas pirmojo kadro metu, kai kitas objektas paliečia jūsų objektą. Susidūrimas kita yra nuoroda į objektą, kurį pataikėte. Pavyzdžiui, galite nurodyti jos nuorodą žaidimo objektas, tvirtas kūnasir transformuoti savybes, kad juo būtų galima manipuliuoti įvairiais būdais. Nors „OnCollisionEnter“ yra turbūt labiausiai paplitusi funkcija, kurią naudosite, taip pat galite naudoti „OnCollisionExit“ ir „OnCollisionStay“ (su kitaip ta pačia sintaksė ir vartojimu), kurios atitinkamai suaktyvėja pirmojo kadro metu, kai jūs nustojate susidurti su objektu, ir kiekvieno kadro, kurio susiduriate su objektu, atitinkamai.

Kartais taip pat gali būti naudinga daryti tai, kas vadinama spinduliuotė. Spinduliuojant be galo plona linija (a spindulys) yra išmetamas per pasaulį iš tam tikros kilmės, išilgai tam tikro vektoriaus, ir, kai kažkas pataiko, grąžinama pirmojo susidūrimo padėtis ir kitos detalės. Spindulinės transliacijos kodas atrodo taip:

„RaycastHit“ pataikė; jei (fizika. „Raycast“ (transformatoriaus padėtis, -Vektorius3.į viršų, nepataikyta)) {float distanceToGround = hit.distance; }

Tai nukreipia spindulį iš esamo objekto padėties palei -Vector3.up (tiesiai žemyn) ir susieja kintamąjį pataikė prie pirmojo objekto, su kuriuo susiduria. Kai jūsų spindulys ką nors paspaus, galėsite pasiekti hit.distance nustatyti, kaip toli jis yra, arba pataikė. „GameObject“ manipuliuoti objektu, į kurį pataikėte.

Tokius spindulius galima naudoti šauliams, norint nustatyti, į ką ginklas nukreiptas, arba pasirinkti objektus, kai kamera į juos žiūri, arba tam tikriems judesio mechanikų stiliams.

6.5 Laiko korekcija

Vienas svarbus veiksnys, kurį reikia atsiminti, kai tokiu būdu manipuliuojate objektais kadrų dažnis. Nesvarbu, kaip kruopščiai optimizuojate, kadrų dažnis visada skirsis ir nenorite, kad jūsų žaidimo greitis atitinkamai kistų. Jei kas nors kitas paleidžia jūsų žaidimą greitesniu kompiuteriu, nei jūs jį sukūrėte, nenorite, kad žaidimas vyktų dvigubai greičiau.

Tai galite ištaisyti padauginę jūsų naudojamas vertes iš laiko, kurio prireikė paskutiniam kadrui pateikti. Tai atliekama naudojant Laikas.deltaTime. Tai veiksmingai keičia bet kurio kintamojo, nuo kurio padidinate kiekvieną kadrą, greitį pokytis per kadrą į pokytis per sekundę, ir tikriausiai turėtumėte atlikti šį pakeitimą bet kuria reikšme, kurią didinate ar mažinate kiekviename kadre.

6.6 Garso šaltiniai ir klausytojai

Dabar, kai apžiūrėjome, kaip kurti, atvaizduoti ir valdyti objektus, pakalbėkime apie kitą prasmę, kurią gali pasitarnauti kompiuteriniai žaidimai: garsas. Vienybė palaiko dviejų rūšių garsus: 2D ir 3D garsai. 3D garsai skiriasi pagal jų tūrį, atsižvelgiant į atstumą, ir iškraipomi judant fotoaparato atžvilgiu; 2D garsai neturi.

2D garsai yra tinkami balso perdavimui ir foninei muzikai, o 3D garsai taikomi garsams, kuriuos sukelia pasaulio įvykiai. Norėdami pakeisti, ar garsas yra 3D, ar ne, pažymėkite jį skiltyje projektas perjunkite į inspektorius Peržiūrėkite ir išskleidžiamajame meniu pasirinkite reikiamą parinktį, tada paspauskite mygtuką reimportuoti mygtuką.

Norėdami iš tikrųjų atkurti garsą, turėsite pridėti garso šaltinis prie atramos (atrama, iš kurios norite, kad garsas būtų skleidžiamas 3D garso atveju). Tada turėsite atidaryti garso įrašą laukelyje ir pasirinkite savo garso failą.

Tu gali naudoti „myAudioSource“. Pauzė() ir „myAudioSource“. Žaisti() valdyti tuos garso failus. Galite sureguliuoti garsų, esančių žemyn, elgesį, garsumą ir doplerį inspektorius garso šaltinio skirtukas.

6.7 Įvestis

Žaidimas, kuris nieko nereikalauja iš vartotojo, nėra tik žaidimas. Yra daugybė įvairių įvesties būdų, kuriuos galite perskaityti, ir beveik visi jie prieinami per Įvestis ir „KeyCode“ daiktai. Žemiau pateikiami kai kurie įvesties teiginių pavyzdžiai (kurių reikšmės įvertinamos kiekviename kadre).

„Vector3 mousePos“ = „Input.mousePosition“; bool isLeftClicking = Įvestis. „GetMouseButton“ (0); bool isPressingSpace = Įvestis. „GetKey“ („KeyCode“). Erdvė);

Šių eilučių funkcijos dažniausiai yra savaime suprantamos. Naudodamiesi šiomis trijų rūšių įvesties nuorodomis, galite rekonstruoti moderniausių 3D kompiuterinių žaidimų valdymo schemas.

6.8 Scenarijaus derinimas

Tarkime, scenarijus neveikia. Kaip sako geras gydytojas, jums gali nutikti kirpimų ir pagirių. Jei jūsų C # tekste yra akivaizdžių sintaksės klaidų, žaidimas paprastai atsisako paleisti, kai paspausite žaisti, o jei pateikiate keletą gana naudingų klaidų pranešimų, statyti scenarijus iš redaktoriaus. Žiūrėti žemiau:

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 16

Paprastai šias klaidas nėra sunkiausia ištaisyti. Problemiškesnės gali būti subtilios semantinės klaidos, kuriose sėkmingai parašėte failą, kuriame yra galiojantis C #, o ne tas, kuris daro, kaip jūs manėte. Jei turite vieną iš šių klaidų ir jums sunku ją atsekti, yra keletas dalykų, kuriuos galite pabandyti pagerinti.

Pirmiausia reikia pristabdyti žaidimo vykdymą ir patikrinti konsolę. Galite pristabdyti žaidimą spustelėję Pauzė piktogramą viršutinėje vidurinėje redaktoriaus dalyje, tada pasirinkdami konsolė iš apačios langas meniu (arba paspaudus „Ctrl“ > Pamaina > C). Net jei klaidų nėra, perspėjimai vis tiek gali padėti pateikti tam tikrų užuominų apie tai, kas gali suklysti.

Jei tai neveikia, taip pat galite pabandyti susidaryti mintį apie scenarijaus būseną, atsispausdinę vidinių kintamųjų būseną ir patvirtindami, kad programa daro tai, ką, jūsų manymu, daro. Tu gali naudoti Derinti. Žurnalas (eilutė) spausdinti eilutės turinį pulte, kai programos vykdymas pasiekia tą eilutę. Apskritai, jei jūs atsitraukiate nuo to, kas, jūsų manymu, turėtų vykti per tuos dalykus, kurie turėtų būti kad tai įvyktų, galiausiai pasieksite tašką, kuriame derinimo atspaudai neatliks to, ko tikitės daryti. Štai kur jūsų klaida.

7. Pavyzdys: Scenarijus

Norėdami pastatyti „Pongą“, suskaidykime žaidimą į pagrindinius jo elementus: mums reikia rutulio, kuris rikošetas pirmyn ir atgal tarp menčių didėjant greičiu, mums reikia rezultatų suvestinės, kuri žinotų, kada rutuliai praėjo irklas, ir mums reikalingas mechanizmas, kuris iš naujo paleistų rutulį, kai atsitinka. Pirmas geras žingsnis būtų pridėti ne kinematinį standųjį kūną prie rutulio, o du kinematinius tvirtus kūnus prie rutulio. irklus, išjunkite visų jėgų sunkumą ir iš standartinio turto priskirkite tinkamą fizinę medžiagą (atšokti su atšokimo kombainas nustatytas į padauginti).

Žemiau galite peržiūrėti baliaus scenarijų su aiškinamaisiais komentarais. Kamuoliukas turi įvykdyti kai kuriuos pagrindinius tikslus: jis turėtų atšokti pagal sudėtingą modelį, visada išlaikydamas judėjimas abiem ašimis, ir jis turėtų įsibėgėti nelengvu, bet ne neįmanomu horizontu kryptis.

„BallHandler.cs“

Kitas, mes turime scenarijų savo irklas, kurią galite peržiūrėti žemiau. Irklas turi judėti aukštyn ir žemyn, reaguodamas į klavišų paspaudimus (bet ne už tam tikrų ribų). Ji taip pat turi suaktyvinti dalelių sistemą, kai ji su kažkuo susiduria.

„PaddleHandler.cs“

Be to, mums reikia priešo PG: kažko, dėl kurio priešo irklas gali fiksuotu greičiu sekti rutulio link. Tam maksimaliai paprastumą naudosime „Vector3.Slerp“. Mes taip pat norėtume to paties dalelių elgesio, kurį matome ant savo irklo.

EnemyAI.cs

Galiausiai mums reikia scenarijaus, kad atnaujintume rezultatų suvestinę ir iš naujo nustatytume kamuolį, kai jis išeina iš užribio.

„ScoreboardUpdater.cs“

Pridėjus tuos scenarijus ir užpildžius nuorodas, kai mes žaidžiame „Pong“ žaidimą, mes patiriame žaidimą!

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 18

Tu gali atsisiųskite mano „Pong“ demonstracinę versiją, jei norėtumėte pamatyti viską, ką aprašiau, kaip veikia. Jis veikia „Windows“, „Mac“ ir „Linux“ sistemose.

8. Dokumentacijos tyrimas / Sužinokite daugiau

„Unity“ yra sudėtingas variklis, turintis daug daugiau funkcijų, nei įmanomas šio stiliaus vadovas, ir prieš tai įtrauksite daugybę (nemokamų ir komercinių) „Unity“ plėtinių, pasiekiamų internetas. Šis vadovas suteiks jums tvirtą pradžią žaidimo vystymui, tačiau saviugda yra svarbus bet kokių pastangų įgūdis ir, be abejo, čia.

Svarbus šaltinis yra „Unity ScriptReference“. „ScriptReference“ yra duomenų bazė, kurioje galima ieškoti tiek C #, tiek „Javascript“, kurioje yra sąrašas kiekvienos „Unity“ komandos ir funkcijos, su jų funkcijų aprašymais ir trumpais pavyzdžiais sintaksė.

Jei kyla problemų dėl „Unity“ redaktoriaus ir sąsajos arba tiesiog patinka vaizdo pamokos kaip prioritetinis dalykas, yra ilgas aukštos kokybės sąrašas Vienybės vaizdo samouczkai Geriausi „Unity“ 3D mokymai pradedantiesiemsNorite kurti žaidimus su „Unity“, bet nežinote, nuo ko pradėti? Išbandykite vieną iš šių nuostabių „Unity 3D“ vadovėlių šiandien. Skaityti daugiau prieinama. Platesnis (bet ne toks platus) teksto vadovėliai Vienybei taip pat galite įsigyti iš „CatLikeCoding“.

Galiausiai, jei turite klausimų, nepatenkančių į dokumentacijos ar vadovėlių sritį, galite užduoti konkrečius klausimus apsilankę atsakymai. „Unity3d.com“. Atminkite, kad atsakymus pateikia savanoriai, todėl gerbkite jų laiką ir pirmiausia ieškokite duomenų bazėje, kad įsitikintumėte, jog į jūsų klausimą dar nebuvo atsakyta.

9. Jūsų žaidimo kūrimas / kompiliavimas į autonominę programą

Kai pastatėte tai, kuo didžiuojatės (arba baigėte klonuoti mūsų šiek tiek nuobodų Pongo pavyzdį praktikai), laikas perkelkite savo žaidimą iš redaktoriaus ir paverskite jį dalyku, kurį galite paskelbti internete ir priversti savo draugus bei šeimos narius žaisti. Norėdami tai padaryti, turėsite sukurti autonominę programą. Geros žinios yra tai, kad „Vienybėje“ tai yra labai, labai lengva. Tačiau yra keli galimi žagsėjimai, į kuriuos norėsite atkreipti dėmesį.

Pradedantiesiems žinokite, kad galite kurti tik be klaidų projektą. Tam įsitikinkite, kad konsolę atidarėte kurdami: yra keletas klaidų sąlygų, kurių žaidime nepaisoma redaktoriuje, tačiau vis tiek bus nutrauktas bandomas kurti. Tai tik parodo klaidų pranešimus į konsolę, o ekrane nėra matomų rezultatų. Tai gali sujaudinti, jei pamiršite patikrinti. Vis dėlto, kai tik jūs žaidimą sudarysite be klaidų, galėsite pasirinkti Sukurti nustatymus po Byla meniu arba paspauskite „Ctrl“ > Pamaina
> B. Bus parodytas paprastas dialogas, leidžiantis sukurti savo žaidimą kelioms platformoms.

Programavimas žaidimo su vienybe: Vienybės programos žaidimas pradedantiesiems 17

Procesas iš ten yra savaime suprantamas: pasirinkite savo parinktis ir paspauskite statyti; žaidimas paprašys jūsų įdiegti katalogą ir ten pateiks vykdomąjį failą ir duomenų katalogą. Šiuos du failus galima suglaudinti ir paskirstyti (tik įsitikinkite, kad neapmokestinate už žaidimą, pastatytą „Unity“ demonstracinėje versijoje, nes tai pažeidžia paslaugų teikimo sąlygas).

10. Baigiamosios pastabos

Kaip ir bet kurio žaidimo kūrimo įrankio, „Unity“ sėkmės raktas yra iteracinis tobulinimas. Turite kurti lengvai valdomus žingsnius - būkite ambicingi visais būdais, bet būkite ambicingi mažais gabalėliais ir pasirūpinkite tie gabaliukai tokie, kad net jei ir nesiekiate savo didžiausių užmojų, jūs bent jau pasibaigsite darniu produktas.

Pirmiausia įsigykite svarbiausius elementus: turėkite mintyje savo idėją minimalus gyvybingas produktas, paprasčiausias, labiausiai neapgalvotas dalykas, kurį galėjote sukurti ir vis tiek jaustis taip, lyg pasiektumėte ką nors vertingo. Prieš pereidami prie didesnių užmojų, pasinaudokite tuo minimaliu įgyvendinamu projektu.

Šis mokymas suteikia jums tvirtą pradžios vietą, tačiau geriausias būdas išmokti Vienybę yra pastatyti žaidimą. Pradėkite kurti žaidimą, užpildykite savo žinių spragas, kai tik jie atsiranda, ir laipsniškas žinių srautas pašalins tai, ko nežinote, stebėtinai greitai.

Jei visa tai perskaitėte ir esate šiek tiek priblokšti reikalingo kodavimo, reikalingo „Unity“, būtinai patikrinkite, kaip mokytis žaidimų kūrimo naudojant „Unity Learn“ „Unity Learn“ yra lengviausias būdas išmokti žaidimųNorite pradėti kurti savo žaidimus? „Unity Learn“ yra geriausias ir lengviausias būdas išmokti ir įsisavinti tai, ką reikia žinoti. Skaityti daugiau taip pat perskaitykite mūsų vadovą kaip padaryti vaizdo žaidimus be jokio programavimo Kaip sukurti vaizdo žaidimus be jokio programavimoNorite sukurti vaizdo žaidimą, bet negalite užkoduoti? Tada naudokite vaizdo žaidimų konstravimo rinkinį, kuris leidžia kurti žaidimus be jokio kodavimo! Skaityti daugiau .

„Unity“ yra galingas įrankis ir, šiek tiek tyrinėdamas, galite su juo kurti įspūdingus projektus greičiau, nei galite tikėtis. Praneškite mums, ką jūs sukūrėte toliau pateiktuose komentaruose - mes norėtume pamatyti!

Rašytojas ir žurnalistas, įsikūręs Pietvakariuose, garantuoja, kad Andre išliks funkcionalus iki 50 laipsnių Celsijaus ir yra atsparus vandeniui iki dvylikos pėdų gylio.