9. diel - 3D strieľačka v Unity - Úprava terénu
V minulej lekcii, 3D strieľačka v Unity - Streľba na nepriateľa , sme si vytvorili skript pre streľbu na nepriateľa.
V dnešnom Unity 3D tutoriálu sa naučíme upravovať terén. Ten máme vytvorený hneď od prvej lekcie. Teraz by si zaslúžil upraviť, aby vyzeral ako reálne prostredie a nebol to len veľký kváder. K úprave terénu nebude potrebné nič programovať. Výsledný terén bude vyzerať nasledovne:
Stiahnutí balíčka
Unity má vlastný systém na úpravu terénu. Preto nám
stačí len stiahnuť balíček obsahujúci textúry trávy, stromov a piesku.
Balíček je priamo od Unity. Volá sa Standard
Assets (ja použijem verzii for Unity 2018.4). Balíček je samozrejme
aj v prílohe článku v súbore .zip
.
Otvoríme si najskôr záložku Asset Store. Do poľa s
textom Search for assets zadáme názov nášho balíka, ktorý
je Standard Assets (for Unity 2018.4)
. Potom klikneme len na ikonku
nášho vyhľadaného balíčka:
Následne stačí kliknúť na tlačidlo Download a potom na
Import. Zvolíme zložku Environment/
a ostatné
nezvolíme k Importovanie. Teraz máme všetko potrebné v
našom projekte.
Úprava terénu
Teraz si musíme otvoriť záložku Scene, v ktorej budeme
dnes prevažne pracovať. V ľavej časti Hierarchy klikneme na
objekt s názvom Terrain
. Následne uvidíme v pravej časti
Inspector s komponentom Terrain
.
Komponent Terrain
Komponent je vždy umiestnená na hernom objektu Terrain
. Tento
komponent umožňuje napríklad rozšírenie terénu, vyvýšenie určitej
časti alebo jej zníženie. Ďalej nafarbenia terénu a pridanie trávy alebo
stromov.
Komponent má na sebe rad tlačidiel, ktoré prepínajú záložky nižšie:
Poďme si ich popísať:
- Záložka s obrázkom hôr a znaku plus nám umožňuje pridať okolité terény priliehajúce priamo na existujúce terén. Pridanej terény majú rovnaké rozmery ako pôvodná terén. Najskôr musíme kliknúť na ikonu a potom klikáme v záložke Scene na hranice nášho existujúceho terénu.
- Tlačidlo s obrázkom štetca má veľa možností
využitia. To sa vyberá z menu s nasledujúcou ponukou:
Raise or Lower Terrain - Môžeme buď znižovať alebo
zvyšovať úroveň terénu,
Paint Holes - vytvárať otvory v teréne,
Paint Texture - nanášať textúry na terén,
Set Height - zvyšovať úroveň terénu oproti celému terénu,
Smooth Height - vyhladzovať oblasti so zvyškom terénu a
- Raise or Lower Terrain - Môžeme buď znižovať alebo zvyšovať úroveň terénu,
- Paint Holes - vytvárať otvory v teréne,
- Paint Texture - nanášať textúry na terén,
- Set Height - zvyšovať úroveň terénu oproti celému terénu,
- Smooth Height - vyhladzovať oblasti so zvyškom terénu a
- Stamp Terrain - upraviť výšku terénu pomocou tvarov z pečiatok.
- Záložka s obrázkom stromu je k umiestňovanie stromov na terén. Je možné nastaviť hustotu stromov a tiež maximálnu výšku stromov alebo pomer výšky k šírke.
- Záložka s obrázkom kvetín slúži k umiestňovaní 3D trávy alebo kvetín na scénu a nie iba textúry. Tu môžete podobne ako u stromov nastavovať hustotu porastu a tvar, v ktorom chcete kvety nanášať.
- Posledný záložka so symbolom ozubeného kolieska je nastavenie. V nastavení môžeme upresniť najrôznejšie detaily od východiskového materiálu nášho teréne až po rýchlosť vetra pôsobiaca na porast nanesený na terén.
Nanášanie textúr
Zvolíme objekt Terrain
v záložke Hierarchy a
klikneme na záložku s obrázkom štetce v záložke
Inspector. Potom klikneme na Výjazdný zoznam pod záložkami
sa symbolmi v komponente Terrain
. Zvolíme možnosť Paint
Texture, čím budeme schopní na terén nanášať textúru
(obaľovať ho na určitých miestach fotoobrázkem).
Textúra trávy
Ďalej klikneme na možnosť Edit Terrain Layers ... s obrázkom ozubeného kolieska, ktoré sa nachádza v komponente. Zobrazia sa dve možnosti:
- Create Layer a
- Add Layer.
My zvolíme Create Layer, pretože nemáme vytvorenú
žiadnu vrstvu, ktorú by sme mohli pridať. Následne sa nám otvorí ponuka 2D
textúr, ktoré budú tvoriť náš layer (vrstvu). Tu sa volí
textúra, ktorú budeme nanášať na náš terén. My zvolíme textúru s
názvom GrassHillAl..
:
Táto textúra a všetky ostatné textúry, ktoré budeme dnes používať, sú
z balíčka, ktorý sme si stiahli na začiatku tejto lekcie. Po zvolení sa
nám textúra okamžite naniesla na celý náš terén. Ako to? Náš terén
doteraz nemal predvolené textúru. Do doby, než sme ju naniesli, mal terén
textúru stanovenú automaticky Unity Editorom. Preto akonáhle
vytvoríme prvú layer, nanesie sa na celý povrch terénu. Z
tohto dôvodu sme tiež ako prvý layer vytvorili trávu,
ktorá bude v našom prostredí na väčšine miest.
Textúra kamenisté cesty
Keďže náš terén má už nanesenú textúru trávy, môžeme vytvoriť
nový layer s kamenistou cestou. Klikneme zas na tlačidlo s
ozubeným kolieskom a nápisom Edit Terrain Layers .. a
zvolíme možnosť Create Layer. Vyberieme textúru s názvom
GrassRock..
. Môžeme krásne vidieť, že náš terén má stále
nanesenú textúru trávy, pretože už nepridávame prvý
layer.
Klikneme na náš novo vytvorený layer kamenisté cesty. Týmto sme ho zvolili ako vrstvu, ktorú chceme nanášať:
V časti s názvom Brushes môžeme vyberať "štetca", ktorými chceme vrstvu nanášať. Pod výberom tvaru si môžeme tiež navoliť veľkosť štetca a transparentnosť (viditeľnosť) nanesenej vrstvy.
Akonáhle máme zvolenej všetky vlastnosti štetce a vrstvu, ktorú chceme nanášať, môžeme začať. Nanášanie vrstvy je jednoduché. Stačí len zájsť myšou do oblasti našej scény na náš terén a zobrazí sa modrá oblasť terénu (má tvar podľa tvaru štetca). Táto oblasť značí dosah účinkov nanášania vrstvy. Potom stačí kliknúť. Tlačidlo môžeme držať a posúvať myš, čím budeme neustále nanášať vrstvu na terén. Alebo môžeme len klikať.
Vyvyšovanie terénu
Terén je však len málokedy perfektne rovný. Preto teraz zvolíme možnosť Raise or Lower Terrain. Zvyšovanie teréne funguje na podobnom princípe ako nanášania vrstiev. Rozdiel je len v tom, že pre vyvýšenie používame ľavé tlačidlo myši a pre zníženie alebo prehĺbenie používame Ľavý Shift a ľavé tlačidlo myši.
Tu odporúčame meniť tvary štetce pre lepší vzhľad kopcov či hôr a dávať si pozor na hodnotu Opacity. Tá razantne mení o koľko sa zväčší či zmenší dané miesto. Preto je lepšie len klikať a nedržať myš.
Tvorba 3D trávy
Trávu, ktorá sa bude napríklad pohybovať podľa vetra alebo sa bude
rôzne ohýbať, vie tiež vytvoriť naše komponenta. Stačí kliknúť na
symbol kvetov. Tu klikneme na tlačidlo s obrázkom ozubeného kolieska a
nápisom Edit Details ... a zvolíme možnosť Add
Grass Texture. Následne si v okienku s názvom Add Grass
Texture vyberieme kolónku Detail Texture a klikneme
na symbol kruhu s bodkou uprostred, v riadku s kolónkou. Vyberieme textúru s
názvom GrassFond…
. Potom klikneme na tlačidlo
Add. Celý proces zopakujeme a pridáme druhú textúru trávy
s rovnakým názvom:
Teraz si zvolíme kliknutím jednu z dvoch tráv v záložke Details a následne nanesieme trávu rovnako ako v prípade vrstiev textúr. Pomocou hodnoty Opacity volíme "hustotu" porastu.
Pridanie stromov
Posledným krokom je pridanie stromov. Klikneme na ikonu stromov a potom na
tlačidlo s ozubeným kolieskom a nápisom Edit Trees ....
Zvolíme možnosť Add Tree. Následne v okienku Add
Tree zvolíme ako Tree Prefab strom s názvom
Broadleaf_Desktop
. Potom pridáme rovnakým spôsobom ďalší
strom s názvom Conifer_Desktop
. Nanášanie stromov je totožné s
nanášaním trávy. Zvolíme strom v záložke Trees a potom
klikáme na náš terén v záložke Scene na miesta, kam
chceme naniesť stromy. Namiesto Opacity sa tu využíva
hodnota Tree Density k nastavenie množstva pridaných
stromov.
Zmenšenie tieňov
Jediné, čo ešte urobíme, je zmenšenie tieňov. V záložke
Hierarchy klikneme na objekt Directional Light
a v
komponente Light
zmeníme pod kolónkou Realtime
Shadows hodnotu Strength na 0.128
alebo
inú, ktorá lahodí vášmu oku.
Výsledný terén môže vyzerať nasledovne:
V budúcej lekcii, 3D strieľačka v Unity - Príprava animácií prebíjanie zbrane , si vytvoríme prechody a parametre k jednotlivým animáciám pre prebíjanie.
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkamiStiahnuté 600x (79.74 MB)