Unity Terrain Engine Tools

Vad du ska skapa

Unity är en multi-platform spelmotor utvecklad av Unity Technologies och används för att skapa videospel och applikationer för en mängd olika enheter (PC, konsoler, mobila enheter och till och med webbplatser). Enhets kärnfördelar är dess robusthet och bärbarhet. Enhet riktar sig mot flera kända API: er, såsom Direct3D, OpenGL, OpenGL ES och den senaste Vulkan.

På grund av ovan nämnda egenskaper har Unity blivit alltmer populär bland AAA-programutvecklingshus och ambitiösa spelprogrammerare.

Enhet stöder flera teknologier och komponenter. En av nyckelkomponenterna är terrängmotorsystemet. Unitys terrängsystem gör att du kan skapa stora landskap för dina spel eller applikationer. Du kan använda ett urval av verktyg som är tillgängliga för att skapa terränger enkelt och snabbt.

Denna handledning kommer att fokusera på att förklara hur terrängmotorverktyg fungerar och hur man använder dem för att skapa stora och rika terrängmiljöer.

förutsättningar

Först, se till att du har den senaste versionen av Unity. I den här handledningen använder vi versionen 5,6. Se till att du använder den senaste Unity-versionen; annars kan du hitta små skillnader efter handledningen och använda fysikskarv.

För denna handledning använder du inte någon startfil. Målet är att skapa ett nytt projekt och utföra handledningen därifrån.

Terrängverktygen

Det första steget är att skapa ett nytt Unity-projekt. Lägg nu till en ny scen (Fil> Ny scen). Den nya scenen har skapats med två spelobjekt, Huvudkamera och a Riktigt ljus (Enhet 5 lägger automatiskt till en skybox i scenen).

För att lägga till ett terrängspelobjekt, gå till GameObject menyn och välj 3D-objekt> Terräng. Detta kommer att lägga till ett plan plan (kallas Terräng) till din scen. Detta plan är det nät som vi ska skulpta för att skapa din nivån terräng.

Om du kontrollerar din Tillgångar katalog (nedre delen av enhet), kommer du att se att a Ny terräng filen skapades.

Välj terrängen och titta på Inspektör flik. Du ser att terrängen har tre komponenter: Omvandla, de Terräng script och Terräng Collider komponent.

Terrängskomponenten ger dig de verktyg du behöver för att redigera din terräng. Alla verktyg på verktygsfältet, med undantag för träningsverktyget och inställningspanelen, ger en uppsättning "borstar" och inställningar för borststorlek och opacitet, precis som målarverktyg från en vanlig bildredigerare. Detta gör att du kan skulptera din terräng på samma sätt som ett målningsverktyg.

Om du väljer någon pensel under Terräng komponent och mus över terrängen ser du ett blått område som projiceras på terrängen. Detta låter dig känna till det område på terrängen som din pensel kommer att påverka.

Som du kanske redan har insett, Terräng är ganska stor. För att navigera genom Scen, du kan använda musen och tangentbordet. Inuti Scen fliken, tryck och håll ner din Höger musknapp (markören ska ändras till ett öga).

Medan du håller musknappen:

  • Du kan ändra vinkeln på din vy genom att flytta musen.
  • Använd W, S, A, D nycklar för att flytta runt 3D-scenen.

Innan du börjar utforska terrängverktygen, låt oss ta en titt på Terräng egenskaper. Den sista knappen på Terrain-komponenten (inuti Inspektör) visar basparametrarna på terrängen.

Egenskaperna är indelade i sektioner:

  • Bas terräng
  • Trä och detaljobjekt
  • Vindinställningar för gräs
  • Upplösning
  • Heightmap

Inne i det första avsnittet Bas terräng, Du hittar flera egenskaper och parametrar.

De Dra Alternativet växlar terrängens återgivning till eller från. De Pixelfel representerar noggrannheten för kartläggningen mellan terrängkartorna (till exempel texturer, höjdkartor och genererad terräng). Högre värden representerar lägre noggrannhet, och lägre värden kommer att resultera i rendering av overhead. Det är ditt ansvar att balansera detta värde för att skapa en trevlig och rik miljö.

