Unity Terrain Engine Tools

Hva du skal skape

Unity er en multiplattformspillmotor utviklet av Unity Technologies, og brukes til å lage videospill og applikasjoner for en rekke enheter (PC, konsoller, mobile enheter og til og med nettsteder). Enhets kjernefordeler er robusthet og bærbarhet; Enhet retter seg mot flere kjente APIer som Direct3D, OpenGL, OpenGL ES og den siste Vulkan.

På grunn av de nevnte egenskapene, har Unity blitt mer og mer populært blant AAA-programvareutviklingshus og ambisiøse spillprogrammerere.

Enhet støtter flere teknologier og komponenter. En av hovedkomponentene er terrengmotorsystemet. Unitys terrengsystem lar deg lage store landskap for dine spill eller applikasjoner. Du kan bruke et utvalg av verktøy som er tilgjengelige for å skape terreng raskt og enkelt.

Denne opplæringen vil fokusere på å forklare hvordan terrengmotorverktøy fungerer, og hvordan du bruker dem til å skape store og rike terrengmiljøer.

Forutsetninger

Først må du sørge for at du har den nyeste versjonen av Unity. I denne opplæringen bruker vi versjon 5.6. Pass på at du bruker den nyeste Unity-versjonen; ellers kan du finne små forskjeller etter opplæringen og ved hjelp av fysikkleddene.

For denne opplæringen vil du ikke bruke noen startfil. Målet er å skape et nytt prosjekt og utføre opplæringen derfra.

Terrengverktøyene

Det første trinnet er å skape et nytt Unity-prosjekt. Legg nå til en ny scene (Fil> Ny scene). Den nye scenen er opprettet med to spillobjekter, den Hovedkamera og a Retningslys (Enhet 5 vil automatisk legge til en skybox i scenen).

Nå, for å legge til et terrengspillobjekt, gå til GameObject menyen, og velg 3D-objekt> Terreng. Dette vil legge til et flatt fly (kalt Terreng) inn i scenen din. Dette flyet er masken som vi skal skape for å skape ditt nivå terreng.

Hvis du sjekker din Eiendeler katalog (nederste del av enhet), vil du se at a Nytt terreng filen ble opprettet.

Velg terrenget og se på Inspektør fane. Du vil se at terrenget har tre komponenter: Forvandle, de Terreng skript og Terrain Collider komponent.

Terrengkomponenten gir deg verktøyene du trenger for å redigere terrenget ditt. Alle verktøyene på verktøylinjen, med unntak av treplacementverktøyet og innstillingspanelet, gir et sett med "børster" og innstillinger for børstestørrelse og opasitet, akkurat som å male verktøy fra en vanlig bildeditor. Dette gjør at du kan skape terrenget ditt på samme måte som et maleriverktøy.

Hvis du velger en pensel under Terreng komponent og mus over terrenget, vil du se et blått område projisert på terrenget. Dette lar deg kjenne til området på terrenget som børsten din vil påvirke.

Som du kanskje allerede har skjønt, er Terreng er ganske stor. For å navigere gjennom scene, Du kan bruke musen og tastaturet. Inne i scene fanen, trykk og hold nede Høyre museknapp (markøren skal skifte til et øye).

Mens du holder museknappen:

  • Du kan endre vinkelen på visningen ved å flytte musen.
  • Bruke W, S, A, D nøkler for å bevege seg rundt 3D-scenen.

Før du begynner å utforske terrengverktøyene, la oss ta en titt på Terreng eiendommer. Den siste knappen på Terrengskomponenten (inne i Inspektør) vil vise deg grunnparametrene til terrenget.

Eiendommene er delt inn i seksjoner:

  • Grunn terreng
  • Tre og detaljer Objekter
  • Vindinnstillinger for Gress
  • Vedtak
  • heightmap

Inne i den første delen Grunn terreng, Du finner flere egenskaper og parametere.

De Tegne alternativet skifter avstanden til terrenget på eller av. De Pixel Error representerer nøyaktighetsverdien av kartleggingen mellom terrengkartene (for eksempel teksturer, høydekart og generert terreng). Høyere verdier representerer lavere nøyaktighet, og lavere verdier vil resultere i rendering av overhead. Det er ditt ansvar å balansere denne verdien for å skape et godt, rikt miljø.

