Lekce 9 - 3D střílečka v Unity - Úprava terénu
V minulé lekci, 3D střílečka v Unity - Efekty střelby, jsme si udělali efekt střelby, zvuk výstřelu a přidali si mířidla.
V dnešním Unity 3D tutoriálu se naučíme upravovat terén. Ten máme vytvořený hned od první lekce. Nyní by si zasloužil upravit, aby vypadal jako reálné prostředí a nebyl to jen velký kvádr. K úpravě terénu nebude potřeba nic programovat. 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. Jmenuje se Standard
Assets (já použiji verzi for Unity 2018.4). Balíček je samozřejmě
i v příloze článku v souboru .zip
.
Otevřeme si nejdříve záložku Asset Store. Do pole s
textem Search for assets zadáme název našeho balíčku,
který je Standard Assets (for Unity 2018.4)
. Poté klikneme jen na
ikonku našeho vyhledaného balíčku:

Následně stačí kliknout na tlačítko Download a poté
na Import. Zvolíme složku Environment/
a
ostatní nezvolíme k Importování. Nyní máme vše
potřebné v našem projektu.
Úprava terénu
Nyní si musíme otevřít 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
Inspector s komponentou Terrain
.
Komponenta Terrain
Komponenta 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 nabarvení 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:

Pojďme si je popsat:
- Záložka s obrázkem hor a znaku plus 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.
- Tlačítko s obrázkem štětce má mnoho možností
využití. To se vybírá z menu s následující nabídkou:
- Raise or Lower Terrain - Můžeme buď snižovat nebo zvyšovat úroveň terénu,
- Paint Holes - vytvářet otvory v terénu,
- Paint Texture - nanášet textury na terén,
- Set Height - zvyšovat úroveň terénu oproti celému terénu,
- Smooth Height - vyhlazovat oblasti se zbytkem terénu a
- Stamp Terrain - upravit výšku terénu pomocí tvarů z razítek.
- 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.
- 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 textury. Zde můžete podobně jako u stromů nastavovat hustotu porostu a tvar, ve kterém chcete květiny nanášet.
- 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 vyjížděcí seznam pod
záložkami se symboly v komponentě Terrain
. Zvolíme možnost
Paint Texture, čímž budeme schopní na terén nanášet
texturu (obalovat jej na určitých místech 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 a
- 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 a všechny ostatní textury, které
budeme dnes používat, jsou z balíčku, jenž jsme si stáhli na začátku
této lekce. 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 zas 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. Nanášení vrstvy je jednoduché. 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žíváme levé tlačítko myši a pro snížení nebo prohloubení používáme 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. Stačí kliknout na
symbol květin. Zde klikneme na tlačítko s obrázkem ozubeného kolečka a
nápisem Edit Details… a 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
a 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, si naimportujeme model nepřítele, vložíme ho do scény a vytvoříme mu animátor.
Stáhnout
Staženo 27x (80.18 MB)
Komentáře
Zatím nikdo nevložil komentář - buď první!