Co je normálové mapování?
Díky normálovému mapování není v 3D počítačové grafice nutné modelovat nebo tvarovat každý detail modelu přímo v geometrii objektu. Tato technika se používá k vytvoření iluzorních detailů povrchů, které zvyšují realističnost digitálních objektů bez zvýšení geometrické složitosti.

Principy normálového mapování
Ve 3D modelování jsou povrchy reprezentovány mnohoúhelníky. Výpočet osvětlení se provádí na základě geometrie těchto mnohoúhelníků stejným způsobem, jakým umělec používá techniky stínování k napodobení trojrozměrného prostoru. Tento přístup funguje velmi dobře, může však být výpočetně náročný, a omezovat tak celkovou možnou úroveň detailů. Normálové mapování poskytuje skvělé a nenáročné řešení tím, že upravuje způsob interakce světla s povrchem, aniž by docházelo ke změně podkladové geometrie.
Normálové mapy uchovávají informace o povrchu ve formě textury. Díky zakódování normál povrchu do textury můžou normálové mapy simulovat vzhled detailů povrchu, jako jsou hrboly, škrábance, vrásky a další, bez zvýšení složitosti podkladové geometrie.
Normálové mapy se při vykreslování počítají pomocí upravené normály povrchu z normálové mapy. Protože jsou tyto výpočty méně náročné na výpočetní výkon, lze dosáhnout vysoké úrovně detailů, a to i v reálném čase. Díky tomu jsou normálové mapy oblíbenou technikou herních vývojářů.
Oblasti využití normálového mapování
Normálové mapování je univerzální technika, kterou by měl používat každý 3D tvůrce, protože umožňuje urychlit a zlepšit pracovní postup.
Normálové mapování se používá nejen v případech, kdy jsou hardwarová omezení velmi důležitá, jako jsou hry vyžadující vykreslování scén v reálném čase, ale také v počítačově animovaných filmech, architektonických vizualizacích a produktovém designu.
Normálové mapování neovlivňuje zbarvení objektu, takže se nejčastěji používá v případech, kdy povrch objektu není dokonale rovný nebo hladký. V podstatě to znamená, že téměř každý 3D model může využít normálovou mapu ke zvýšení realističnosti – od odřené kůže přes pokroucená dřevěná vlákna po lidskou pokožku, látky a mnoho dalších prvků.
K normálovému mapování se používá několik základních nástrojů a aplikací. Zde je několik z nich:
1. Software pro 3D modelování: K vytvoření modelů, které budou použity pro normálové mapování, můžete použít nástroje jako Blender, Maya, ZBrush a {{substance-3d-modeler}}. K dispozici je mnoho výborných softwarových řešení, která nabízejí vlastní přístupy k modelování a tvarování.
2. Software pro malování textur: K tvorbě a úpravám map textur včetně normálových map můžete použít {{substance-3d-painter}} nebo třeba Adobe Photoshop.
3. Generátory normálových map: Software pro generování normálových map umožňuje vytvářet normálové mapy jak z dat o geometrii s vysokým rozlišením, tak z údajů o textuře. Nástroje jako xNormal, CrazyBump nebo Substance 3D Designer dokáží generovat normálové mapy na základě různých vstupů.
4. Herní moduly: Herní moduly jako Unreal Engine a Unity mají integrovanou podporu normálového mapování. Tyto moduly obsahují nástroje a možnosti vykreslování potřebné k využívání normálových map. Zvládnou vykreslit skvělé modely stejně dobře jako zprostředkovat špičkové herní zážitky.
5. Programovací jazyky pro tvorbu shaderů: Znalost programovacích jazyků pro tvorbu shaderů, jako jsou HLSL (High-Level Shading Language) nebo GLSL (OpenGL Shading Language), může být velmi přínosná při tvorbě vlastních shaderů, které využívají normálové mapování. Tyto jazyky umožňují vývojářům definovat interakci osvětlení s normálovými a dalšími mapami textur a vytvářet tak dechberoucí vizuální efekty.
Tento seznam sice není úplný, ale můžete jej využít jako výchozí bod při osvojování základních znalostí o normálovém mapování a jeho implementaci v prostředích, v nichž je vyžadováno vykreslování v reálném čase.

Autor: studio Playground Games