De Base Map dist. er den maksimale avstanden hvor terrengeteksturer skal vises i full oppløsning. Du kan slå på eller av skygger ved å velge Cast Shadows.

Deretter har vi Materiale. Her setter du inn materialet som skal brukes til å gjøre terrenget. Dette vil påvirke hvordan fargekanaler i terrengtekstur tolkes. Du kan velge:

  • Innebygd Standard representerer det fysisk baserte gjengivelsesmaterialet som ble introdusert i enhet 5. Hvis du velger dette alternativet, kan du for hvert splatlag bruke en tekstur for albedo og jevnhet, en tekstur for normal og en skalarverdi for å finjustere metallet. Husk at hvis "Overskrive glatthet"er sjekket, i stedet for å lese fra teksturkart, vil glattheten av hele terrenget kun styres av glatthet verdi.
  • Bygget i Legacy Diffuse representerer det eldre innebygde terrengmaterialet fra tidligere Unity-utgivelser (enhet 4 og bakover). Den bruker en Lambert belysningsmodell og har valgfri normal kartstøtte.
  • Bygget i Legacy Specular bruker Blinn-Phong-belysningsmodellen (vennligst se denne forrige Unity 5 lightning-opplæringen), og har valgfri normal kartstøtte. Dette alternativet lar deg også spesifisere den generelle spekulære fargen og skinnheten til terrenget.
  • Tilpasset alternativet bruker et tilpasset materiale av ditt valg for å gjengi terrenget. Dette materialet bør være en skygge som er orientert for terrengutførelse. Dette er et alternativ som jeg bare anbefaler til avanserte brukere. Men hvis du vil prøve det, ta en titt på kildekoden til noen av de innebygde terrengshaders og gjør endringer på toppen av dem.

Du kan også angi Refleksjon Probes for enkelte materialer, men de vil bare bli brukt når du bruker et innebygd standardmateriale eller et tilpasset materiale som støtter gjengivelse med refleksjon. Alternativene for refleksjonssonder er:

  • Av: Refleksjonsprober er deaktivert, og bare skyboxen vil bli brukt til refleksjon.
  • Blend Probes: Refleksjonsprober er aktivert. Blandingen skjer bare mellom prober. Standard refleksjon vil bli brukt dersom det ikke er noen reflekteringssøk i nærheten, men det vil ikke være noen blanding mellom standard refleksjon og sonde.
  • Blend Probes Og Skybox: Refleksjonsprober er aktivert. Blanding skjer mellom sondene eller prober og standardrefleksjon.
  • Enkel: Refleksjonsprober aktiveres, men det vil ikke forekomme blandinger mellom prober når det er to overlappende volumer.

Endelig er den siste parameteren i denne delen Tykkelse. Denne verdien angir hvor mye terrengkollisjonsvolumet skal strekke seg langs den negative y-aksen. Objekter anses å kollidere med terrenget fra overflaten til en dybde lik tykkelsen. Dette bidrar til å hindre høyhastighets bevegelige gjenstander fra å trenge inn i terrenget uten å bruke dyrt kontinuerlig kollisjonsdeteksjon.

Den neste innstillingsseksjonen er Tre og detaljer Objekter.

Det første alternativet er Tegne. Her kan du sette tegningen av detaljene på eller av. I utgangspunktet forteller det motoren hvis du vil at trær og gress skal tegnes eller ikke. Deretter har du Bake Light Probes for trær. Hvis du aktiverer dette alternativet, vil Unity opprette lysprober på hver treets posisjon. Sondene vil da bli brukt til treningens rendering. Hvis du deaktiverer dette alternativet, vil trær fortsatt bli påvirket av lysgruppesonder. Vær oppmerksom på at dette alternativet kun er tilgjengelig for trær som har lysprober aktivert på sine prefabs.

De Detaljavstand er avstanden fra kameraet utover hvilke detaljer vil bli slettet. Detalj tetthet representererantall detaljobjekter i en gitt enhetstype. Tree Distance representerer avstanden fra kameraet utover hvilke trær blir slettet. De Billboard Start er avstanden fra kameraet hvor 3D-treobjekter vil bli erstattet av billboardbilder. De Fade lengde representerer avstanden over hvilke trær vil overgå mellom 3D-objekter og reklametavler. Endelig, den Max Mesh Trees er det maksimale antall synlige trær som vil bli representert som solide 3D-masker.

