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ě:
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:
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:
Ú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:
Záložky
Pojďme si jednotlivé záložky popsat.
S obrázkem hor
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
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
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
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
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:
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..:
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:
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:
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_Desktop.
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ě:
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ínkamiStaženo 597x (79.74 MB)