Ievads Vienotībā 3D
Unity 3D ir spēcīgs spēļu izstrādes dzinējs. Tā ir pārrobežu platforma, kas ļauj izveidot spēles mobilajām ierīcēm, tīmeklim, galddatoriem un konsolēm, kopā aptuveni 30 platformas. Unity 3D ir daudz aizraujošu funkciju, dažas no tām ir norādītas zemāk:
- Izmaksas: Unity 3D personīgā versija iesācējiem, studentiem un hobijiem ir bez maksas. Personības Vienībai ir visas Vienotības galvenās iezīmes. Tam ir arī pamata analīze, mākoņa veidošana, reklāmas, daudzspēlētāji, pirkumi lietotnēs un starpplatformu funkcijas. Izņemot šīs funkcijas, Unity personal ir arī daži ierobežojumi. Nopietniem veidotājiem un profesionāļiem ir pieejamas arī divas citas Unity Plus un Unity Pro versijas, sākot no cenas 35 USD mēnesī.
- Visu vienā redaktors: Vienotība ir pazīstama kā viss vienā redaktorā. Redaktora Vienotība rīcībā ir vairāki māksliniekiem draudzīgi rīki iespaidīgas pieredzes noformēšanai. Tam ir spēcīgs izstrādātāju rīku uzvalks, lai ieviestu spēļu loģiku un augstākās klases spēli. Unity ļauj arī izveidot gan 2D, gan 3D spēles. Tas ietver arī AI ceļa noteikšanas rīkus, kuru pamatā ir navigācijas sistēma. Tam ir lieliska iebūvēta sistēma, lai izveidotu uzkrītošas lietotāja saskarnes. Tā Box2D fizikas dzinējs ļauj mums izveidot reālistisku kustību, impulsu, spēku un spēles gaitu.
- Platformas: Unity atbalsta daudzas dažādas platformas, piemēram, Linux, IOS, Android, Windows utt. gandrīz gandrīz 30 platformas.
- Virtuālā un paplašinātā realitāte: Vienotība atbalsta virtuālās un paplašinātās realitātes attīstību. Tas ir visplašāk izmantotais dzinējs XR izstrādei. Tam ir Microsoft HoloLens, Stream VR / Vive, Gear VR un PlayStation VR atbalsts Unity Plus virtuālajai un paplašinātajai realitātei.
- Multiplayer: Reāllaika tīkla un vairāku spēlētāju spēlēm Vienotība ir labākais risinājums. Tas nodrošina serverus reāllaika sadarbībai.
- Dzinēja veiktspēja: Unity dzinēja darbība ir ārkārtēja. Intensīviem scenārijiem nāk vairāku pavedienu skaitļošanas sistēma. Unity motoram ir uzlaboti profilēšanas rīki, kas nosaka, vai jūsu spēle ir saistīta ar procesoru vai nav, un arī stāsta, kā to optimizēt ar labāku pieredzi.
- Unity Asset Store: Tas ir milzīgs bezmaksas un apmaksāta satura katalogs. Varat palielināt izstrādes laiku, lejupielādējot daudzus iebūvētus bezmaksas modeļus un līdzekļus. Pat Unity aktīvu veikalā ir pabeigti projekti gan bez maksas, gan apmaksāti.
- Grafikas renderēšana: Unity ir viena no labākajām grafikas atveidošanas sistēmām. Tas ļauj jums izveidot tādu vidi kā gaiša diena, neona zīmju raibs spīdums, vāji apgaismotas pusnakts un ēnas tuneļi. Tas rada pārsteidzošus vizuālos efektus. Lai gan Unity atbalsta daudzplatformu platformu, tomēr tā cenšas aptvert katras platformas zema līmeņa grafikas API, lai iegūtu labākus rezultātus un gludāku lietotāja pieredzi.
- Komandas sadarbība: Tam ir funkcijas, kas nodrošina sadarbību un vienkāršu darbplūsmu. Unity mākoņa krātuve ļauj saglabāt, koplietot un sinhronizēt savus projektus jebkur.
- Darbības pārskati: Vienotības darbības pārskatu sistēma reāllaikā risina jautājumus. Augstas prioritātes jautājumi tiek atrisināti ļoti efektīvi. Atrod lietojumprogrammas kļūdas dažādās ierīcēs un platformās.
Vienotības saskarnes
Izpētīsim Unity redaktora saskarnes, kuras ir konfigurējamas. To veido logi ar pieskārienu, kurus jūs varat pārkārtot atbilstoši savām vajadzībām. Izpētīsim loga noklusējuma iestatījumus. Šeit ir attēls, kā tas izskatās
Hierarhijas logs
Hierarhijas logs attēlo visus ainas objektus. Tas parāda, kā objekti ainā ir savstarpēji saistīti, tāpēc šie divi logi ir saistīti. Hierarhijas logā ir nolaižamais saraksts ar nosaukumu Izveidot. Ļoti viegli var izveidot tukšu objektu, 3D objektus, 2D objektus, gaismas, audio, video, daļiņu sistēmu un kameras objektus. Hierarhijas logs ir parādīts zemāk. 'Bez nosaukuma' ir ainas nosaukums. To var pārdēvēt, kā vēlaties. Bez nosaukuma (ainas nosaukuma) labajā pusē varat redzēt nolaižamo izvēlnes ikonu. Noklikšķinot uz šīs nolaižamās izvēlnes, varat redzēt dažādas opcijas Saglabāt ainu un Pievienot jaunu ainu.
Sižeta logs
Sižeta logs ir vieta, kur izveidojat ainu. Šeit jūs varat mijiedarboties ar saviem spēles objektiem un modeļiem. Varat mainīt sižeta objektu izmērus, pārveidot tos un pārvietot tos. Šis ir logs, kurā jūs sākat strādāt ar Vienotību. Ainas skats var būt 2D vai 3D atkarībā no jūsu projekta iestatījuma. Šeit ir redzams skata loga ekrānuzņēmums:
Ainas logā var redzēt citu cilni ar atzīmi Aizēnots, šeit jūs varat izvēlēties, kāda veida skatu vēlaties ietonēt vai drāmēt. Tam ir daudz citu iespēju, piemēram, Dažādi, Globālais apgaismojums, Reālā laika GI, Cepts GI un daudzi citi. Varat skatīt 2D vai 3D, izmantojot pogu blakus Aizēnots nomest lejā. Nākamais ir ainas apgaismojuma pārslēgšanas poga. Līdzīgi ainas audio pārslēgšanas poga. Nākamais ir nolaižamais saraksts, lai iespējotu debess lodziņu, miglu, animētus materiālus un attēlu efektus.
Spēles logs
Spēles logs parāda jūsu pēdējo publicēto spēli spēles režīmā. Tas tiek renderēts no kamerām, kuras izmantojāt spēlē. Spēles logā jūs varat redzēt citu rīkjoslu, kā parādīts zemāk ekrānuzņēmumā:
1. displejā redzama kamera, kas atrodas jūsu spēles ainā. Pēc noklusējuma tas ir iestatīts uz 1. displejs galvenajai kamerai. Ja jums ir vairākas kameras un vēlaties pārslēgties, varat izvēlēties nolaižamajā sarakstā. Blakus tam jūs varat redzēt nolaižamo malu attiecību. Jūs varat izvēlēties atbilstoši mērķa ierīces monitora ekrānam. Tālāk jūs varat redzēt a Mēroga slīdnis lai tuvinātu. Ritiniet pa labi un izpētiet sīkāku informāciju par savu ainu atskaņošanas režīmā. Nākamā ir poga Maksimizēt spēlē, noklikšķinot uz spēles, spēles loga lielums būs maksimālais spēles režīmā. Izslēgt skaņu pārslēgs tiek izmantots skaņas izslēgšanai / ieslēgšanai. Statistika parāda renderēšanas statistiku par spēles audio un grafiku.
Projekta aktīvu logs
Kā norāda nosaukums, aktīvu logā ir visi jūsu projekta aktīvi, kurus varat izmantot. Ja importējat kaut ko jaunu, tas tiks parādīts projekta aktīvu logā. Projekta aktīvu logam ir divas daļas, kreisais un labais panelis, kā parādīts zemāk redzamajā ekrānuzņēmumā:
Kreisajā rūtī tiek parādīta projekta aktīvu hierarhiskā struktūra. Noklikšķinot uz jebkuras mapes, informācija tiks parādīta labajā panelī. Piemēram, dotajā attēlā Saliekamās mape tiek noklikšķināta kreisajā panelī, tāpēc tās informācija tiek parādīta labajā panelī, jo tajā ir divi spēles objekti. Kreisajā panelī var redzēt a Izlase sadaļā, kur jūs varat vilkt objektus, kurus vēlaties izmantot ļoti bieži, lai izvairītos no laika zaudēšanas to meklēšanā. Virs tā jūs varat redzēt a Izveidot nolaižamo izvēlni, kas ļauj izveidot C # skriptu, mapi, ēnotāju, GUI ādu, ainu, saliekamo daļu, materiālu un daudz ko citu.
Konsoles logs
Konsoles logs ir vieta, kur var redzēt kļūdas, brīdinājumus un ziņojumus. Varat tos pielāgot, noklikšķinot uz viņu pārslēgšanas pogām. Tas ļauj arī notīrīt visas kļūdas, brīdinājumus un ziņojumus. Varat uz noteiktu laiku apturēt kļūdas. Šeit jūs varat redzēt nākamajā attēlā
Nolaižamajā ikonā pašā augšējā labajā stūrī ir redaktora žurnāla un kaudzes izsekošanas reģistrēšanas iespējas.
Inspektora logs
Inspektora logs ir viens no interesantākajiem un noderīgākajiem redaktora logiem. Tā ir vieta, kur var rediģēt visas atlasītā spēles objekta īpašības. Katram spēles objektam ir savs tips, tāpēc to īpašības būs atšķirīgas, un inspektora logs var atšķirties. Aktīvu, skriptu un spēļu objektu īpašības atšķiras. Ļauj redzēt kuba īpašības inspektora logā. Šeit ir attēls:
Spēles objektu var pārdēvēt, vienkārši noklikšķinot uz iepriekšējā nosaukuma un ierakstot jaunu. Pēc tam jūs redzēsiet sadaļu pārveidošana, kurā jūs varat pielāgot izvēlētā spēles objekta pozīciju, pagriešanu un mērogošanu. Pēdējā pogas nosaukums ir redzams kā Pievienot komponentu, noklikšķiniet uz tā, lai spēles objektam pievienotu jaunus komponentus, piemēram, ja vēlaties pievienot skriptu, vienkārši noklikšķiniet uz Pievienot komponentu un ierakstiet skripta nosaukumu.
Rīku josla
Pēdējā ir rīkjoslas cilne, tajā ir daudz noderīgu funkciju. Tas satur dažus pamata rīkus, lai manipulētu ar ainas skatu un objektiem. Centrā ir pogas atskaņošanai, pauzei un soļu kontrolei. Nākamās divas pogas parāda jūsu Unity mākoni un Unity kontu. Lūk, kā tas izskatās:
Darba sākšana ar vienotību
Sāksim veidot jaunu projektu Vienotībā, jo ir laiks spēlēt ar iemācīto. Veiciet dubultklikšķi uz vienības ikonas, parādīsies šāds logs:
Enter Projekta nosaukums, atlasiet darbavietu Atrašanās vieta un pēc tam atlasiet projekta veidu - 2D vai 3D. Klikšķiniet uz Izveidot projektu.
Pēc noklusējuma jūs redzēsiet ainu bez nosaukuma, kurā būs galvenā kamera un virziena gaisma. Sāksim veidot vidi.
Ēku vide
Vispirms izveidojiet plakni, noklikšķinot uz Izveidot -> 3D objekts un pēc tam atlasiet Lidmašīna. Vai arī jūs varat to izveidot, noklikšķinot uz GameObject -> Spēles objekts un pēc tam atlasiet Lidmašīna. Atveriet hierarhijas logu un noklikšķiniet uz plaknes spēles objekta. Tagad dodieties uz inspektora logu un pārdēvējiet to kā Zeme. Tagad noregulējiet transformācijas vērtības tā, lai šī plakne izskatās kā taisns ceļš. Vienkārši mērogojiet X līdz 6 un Z līdz 50. Šeit ir attēls, kā tas izskatās
Tagad lejupielādējiet ceļa faktūru un uzklājiet to uz zemes objekta. Izveidojiet mapes nosaukumu kā Texture. Velciet lejupielādēto ceļa faktūru mapē Texture. Tagad atlasiet Zeme un ainas skatā velciet ceļa faktūru. Šeit ir attēls, kā tas izskatās
Šī ir tekstūra, kuru es lejupielādēju
Pēc faktūras uzklāšanas uz zemes noklikšķiniet uz Zeme un inspektora logā iestatiet flīzēšanu. Lūk, kā es to iestatīju.
Tagad esat izveidojis ceļa modeli, izveidosim bumbas modeli vienotībā.
Iet uz Izveidot -> 3D objektu un pēc tam atlasiet Sfēra, skatuves logā redzēsiet sfēras objektu. Atlasiet to un dodieties uz inspektora logu, lai pārdēvētu to kā Bumba. Tagad attiecīgi pielāgojiet transformācijas vērtības. Vienkārši mērogojiet to līdz 5 pa visām trim asīm un novietojiet to līdz ceļa centram. Lūk, kā tas izskatās
Tagad izveidojiet žogu vai sienu ap ceļu.
Iet uz Izveidot -> 3D objekts un pēc tam atlasiet Kubs. Atlasiet to un pārdēvējiet to uz Siena1. Atveriet inspektora logu un iestatiet transformācijas vērtības tā, lai tas izskatās kā siena ap ceļu. Lūk, kā tas izskatās:
Skatiet šīs transformācijas vērtības Siena1. Mērogojiet Y līdz 6 un Z līdz 500. Pēc tam noregulējiet tā stāvokli tā, lai tas nonāktu ceļa stūros.
Tagad meklējiet sienas faktūru, lejupielādējiet to un kopējiet Tekstūra mape aktīvos. Sižeta logā velciet sienas faktūru pie sienas. Noregulējiet augsnes apstrādi tā, lai tā izskatās jauki un gluda. Es pielāgoju flīzēšanu kā X līdz 50 un Y - 1.5. Pēc flīžu pielāgošanas tas izskatās šādi
Šī ir tekstūra, ko es izmantoju sienai
Vienai ceļa malai esam izveidojuši sienu. Tagad dariet to pašu arī ceļa otrā pusē. Tā vietā, lai izietu visu procesu, mēs varam vienkārši kopēt Siena1 un pārdēvēt to uz Siena2.
Atlasiet Siena1 hierarhijas logā un pēc tam ar peles labo pogu noklikšķiniet un pēc tam atlasiet Dublikāts opcija. Tas izveidos vēl vienu spēles objektu ar vienādu izmēru un transformācijas vērtībām. Klikšķiniet uz Siena1 (1) un pārdēvēt to uz Siena2. Tagad noregulējiet pozīciju tā, lai tā nonāktu otrā ceļa stūrī.
Cik forši tas izskatās, skatiet nākamo attēlu
Manas Wall2 pozīcijas vērtības ir X līdz -29.6 Y līdz 2.6 un Z līdz 2.6.
Tagad izveidojiet materiālu Bumba. Atveriet projekta logu un izveidojiet mapi, ar peles labo pogu noklikšķinot uz peles un pēc tam atlasiet Mape. Nosauciet to kā Materiāli. Atkal ar peles labo pogu noklikšķiniet uz peles un izveidojiet materiālu. Nosauciet to kā sarkana Bumba. Inspektora logā izvēlieties materiāla krāsu. Iet uz Galvenās kartes un atlasiet Albedo krāsa līdz sarkanai. Palieliniet metāla struktūru, ritinot joslu pa labi. Velciet šo materiālu uz Bumba skatuves skatā. Lūk, kā tas izskatās
Materiāls izskatās šādi:
Tāpēc mēs esam paveikuši savu vides attīstību. Tagad laiks veikt kodēšanu. Tam mums jāizveido skripts.
Scenāriji Vienotībā
Lai ieviestu savas spēles funkcijas un kontrolētu spēles, kuru Unity nodrošina kā skriptu mehānismu, uzvedību. Jūs varat uzrakstīt savu skriptu vēlamajam spēles iznākumam. Izmantojot šos skriptus, varat aktivizēt spēļu notikumus, mainīt komponentu īpašības un atbildēt uz lietotāju ievadiem. Skriptēšanas nolūkos būtībā Unity atbalsta divas dažādas programmēšanas valodas, viena ir C # un otra ir JavaScript. Izņemot šīs divas valodas, daudzas citas .NET valodas var izmantot arī ar Unity. Skripti ir pazīstami kā uzvedības sastāvdaļa Vienotībā.
Skripta izveide
Sāksim izveidot Unity skriptu. Tam dodieties uz aktīvu logu un izveidojiet jaunu mapi ar nosaukumu Skripti (varat izlaist jaunu mapju izveidi katram jaunam aktīvu veidam, taču tā labā prakse, lai lietas būtu sakārtotas). Lūk, kā mans aktīvu logs izskatās tagad:
Tagad atveriet Skripti mapi, ar peles labo pogu noklikšķiniet un pēc tam dodieties uz Izveidot un atlasiet C # scenārijs. Pārdēvēt skriptu uz Kustība. Mēs veidojam šo scenāriju, lai pārvietotos un ripinātu bumbu uz ceļa. Pagaidām bumba ir nekustīga, neko nedarot, izveidosim tajā kādu kustību.
Veiciet dubultklikšķi uz Movement skripta, kas tiks atvērts Mono Develop. Ja jūsu skripts ir mono uzvedība, jūs redzēsit kādu iepriekš uzrakstītu kodu
izmantojot sistēmu.Kolekcijas; izmantojot sistēmu.Kolekcijas.Vispārējs; izmantojot UnityEngine; public class MovementScript: MonoBehaviour // Izmantojiet to inicializēšanai void Start () // Katrā rāmī atjaunināšana tiek izsaukta vienreiz. Atjaunināt ()
Jūs varat redzēt divas funkcijas Start () un Update ().
Sākt(): Funkcija Sākt tiek izmantota mainīgo un objektu inicializēšanai. Tas tiek izsaukts tikai vienu reizi, kad skripts ir iespējots tieši pirms citu atjaunināšanas funkciju izsaukšanas.
Atjaunināt(): Tā ir mono uzvedības funkcija, tā tiek izsaukta reizi katrā kadrā.
Izņemot šos divus, ir arī daudzas citas mono uzvedības funkcijas, piemēram, nomodā (), fiksēta atjaunināšana (), novēlota atjaunināšana () utt.
Lai pārvietotu bumbu uz ceļa, vispirms tas ir jāpadara par stingru ķermeni (tas ir ideāls ciets korpuss, kurā deformācija tiek atstāta novārtā). Atlasiet Bumba hierarhijas logā un noklikšķiniet uz Pievienot komponentu poga inspektora logā. Ierakstiet stingru virsbūvi un nospiediet Enter. Stingrs korpuss piestiprināsies pie Bumba. Tagad dodieties uz skriptu un izveidojiet privātu mainīgo Rigidbody. Tagad piešķiriet stingru bumbas ķermeni šim mainīgajam, kuru tikko izveidojāt skriptā.
privāts Rigidbody rb; rb = GetComponent();
Tagad uzrakstiet nelielu kodu šī cietā ķermeņa kustībai. Kāda ideja? Bumbai vajadzētu kustēties, kad es nospiedu taustiņu bultas taustiņus. Tam vajadzētu virzīties uz priekšu, nospiežot augšupvērsto taustiņu, atpakaļ, nospiežot lejupvērsto taustiņu utt.
Tātad, kā ievadīt no tastatūras, kā man iegūt šo ievadi? Unity's Input klasei ir funkcijas nosaukums GetAxis (), atgriež virtuālās ass vērtību, kas identificēta ar ass nosaukumu. Izveidojiet divus mainīgos - vienu x ass un vienu - y ass ievadam. Lūk, kā tam vajadzētu būt
float moveHorizontal = ievade.GetAxis ("Horizontāls");
Tagad izveidojiet mainīgo Vector3, lai iegūtu kustību vērtības.
Vector3 kustība = jauns Vector3 (moveHorizontal, 0.0f, moveVerticle);
Pirmais parametrs ir x ass vērtība, otrais ir y ass vērtība un trešais ir z ass vērtība. Tā kā bumba nepārvietosies y ass virzienā, piešķiriet tai nulli. Visbeidzot pievienojiet šo kustību cietajam ķermenim un reiziniet ar nemainīgu ātruma skaitli vai izveidojiet citu ātruma mainīgo. Skatiet pilnu kodu zemāk
izmantojot sistēmu.Kolekcijas; izmantojot sistēmu.Kolekcijas.Vispārējs; izmantojot UnityEngine; publiskā klase Kustība: MonoBehaviour publiskais peldēšanas ātrums; privāts Rigidbody rb; // Izmantojiet to inicializēšanai void Start () rb = GetComponent(); // Fixed Update tiek izsaukts pēc fiksēta kadra numura atcelšanas FixedUpdate () float moveHorizontal = Input.GetAxis ("Horizontāls"); float moveVerticle = Ieeja.GetAxis ("Horizontāls"); Vector3 kustība = new Vector3 (-1 * pārvietot horizontāli, 0.0f, -1 * moveVerticle); rb.AddForce (kustība * ātrums);
Tā kā ātrums ir publisks mainīgais, inspektora logā varat piešķirt vērtību. Pievienojiet šo skriptu bumbai, velkot to uz inspektora logu vai nospiežot Pievienot komponentu pogu. Nospiediet atskaņošanas pogu un pārbaudiet, vai kodēšana notiek, vai nu bumba pārvietojas, vai nē.
Kameras iestatīšana
Pēdējā lieta, ko pamanīsit, ir tad, kad nospiežat pogu uz priekšu un bumba sāk kustēties, tā iziet no kameras, kad kamera ir nekustīga. Ko mums vajadzētu darīt? Mums vajadzētu pārvietot arī kameru? Jā, tas ir vienkāršākais veids, kā rīkoties. Padariet kameras bērnu par bumbu, velkot galveno kameru uz bumbu.
Secinājums
Šī bija pamata ievada apmācība, kurā jūs uzzinājāt daudzas interesantas funkcijas, vides veidošanu un skriptu izveidi vietnē Unity. Nevilcinieties, sāciet jau šodien veidot savu pirmo spēli ar Unity un izbaudiet!