Fortsett, du vil se Vindinnstillinger for Gress seksjon.

Hastighet definerer hastigheten på vinden når den blåser gresset. De Størrelse representerer rippelstørrelsen på gressletter. Bøye kan du defineregraden til hvilke gressobjekter er bøyd av vinden. Gresstoner lar deg velge den generelle fargetonen som brukes på gressobjekter.

Inne i Vedtak delen finner du flere oppløsningsegenskaper, nemlig Terrengbredde, Lengde, og Høyde. Alle tre er veldig eksplisitte av deres betydning. De Heightmap Resolution er pikseloppløsningen på terrengets høydekart. Det skal være en kraft på 2 pluss 1, for eksempel 513, hvor 512 er en kraft på 2, og du legger til 1.

Detaljoppløsning lar deg definere oppløsningen på kartet. Høyere oppløsninger gir deg mindre og mer detaljerte gresspatcher. De Detaljoppløsning per patch setter lengden og bredden på plassen av patcher gjengitt på en enkelt trekk-samtale. De Kontroller teksturoppløsning er oppløsningen til splat-kartet som styrer blanding av de forskjellige terrontrukturer. Endelig, den Base Texture Resolution setter oppløsningen til kompositt tekstur som brukes på terrenget når den ses fra en avstand som er overlegen til basiskortavstanden.

Den siste delen er heightmap. Her kan du importere en rawmap raw file eller eksportere ditt nåværende terreng til en highmap råfil. Dette kan være svært nyttig hvis du vil bruke ekstern tredjeparts programvare for å samhandle med søknaden eller spillet ditt.

Høydeverktøy

Før du går videre til høydeverktøyene, husk at du må sette oppløsningsinnstillingene først. Ellers, hvis du prøver å forandre dem senere, vil alt skulptur av terrenget gå tapt.

De tre første verktøyene på Terrenginspektør verktøylinjen er høydeverktøyene. Disse verktøyene brukes til å male høydeendringer på terrenget.

De gir et sett med "børster" med innstillinger for Pensel størrelse og opacity; disse verktøyene ligner veldig på malerverktøy fra alle bildeditorer. Dette lar deg male detaljer i terrenget, som om du var å male et bilde.

Hvis du flytter markøren til scene fanen, vil du se et blått område projisert på terrenget. Dette lar deg kjenne til området på terrenget som børsten din vil påvirke.

Det første verktøyet er Hev / senke høyde. Når du maler med dette verktøyet, økes terrengets høyde når du sveiper musen over den. Hvis du holder musen i et bestemt område, vil høyden akkumulere. En slik effekt kan visualiseres i det følgende bildet.

For å senke terrenget, hold bare på Skifte nøkkel mens du maler med verktøyet, og dette vil senke høyden på terrenget ditt.

Det andre verktøyet på terrengeditoren er Maling Høyde. Dette verktøyet brukes til å angi en bestemt høyde for et område av terrenget.

Det fungerer på samme måte som Heve / senke verktøyet, men det har en ekstra egenskap for å angi målet Høyde. Du kan velge ønsket Høyde ved å endre verdien av Høyde parameter. De flat knappen ved siden av høydeegenskapen vil nivåere hele terrenget til den valgte Høyde.

Endelig er det tredje verktøyet Glatt høyde. Dette verktøyet vil ikke drastisk øke eller redusere terrengets høyde; I stedet vil det myke landskapet og redusere utseendet på brå endringer. Dette verktøyet er spesielt nyttig når du har malt detaljene ved hjelp av en av de støyende børstene, siden disse børstene har en tendens til å skape skarpe, tunge steiner i landskapet, og du kan bruke dette verktøyet til å myke dem.

Det er nå tid å ta litt tid og lage ditt eget skulpturelle terreng. Prøv å bruke de ovennevnte tre verktøyene for å skape et fint fjellterreng.

Paint Texture Tool

Med terrenget skulpturert, er det nå på tide å teksturere det.

Før du går videre, må du importere miljøaktiver som er tilgjengelige med Unity 5. For å gjøre det, velg Eiendeler> Importpakke, og velg Miljø. Klikk Importere å importere alle miljømessige eiendeler.