De Bas karta dist. är det maximala avståndet vid vilket terrängstruktur kommer att visas i full upplösning. Du kan aktivera eller inaktivera skuggor genom att välja Kasta skuggor.

Nästa har vi Material. Här ställer du in det material som ska användas för att göra terrängen. Detta påverkar hur färgkanalerna i en terrängtextur tolkas. Du kan välja:

  • Inbyggd Standard representerar det fysikaliskt baserade reningsmaterialet som introducerades i enhet 5. Om du väljer det här alternativet kan du för varje splatlager använda en textur för albedo och jämnhet, en textur för normal och ett skalärt värde för att finjustera metallheten. Tänk på att om "Skriv över jämnhet"är markerad, i stället för att läsa från texturkartor, kommer smidigheten av hela terrängen att styras endast av jämnhet värde.
  • Inbyggd äldre diffus representerar det äldre inbyggda terrängmaterialet från tidigare Unity-utgåvor (enhet 4 och bakåt). Den använder en Lambert-belysningsmodell och har valfritt normalt kartsupport.
  • Byggd i Legacy Specular använder Blinn-Phong-belysningsmodellen (vänligen se den här tidigare Unity 5-blixten) och har valfritt normalt kartsupport. Med det här alternativet kan du också ange den övergripande speciella färgen och skenheten för terrängen.
  • Beställnings alternativet använder ett anpassat material av ditt val för att göra terrängen. Detta material borde vara en skuggare som är orienterad för terrängframställning. Det här är ett alternativ som jag bara rekommenderar till avancerade användare. Men om du vill prova, ta en titt på källkoden för några av de inbyggda terrängskärarna och gör ändringar ovanpå dem.

Du kan också ställa in Reflektionsprober för vissa material, men de kommer bara att användas när du använder ett inbyggt standardmaterial eller ett anpassat material som stöder återgivning med reflektion. Alternativen för reflektionsprober är:

  • Av: Reflektionsprober är inaktiverade, och endast skyboxen kommer att användas för reflektion.
  • Blandprober: Reflektionsprober är aktiverade. Blandningen sker endast mellan prober. Standardreflektion kommer att användas om det inte finns några reflektionsprober i närheten, men det kommer ingen blandning mellan standardreflektion och sond.
  • Blend Probes och Skybox: Reflektionsprober är aktiverade. Blandning sker mellan prober eller sonder och standardreflektion.
  • Enkel: Reflektionsprober aktiveras, men ingen blandning kommer att inträffa mellan prober när det finns två överlappande volymer.

Slutligen är den sista parametern i det här avsnittet Tjocklek. Detta värde anger hur mycket kollisionsvolymen för terrängen ska sträcka sig längs den negativa Y-axeln. Objekt anses kollidera med terrängen från ytan till ett djup som är lika med tjockleken. Detta hjälper till att hindra höghastighets rörliga föremål från att tränga in i terrängen utan att använda dyra kontinuerlig kollisionsdetektering.

Nästa inställningsavsnitt är Trä och detaljobjekt.

Det första alternativet är Dra. Här kan du ställa in detaljerna i detaljerna. I grund och botten berättar den motorn om du vill att träd och gräs ska dras eller inte. Därefter har du Bake Light Probes för träd. Om du aktiverar det här alternativet skapar Unity ljusprober i varje träds position. Sonderna kommer sedan att appliceras på trädens rendering. Om du inaktiverar det här alternativet kommer träd fortfarande att påverkas av ljusgruppsprober. Observera att det här alternativet endast är tillgängligt för träd som har ljusprober aktiverade på sina prefabs.

De Detaljavstånd är avståndet från kameran utöver vilka detaljer som kommer att slängas. Detaljdensitet representerarantalet detaljobjekt i en viss yta. Trädsträcka representerar avståndet från kameran utöver vilka träd kommer att slängas. De Billboard Start är avståndet från kameran där 3D trädobjekt kommer att ersättas med skyltbilder. De Blekna längd representerar det avstånd över vilket träd övergår mellan 3D-objekt och skyltar. Slutligen, den Max Mesh Trees är det maximala antalet synliga träd som kommer att representeras som solida 3D-maskor.

