NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Lekce 10 - 3D střílečka v Unity - Úprava terénu

V minulé lekci, 3D střílečka v Unity - Efekty střelby, jsme si přidali mířidla a implementovali efekt střelby.

V dnešním Unity 3D tutoriálu se naučíme upravovat terén, například přidávat stromy a trávu.

Výsledný terén bude vypadat následovně:

Tvorba 3D her v Unity

Stažení balíčku

Unity má vlastní systém na úpravu terénu. Proto nám stačí jen stáhnout balíček obsahující textury trávy, stromů a písku. Balíček je přímo od Unity a jmenuje se Standard Assets. Použijeme ho ve verzi pro Unity 2018.4.

Nejdřív přejdeme na oficiální stránku Asset Store . Do vyhledávacího pole zadáme název našeho balíčku, který je Standard Assets (for Unity 2018.4) a potvrdíme. Poté klikneme jen na ikonku našeho vyhledaného balíčku:

Tvorba 3D her v Unity

Je možné, že balíček již není k dispozici v Asset Store. Balíček je možné si stáhnout pod touto lekcí.

Následně stáhneme a poté importujeme pomocí tlačítka Import:

Tvorba 3D her v Unity

Úprava terénu a komponenta Terrain

Otevřeme si záložku Scene, ve které budeme dnes převážně pracovat. V levé části Hierarchy klikneme na objekt s názvem Terrain. Následně uvidíme v pravé části oddíl Inspector s komponentou Terrain.

Komponenta Terrain je vždy umístěna na herním objektu Terrain. Tato komponenta umožňuje například rozšíření terénu, vyvýšení určité části nebo její snížení. Dále obarvení terénu a přidání trávy nebo stromů.

Komponenta má na sobě řadu tlačítek, která přepínají záložky níže:

Tvorba 3D her v Unity

Záložky

Pojďme si jednotlivé záložky popsat.

S obrázkem hor

Tvorba 3D her v Unity Záložka s obrázkem hor a znaku + nám umožňuje přidat okolní terény přiléhající přímo na stávající terén. Přidané terény mají stejné rozměry jako původní terén. Nejdříve musíme kliknout na ikonu a poté klikáme v záložce Scene na hranice našeho stávajícího terénu.

S obrázkem štětce

Tvorba 3D her v Unity Záložka s obrázkem štětce má mnoho možností využití, které se vybírají z menu s následující nabídkou:

  • Raise or Lower Terrain - snižování nebo zvyšování úroveň terénu,
  • Paint Holes - vytváření otvorů v terénu,
  • Paint Texture - nanášení textury na terén,
  • Set Height - zvyšování úrovně terénu oproti celému terénu,
  • Smooth Height - vyhlazovaní oblasti se zbytkem terénu,
  • Stamp Terrain - upravování výšky terénu pomocí tvarů z razítek.

S obrázkem stromu

Tvorba 3D her v Unity Záložka s obrázkem stromu je k umisťování stromů na terén. Je možné nastavit hustotu stromů, a také maximální výšku stromů nebo poměr výšky k šířce.

S obrázkem květin

Tvorba 3D her v Unity Záložka s obrázkem květin slouží k umísťování 3D trávy nebo květin na scénu a ne pouze textur. Zde můžeme, podobně jako u stromů, nastavovat hustotu porostu a tvar, ve kterém chceme květiny nanášet.

Se symbolem ozubeného kolečka

Tvorba 3D her v Unity Poslední záložka se symbolem ozubeného kolečka je nastavení. V nastavení můžeme upřesnit nejrůznější detaily od výchozího materiálu našeho terénu až po rychlost větru působící na porost nanesený na terén.

Nanášení textur

Zvolíme objekt Terrain v záložce Hierarchy a klikneme na záložku s obrázkem štětce v záložce Inspector. Poté klikneme na rozbalovací seznam pod záložkami se symboly v komponentě Terrain. Zvolíme možnost Paint Texture:

Tvorba 3D her v Unity

Výběr volby Paint Texture nám zajistí možnost nanášení textury, neboli obalovat terén fotoobrázkem.

Textura trávy

Dále klikneme na možnost Edit Terrain Layers… s obrázkem ozubeného kolečka, která se nachází v komponentě. Zobrazí se dvě možnosti:

  • Create Layer
  • Add Layer.

My zvolíme Create Layer, jelikož nemáme vytvořenou žádnou vrstvu, kterou bychom mohli přidat. Následně se nám otevře nabídka 2D textur, které budou tvořit náš layer (vrstvu). Zde se volí textura, kterou budeme nanášet na náš terén. My zvolíme texturu s názvem GrassHillAl..:

Tvorba 3D her v Unity

Tato textura stejně jako všechny ostatní textury, které budeme dnes používat, jsou z balíčku pod touto lekcí.