Enhet lar deg male dine terreng med teksturer. Du kan male terrenget ditt med forskjellige teksturer i forskjellige områder. For eksempel kan du ha en tekstur for rock, en annen for sand og en annen for gress. Teksturene kan brukes med forskjellig gjennomsiktighet, noe som betyr at du kan ha glatte overganger mellom to teksturer. For å oppnå de beste resultatene, bør du male terrenget ditt med sømløse teksturer.

Som du kanskje har lagt merke til på Inspektør fanen, Malingstekstur verktøyet har flere børster, og lar deg endre Pensel størrelse, de opacity, og Målstyrke.

Første gang du bruker malingen Teksturverktøy, det vil ikke være noen teksturer å velge mellom. Det første du må gjøre er å legge til en ny tekstur i pallen din. For å gjøre dette, klikk på Rediger teksturer knappen og velg Legg til tekstur. Et nytt vindu vil vises.

Som du kan se, kan du i dette vinduet Å velge teksten du vil bruke og dens vanlige kart, hvis du har en. Klikk på plassen under tekstur og velg tekstur. Et vindu vil dukke opp for å la deg velge tekstur. Velg SandAlbedo tekstur og klikk Legg til.

Terrenget ditt skal nå ha en sand utseende. Merk at du alltid kan endre det på alternativet Rediger tekstur, eller fjern det. 

Den første teksten du lager, bør alltid være grunntekstur for terrenget. Den komplette listen over teksturer som brukes i dette eksemplet er:

  1. SandAlbedo
  2. GrassHillAlbedo
  3. GrassRockAlbedo
  4. MudRockyAlbedo
  5. CliffAlbedo

Alle er en del av de importerte miljømidlene og kan finnes på samme måte som SandAbedo tekstur. Gå videre og importer dem alle.

Når du har importert alle teksturer, er det nå på tide å strukturere terrenget ditt slik du vil. Velg en tekstur og maling det ønskede miljøet. Et eksempel på et strukturert kart er følgende.

Når du er fornøyd med resultatet, gå videre til neste del.

Paint Tree Tool

Nå som du har terrenget ditt malt, er det på tide å legge til noen trær. Enhet 3D lar deg sette trær på terrenget ditt på samme måte som du malte teksturer. Ved hjelp av billboardingsinnstillinger for fjerne trær, opprettholder Unity en god ytelsesytelse, slik at du kan ha tette skoger med tusenvis av trær.

For å begynne å male trær, velg din Terreng fra hierarki fanen og på Inspektør kategorien, velg den femte knappen.

På samme måte som teksturer, må du også legge til trærne. Klikk på Rediger trær> Legg til tre.

Enhet vil spørre deg om prefab av treet du vil bruke. Klikk på den lille sirkelen, og et annet vindu vil dukke opp. Denne gangen vil det vise deg alle prefabs du har i prosjektet ditt.

Velg Broadleaf_desktop tre prefab og klikk Legg til. Dette vil lukke prefab-vinduet og legge det valgte treet inn i prosjektet.

Du kan nå velge palmetre for å male det på terrenget ditt.

Under innstillinger, Du finner flere parametere som du kan justere mens du legger trær i scenen din. Pensel størrelse definerer området du vil male, mens Tre tetthet definerer antall trær du vil ha i det malte området. Høye verdier vil bety flere trær. Trehøyde vil tillate deg å definere hvordan høyden endres. Du kan sette det til tilfeldig og bruke et verdieringsintervall, eller du kan angi en bestemt verdi. Du kan Lås bredde til høyde av trærne, for å få dem til å ha samme størrelsesforhold. Du kan også randomisere trerotasjonsretningen ved hjelp av Tilfeldig trerotasjon alternativ. Også trerotasjonen kan settes til tilfeldig.

Inne i Lighting delen du kan angi hvordan lysbildene genereres for trærne.

For å male trærne i terrenget, flytt musen over i scenevisningen. Det blå området representerer børsten. Når du har valgt en tretype, trykker du på venstre mus knapp på terrenget og begynne å lage trær.