När du fortsätter så ser du Vindinställningar för gräs sektion.

Fart definierar vindhastigheten när den blåser gräs. De Storlek representerar rippelstorleken på gräsbevuxna områden. Böjning kan du definieragraden till vilken gräsobjekt är böjda av vinden. Gräsfärg låter dig välja den övergripande färgton som appliceras på gräsobjekt.

Inuti Upplösning avsnittet hittar du flera upplösningsegenskaper, nämligen Terrängbredd, Längd, och Höjd. Alla tre är mycket tydliga på deras mening. De Heightmap Resolution är pixelupplösningen på terrängens höjdkarta. Det ska vara en kraft på 2 plus 1, till exempel 513, där 512 är en kraft på 2, och du lägger till 1.

Detaljupplösning kan du definiera upplösningen på kartan. Högre upplösningar ger dig mindre och mer detaljerade gräsplåster. De Detaljupplösning per patch anger längden och bredden på plåstret av fläckar som gjordes på ett enstaka samtal. De Kontroll Texture Resolution är upplösningen av splat-kartan som styr blandningen av de olika terrängtexturerna. Slutligen, den Bastexturupplösning anger upplösningen av den sammansatta texturen som används på terrängen när den ses från ett avstånd som överstiger baskortsavståndet.

Det sista avsnittet är Heightmap. Här kan du importera en RAW-fil för heightmap eller exportera din nuvarande terräng till en Rawmap Rawmap. Detta kan vara mycket användbart om du vill använda extern tredjepartsprogramvara för att interagera med din applikation eller spel.

Höjdverktyg

Innan du går vidare till verktygshöjden, kom ihåg att du måste ställa in upplösningsinställningarna först. Annars, om du försöker byta dem senare, kommer all terrängs skulptur att gå vilse.

De tre första verktygen på Terränginspektör verktygsfältet är höjdverktygen. Dessa verktyg används för att måla höjdförändringar på terrängen.

De ger en uppsättning "borstar" med inställningar för Penselstorlek och Opacitet; dessa verktyg är mycket liknar målningsverktyg från någon bildredigerare. Detta låter dig måla detaljer i terrängen, som om du målade en bild.

Om du flyttar markören till Scen fliken, kommer du att se ett blått område projicerat på terrängen. Detta låter dig känna till det område på terrängen som din pensel kommer att påverka.

Det första verktyget är Höja / sänka höjden. När man målar med det här verktyget, ökar terrängens höjd när du sveper musen över den. Om du håller musen i ett visst område kommer höjden att ackumuleras. En sådan effekt kan visualiseras i följande bild.

För att sänka terrängen, håll bara Flytta nyckeln medan du målar med verktyget, och detta kommer att sänka höjden på din terräng.

Det andra verktyget på terrängredigeraren är Målarhöjd. Detta verktyg används för att ställa in en specifik höjd för ett område på terrängen.

Det fungerar på samma sätt som Höj / sänk verktyget, men det har en extra egenskap för att ställa in målet Höjd. Du kan välja önskat Höjd genom att ändra värdet av Höjd parameter. De Platta knappen bredvid höjdsegenskapen nivån hela terrängen till den valda Höjd.

Slutligen är det tredje verktyget Jämn höjd. Detta verktyg kommer inte att drastiskt öka eller minska terrängens höjd; i stället kommer det att mildra landskapet och minska utseendet på abrupta förändringar. Det här verktyget är särskilt användbart när du har målat detaljen med en av de bullrigare penslarna, eftersom dessa borstar tenderar att skapa skarpa, ihåliga klippor i landskapet och du kan använda detta verktyg för att mildra dem.

Nu är det dags att ta lite tid och skapa egen skulpterad terräng. Försök använda de ovannämnda tre verktygen för att skapa en trevlig bergs terräng.

Paint Texture Tool

Med terrängen skulpterad, är det dags att konsistera den.

Innan du går vidare måste du importera miljötillgångar som är tillgängliga med Unity 5. För att göra det, välj Tillgångar> Importpaket, och välj Miljö. Klick Importera att importera alla miljö tillgångar.