Po zvolení se nám textura okamžitě nanesla na celý náš terén. Jak to? Náš terén doteď neměl výchozí texturu. Do doby, než jsme ji nanesli, měl terén texturu stanovenou automaticky Unity Editorem. Proto jakmile vytvoříme první layer, nanese se na celý povrch terénu. Z tohoto důvodu jsme také jako první layer vytvořili trávu, která bude v našem prostředí na většině míst.

Textura kamenité cesty

Jelikož náš terén má už nanesenou texturu trávy, můžeme vytvořit nový layer s kamenitou cestou. Klikneme znovu na tlačítko s ozubeným kolečkem a nápisem Edit Terrain Layers.. a zvolíme možnost Create Layer. Vybereme texturu s názvem GrassRock...

Můžeme krásně vidět, že náš terén má stále nanesenou texturu trávy, protože již nepřidáváme první layer.

Klikneme na náš nově vytvořený layer kamenité cesty. Tímto jsme ho zvolili jako vrstvu, kterou chceme nanášet:

Tvorba 3D her v Unity

V části s názvem Brushes můžeme vybírat štětce, kterými chceme vrstvu nanášet. Pod výběrem tvaru si můžeme také navolit velikost štětce a průhlednost (viditelnost) nanesené vrstvy.

Jakmile máme zvolené všechny vlastnosti štětce a vrstvu, kterou chceme nanášet, můžeme začít s nanášením vrstvy. Stačí jen zajet myší do oblasti naší scény na náš terén a zobrazí se modrá oblast terénu (má tvar podle tvaru štětce). Tato oblast značí dosah účinků nanášení vrstvy. Pak stačí kliknout. Tlačítko můžeme držet a posouvat myš, čímž budeme neustále nanášet vrstvu na terén. Nebo můžeme jen klikat.

Vyvyšování terénu

Terén je ovšem jen málokdy perfektně rovný. Proto nyní zvolíme možnost Raise or Lower Terrain. Zvyšování terénu funguje na podobném principu jako nanášení vrstev. Rozdíl je jen v tom, že pro:

  • vyvýšení použijeme levé tlačítko myši,
  • snížení nebo prohloubení použijeme Levý Shift a levé tlačítko myši.

Zde doporučujeme měnit tvary štětce pro lepší vzhled kopců či hor a dávat si pozor na hodnotu Opacity. Ta razantně mění o kolik se zvětší či zmenší dané místo. Proto je lepší jen klikat a nedržet myš.

Tvorba 3D trávy

Trávu, která se bude například pohybovat podle větru nebo se bude různě ohýbat, umí též vytvořit naše komponenta Terrain.

Nejprve klikneme na symbol květin a pak na tlačítko s obrázkem ozubeného kolečka a nápisem Edit Details…. Poté zvolíme možnost Add Grass Texture. Následně si v okénku s názvem Add Grass Texture vybereme kolonku Detail Texture a klikneme na symbol kruhu s tečkou uprostřed, v řádku s kolonkou. Vybereme texturu s názvem GrassFond…. Poté klikneme na tlačítko Add. Celý proces zopakujeme a přidáme druhou texturu trávy se stejným názvem:

Tvorba 3D her v Unity

Nyní si zvolíme kliknutím jednu ze dvou trav v záložce Details a následně naneseme trávu stejně jako v případě vrstev textur. Pomocí hodnoty Opacity volíme hustotu porostu.

Přidání stromů

Posledním krokem je přidání stromů. Klikneme na ikonu stromů a poté na tlačítko s ozubeným kolečkem a nápisem Edit Trees…. Zvolíme možnost Add Tree. Následně v okénku Add Tree zvolíme jako Tree Prefab strom s názvem Broadleaf_Des­ktop.

Poté přidáme stejným způsobem další strom s názvem Conifer_Desktop. Nanášení stromů je totožné s nanášením trávy. Zvolíme strom v záložce Trees a poté klikáme na náš terén v záložce Scene na místa, kam chceme nanést stromy.

Místo Opacity se zde využívá hodnota Tree Density k nastavení množství přidaných stromů.

Zmenšení stínů

Jediné, co ještě uděláme, je zmenšení stínů. V záložce Hierarchy klikneme na objekt Directional Light. V komponentě Light změníme pod kolonkou Realtime Shadows hodnotu Strength na 0.128 nebo jinou, která lahodí vašemu oku.

Výsledný terén může vypadat následovně:

Tvorba 3D her v Unity

V příští lekci, 3D střílečka v Unity - Vložení modelu nepřítele do scény, naimportujeme model nepřítele, vložíme ho do scény a vytvoříme mu animátor.


 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 597x (79.74 MB)

 

Předchozí článek
3D střílečka v Unity - Efekty střelby
Všechny články v sekci
Tvorba 3D her v Unity
Přeskočit článek
(nedoporučujeme)
3D střílečka v Unity - Vložení modelu nepřítele do scény
Článek pro vás napsal Tomáš Brabec
Avatar
Uživatelské hodnocení:
15 hlasů
Hodně zdaru programátoři všeho druhu,doufám ,že nikdy nezažijete nudu.
Aktivity