For å slette trær fra et bestemt område, hold Skifte og bruk venstre museknapp. Dette vil tømme alle trær i børsteområdet. Hvis du bare vil slette en bestemt type tre, holder du Styre i stedet for Shift. Dette fjerner bare den valgte tre typen.

Du kan alltid endre eller slette en type tre ved å velge den og klikke på rediger tree-knappen. For å endre et tre, klikk på Rediger, og for å slette det, klikk på Fjern.

Til slutt vil du legge merke til det inne i Terrain Collider komponent, du har et felt som heter Aktiver Tree Colliders. Ved valg av dette alternativet aktiverer du kollisjoner mellom andre spillobjekter og trærne.

Hvis du ikke vil male trærne manuelt, kan du bruke Massested Trær knapp. Hvis du klikker der, vil et nytt vindu dukke opp. Enheten vil da be deg om en rekke trær å skape. Sett Antall trær og klikk på Sted. Enhet vil da tilfeldig legge trærne i terrenget ditt.

Det neste trinnet er å være kreativ og fylle terrenget ditt med trær. For å skape forskjellige trær, kan du også legge til nye trær som Palm_Desktop, Broadleaf_Mobile og Conifer_Desktop. For det, bruk alternativet Rediger trær under trær meny (innsiden Inspektør).

Du kan lage noe som følgende bilde (eller noe helt annet).

Når du er klar, kan du gå videre til neste trinn.

Paint Details Tool

Enhet gjør det mulig for terrengene å ha gressklumper og andre små gjenstander, som bergarter, som dekker overflaten. Gresset gjengis ved hjelp av 2D-bilder, mens andre gjenstander vanligvis er vanlige masker.

For å legge til detaljer i terrenget, velg terrengobjektet fra hierarkiet. Inne i Inspektør kategorien, klikk på den sjette knappen, den med blomstene.

Som du ser, har du nå et lignende grensesnitt til Høydeverktøy. Her har du også et sett med pensler som du kan velge mellom for å male en liste med detaljer.

Siden du ikke har noen objektdetaljer valgt, la oss legge til dem ved å klikke på Rediger detaljer> Legg til Gress Tekstur.

Dette åpner et vindu der du kan angi flere egenskaper for gresset ditt. Detaljstruktur Lar deg definere tekstur som du vil bruke til gresset ditt. Du kan også definere flere egenskaper som Maks bredde, Min Bredde, Maks høydeMin høyde, støyutbredelse, Sunn farge, Tørr farge, og Billboard. Alle disse egenskapene vil definere hvordan gresset ditt vil se ut.

For denne opplæringen kan du forlate standardalternativene eller endre dem etter din vilje.

Klikk på sirkelen foran Detaljstruktur felt. Dette åpner et nytt vindu. Søk etter GrassFrond01AlbedoAlpha, velg det, og klikk Legg til.

Akkurat som for trærne, kan du bruke flere børster til å male gresset. Du kan angi forskjellig Penselstørrelser og bytt penselen opacity og Målstyrke.

Det er nå på tide å være kreativ og male gress på terrenget.

Hvis du vil legge til et nett for å male detaljer på terrenget ditt, for eksempel bergarter, må du gjenta samme prosess du gjorde med å importere gresset. Men denne gangen, når du klikker på Rediger detaljer, velge Legg til detaljmesh. Dette åpner et vindu der du kan angi flere parametre i detaljmasket, som er svært lik det du brukte til å importere gresset. 

Dessverre inkluderer miljøet eiendeler ingen rock prefab, så du vil ikke kunne male bergarter direkte. Du kan imidlertid søke etter noen steiner på Unity Asset Store, siden det er et flott sted å finne gratis eiendeler.

Konklusjon

Dette avslutter opplæringen om Unity Terrain Tools. Du lærte om flere terrengverktøy og konfigurasjoner. Med denne kunnskapen kan du nå opprette, endre og forbedre nåværende eller nye terreng for ditt neste banebrytende spill eller program.

Enhet har en aktiv økonomi. Det er mange andre produkter som hjelper deg med å bygge opp prosjektet ditt. Plattformens natur gjør det også til et flott alternativ som du kan forbedre dine ferdigheter. Uansett kan du se alt vi har tilgjengelig på Envato Marketplace.

Hvis du har ytterligere spørsmål eller kommentarer, kan du som alltid frigi en linje i kommentarfeltet.