Enighet låter dig måla dina terränger med texturer. Du kan måla din terräng med olika texturer i olika områden. Till exempel kan du ha en konsistens för rock, en annan för sand och en annan för gräs. Texturerna kan appliceras med olika transparens, vilket innebär att du kan ha smidiga övergångar mellan två texturer. För att uppnå bästa resultat ska du måla din terräng med sömlösa texturer.

Som du kanske har märkt på Inspektör fliken, Färgtextur Verktyget har flera borstar och låter dig ändra Penselstorlek, de Opacitet, och den Målstyrka.

Första gången du använder färgen Texturverktyg, det kommer inte att finnas några texturer att välja mellan. Det första du behöver göra är att lägga till en ny textur i din pall. För att göra detta klickar du på Redigera texturer knappen och välj Lägg till textur. Ett nytt fönster kommer att visas.

Som du kan se, kan du i det här fönstret Välj Texturen du vill använda och dess normala karta, om du har en. Klicka på torget under textur och välj din textur. Ett fönster kommer att dyka upp för att låta dig välja texturen. Välj SandAlbedo konsistens och klick Lägg till.

Din terräng ska nu ha en sand utseende. Observera att du alltid kan ändra det på alternativet redigera textur eller ta bort det. 

Den första texturen du skapar bör alltid vara grundtexturen för terrängen. Den kompletta listan med texturer som används i detta exempel är:

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

Alla är en del av de miljömässiga importerade tillgångarna och kan hittas på samma sätt som SandAbedo textur. Gå vidare och importera dem alla.

När du har importerat alla texturer, är det dags att strukturera din terräng som du vill. Välj en textur och måla önskad miljö. Ett exempel på en texturerad karta är följande.

När du är nöjd med resultatet fortsätter du till nästa avsnitt.

Paint Tree Tool

Nu när du har mått på din terräng, är det dags att lägga till några träd på den. Enhet 3D låter dig lägga träd på din terräng på samma sätt som du målade texturerna. Unity upprätthåller en bra rendering prestanda med hjälp av inställningar för avlägsna träd, vilket gör att du kan ha täta skogar med tusentals träd.

För att börja måla träd, välj din Terräng från Hierarki fliken och på Inspektör fliken, välj den femte knappen.

På samma sätt som texturer behöver du också lägga till träden. Klicka på Redigera träd> Lägg till träd.

Enhet kommer att fråga dig för prefab av det träd du vill använda. Klicka på den lilla cirkeln, och ett annat fönster kommer att dyka upp. Den här gången kommer det att visa dig alla prefabs du har i ditt projekt.

Välj Broadleaf_desktop träd prefab och klicka Lägg till. Detta stänger prefabricerade fönstret och lägger till det valda trädet i projektet.

Du kan nu välja palmen och måla den på din terräng.

Under inställningar, Du hittar flera parametrar som du kan justera när du placerar träd i din scen. Penselstorlek definierar det område du kommer att måla, medan Trädäthet definierar antalet träd du kommer att ha i det målade området. Höga värden betyder fler träd. Trädhöjd kan du definiera hur höjden ändras. Du kan ställa in det till slumpmässigt och använda ett värdeintervall, eller du kan ange ett visst värde. Du kan Lås Bredd till Höjd av träden, för att få dem att ha samma bildförhållande. Du kan också randomisera trädrotationsorienteringen med hjälp av Slumpmässig trädrotation alternativ. Trärotationen kan också ställas in slumpmässigt.

Inuti Belysning avsnittet kan du ange hur ljuskartorna genereras för dina träd.

För att måla träden i terrängen, flytta musen över i din scenvy. Det blå området representerar borsten. Med en trädtyp markerad trycker du på vänster mus knapp på terrängen och börja skapa träd.

För att radera träd från ett visst område, håll Flytta och använd vänster musknapp. Detta kommer att rensa alla träd i borstområdet. Om du bara vill radera en viss typ av träd håller du Kontrollera istället för Shift. Detta kommer bara att rensa den valda trädtypen.