V čem se normálové mapy liší od bump map
Normálové mapy ukládají explicitní informace o normálách povrchu pomocí obrázků RGB, kde každý barevný kanál představuje složky X, Y a Z normálového vektoru povrchu v jednotlivých texelech. Normálové mapy obsahují mnohem více informací o orientaci povrchu. Normálové mapy neovlivňují geometrii samotného modelu, ale přesto upravují interakci světla kolem něj.
V porovnání s bump mapami poskytují normálové mapy přesnější výsledky a zachycují detaily povrchu nejen s využitím informací o výšce.
Výhody a nevýhody normálového mapování
1. Realistické detaily povrchu: Normálové mapování umožňuje přidávat složité detaily povrchu bez zvýšení geometrické složitosti.
2. Efektivita: Normálové mapování je výpočetně efektivní technika, zejména ve srovnání s dosažením stejné úrovně detailů povrchu za použití vyššího počtu mnohoúhelníků.
3. Nižší nároky na paměť: Normálové mapy uchovávají informace ve formátu textury, který obvykle využívá méně paměti ve srovnání s ukládáním informací o geometrii.
4. Opakovaná použitelnost: Normálové mapy lze snadno aplikovat na různé modely, díky čemuž je tvůrci můžou opakovaně používat pro různé účely. To šetří čas i úsilí a omezuje konečnou velikost produktu.
5. Interaktivní světelné efekty: Normálové mapování rozšiřuje možnosti interakce světla s modelem a umožňuje používat dynamické 3D světelné efekty, jako jsou odlesky, změny stínování a přesnější odrazy.
1. Omezené úpravy geometrie: Normálové mapy ovlivňují pouze vzhled detailů povrchu a nemůžou měnit geometrii. Iluze, kterou vytvářejí, může být často užitečná, avšak někdy může být nutné použít jiné techniky, pokud je vyžadována skutečná úprava geometrie.
2. Vytváření a úpravy map: Tvorba vysoce kvalitních normálových map může být obtížná a vyžaduje odborné znalosti a specializovaný software. I úprava normálových map může být kvůli složité povaze dat náročná.
3. Omezení místa pro textury: Normálové mapy vyžadují více místa pro textury, protože jsou obvykle uloženy jako obrázky RGB. To může mít vliv na celkové využití paměti a v některých případech může vyžadovat pečlivou optimalizaci.
4. Omezení tečného prostoru: Normálové mapy jsou obvykle definovány v tečném prostoru, což znamená, že závisí na orientaci modelu a UV souřadnicích. Při použití stejné normálové mapy na modely s různým rozvržením nebo orientací UV tak někdy může docházet k vizuálním artefaktům.
Navzdory některým omezením jsou normálové mapy nejúčinnější technikou používanou ke zvýšení vizuální kvality a realističnosti 3D modelů vykreslovaných v reálném čase. Normálové mapování nabízí rovnováhu mezi efektivitou a vizuální věrností, což z něj činí neocenitelný nástroj pro 3D texturování a vykreslování.
Kdy používat normálové mapování
Vyzkoušejte si techniku normálového mapování
Časté otázky
K ČEMU SE POUŽÍVÁ NORMÁLOVÁ MAPA PŘI VÝVOJI HER?
KOLIK KANÁLŮ JE NA NORMÁLOVÉ MAPĚ?
Normály se vytvářejí pomocí obrázku RGB (červená, zelená a modrá), kde každý barevný kanál v obrázku představuje složku X, Y a Z normály povrchu v jednotlivých texelech mapy. To znamená, že normálová mapa má tři kanály, přičemž každý z nich obsahuje kladné nebo záporné hodnoty.
- Červený kanál (R) představuje složku X normálového vektoru povrchu.
- Zelený kanál (G) představuje složku Y normálového vektoru povrchu.
- Modrý kanál (B) představuje složku Z normálového vektoru povrchu.
Všechny tři kanály se používají společně k přesné orientaci jednotlivých texelů, které se následně používají při vykreslování k vylepšení efektů osvětlení a stínování 3D modelu.
PROČ SE TÉTO TECHNICE ŘÍKÁ NORMÁLOVÉ MAPOVÁNÍ?
V počítačové grafice označuje pojem normála vektor, který je kolmý (neboli „normálový“) k povrchu v určitém bodě. Normálové mapy tedy označujeme jako „normálové“, protože uchovávají informace o normálách povrchu 3D modelu.
Při použití normálové mapy během vykreslování se normály povrchu 3D modelu upraví na základě informací uložených v mapě. Výsledkem jsou efekty osvětlení a stínování, které vytvářejí iluzi složitých detailů povrchu.