Du kan alltid ändra eller ta bort en typ av träd genom att markera den och klicka på redigera trädknappen. För att ändra ett träd, klicka på redigera och för att radera det, klicka på ta bort.

Slutligen märker du det inuti Terräng Collider komponent, du har ett fält som heter Aktivera Tree Colliders. Genom att välja det här alternativet aktiverar du kollisioner mellan andra spelobjekt och träden.

Om du inte vill måla träden manuellt kan du använda Mass Place Trees knapp. Om du klickar på det kommer ett nytt fönster att dyka upp. Enighet kommer då att fråga dig om ett antal träd att skapa. Ställ in Antal träd och klicka på Plats. Enighet kommer sedan slumpmässigt att placera träden i din terräng.

Nästa steg är att vara kreativ och fylla din terräng med träd. För att skapa olika träd kan du också lägga till nya träd som Palm_Desktop, Broadleaf_Mobile och Conifer_Desktop. För det, använd alternativet Redigera träd under träd meny (inuti Inspektör).

Du kan skapa något som följande bild (eller något helt annat).

När du är klar kan du gå vidare till nästa steg.

Färgdetaljer Verktyg

Enighet gör det möjligt för terrängerna att få gräsklumpor och andra små föremål, såsom stenar, som täcker dess yta. Gräset görs med 2D-bilder, medan andra föremål vanligtvis är vanliga maskor.

För att lägga till detaljer i terrängen, välj ditt terrängobjekt från hierarkin. Inuti Inspektör fliken, klicka på den sjätte knappen, den med blommorna.

Som du kan se har du nu ett liknande gränssnitt till Höjdverktyg. Här har du också en uppsättning penslar som du kan välja för att måla en lista med detaljer.

Eftersom du inte har några objektdetaljer vald, låt oss lägga till dem genom att klicka på Redigera detaljer> Lägg till grässtruktur.

Detta öppnar ett fönster där du kan ställa in flera egenskaper för ditt gräs. Detaljtextur kan du definiera den textur som du ska använda för ditt gräs. Du kan också definiera flera egenskaper som Maximal bredd, Min Bredd, Maximal höjdMin Höjd, Buller Spridning, Hälsosam färg, Torr färg, och Anslagstavla. Alla dessa egenskaper kommer att definiera hur ditt gräs kommer att se ut.

För denna handledning kan du lämna standardalternativen eller ändra dem på din vilja.

Klicka på cirkeln framför Detaljtextur fält. Detta öppnar ett nytt fönster. Sök efter GrassFrond01AlbedoAlpha, välj det och klicka på Lägg till.

Precis som för träden kan du använda flera borstar för att måla gräset. Du kan ställa in olika Borststorlekar och byt borsten Opacitet och den Målstyrka.

Nu är det dags att vara kreativ och måla gräs på terrängen.

Om du vill lägga till ett nät för att måla detaljer på din terräng, till exempel bergarter, behöver du repetera samma process som du gjorde med att importera gräset. Men den här gången, när du klickar på Redigera detaljer, välja Lägg till detaljmask. Detta öppnar ett fönster där du kan ange flera parametrar i detaljmätverket, mycket liknar det du brukade importera gräset. 

Olyckligtvis innehåller miljötillgångar inte någon stenprefabrik, så du kommer inte att kunna måla stenar direkt. Men du kan söka efter några stenar över på Unity Asset Store, eftersom det är ett bra ställe att hitta lediga tillgångar.

Slutsats

Detta avslutar handledningen om Unity Terrain Tools. Du lärde dig om flera terrängverktyg och konfigurationer. Med denna kunskap kan du nu skapa, ändra och förbättra nuvarande eller nya terränger för ditt nästa spännande spel eller program.

Enhet har en aktiv ekonomi. Det finns många andra produkter som hjälper dig att bygga upp ditt projekt. Plattformens karaktär gör det också till ett bra alternativ som du kan förbättra dina färdigheter med. Oavsett fall kan du se allt vi har tillgängliga på Envato Marketplace.

Om du har ytterligare frågor eller kommentarer, kan du alltid, som alltid, släppa en rad i kommentarfältet.