Tvorba 3D modelu: od polygonu po texturu – postup

Tvorba 3D modelu: Od polygonu po texturu – postup

Pipeline tvorby 3D modelu

Moderní tvorba 3D modelu je iterativní proces, který kombinuje geometrii (polygony, křivky, NURBS), topologii (uspořádání hran a vrcholů), rozbalení UV a texturování včetně map PBR (albedo, roughness, metallic, normal aj.). Typická pipeline: referenční podklady → blockout → high-poly sculpting/hard-surface model → retopologie (low-poly) → UV → bake map z high-poly na low-poly → materiály a textury → look-dev a validace v cílovém enginu (DCC/real-time).

Polygony, vrcholy a hrany: základní stavební prvky

Polygon je plocha definovaná vrcholy (vertices) a spojená hranami (edges). V praxi se používají hlavně trojúhelníky a čtyřúhelníky (quad), které se při renderování převádějí na trojúhelníky. N-gony (>4 vrcholů) mohou pomoci při sculptingu nebo tvorbě hard-surface modelů, ale u animačních low-poly modelů bývají zdrojem artefaktů.

Topologie: edge-flow, póly a podpůrné smyčky

  • Edge-flow: tok hran kopíruje základní objemy a budoucí deformace (obličej, klouby, ohyby).
  • Póly (vrchol s ≠4 hranami): jsou nevyhnutelné, ale umisťujte je mimo vizuálně dominantní místa a zóny ohybu.
  • Podpůrné smyčky (support loops) a bevely: definují ostrost hran před použitím modifikátoru Subdivision Surface nebo při použití weighted normals.
  • Čisté quady: usnadňují UV unwrapping, skinning i subdivizi.

Blockout: od objemů k proporcím

Cílem je rychle najít siluetu, proporce a funkční členění. Pracuje se s primitivy (box, cylinder), operacemi boolean a jednoduchými modifikátory. V této fázi se definují měřítko, orientace os a jednotky (cm/m) shodné s cílovým enginem.

High-poly: sculpting a hard-surface

  • Sculpting: detailní organické tvary, vrásky a mikrostruktury (alfa štětce, multires). Výsledkem je velmi hustá síť.
  • Hard-surface: čisté plochy, kontrola hran; booleany + bevel + weighted normals. High-poly model může mít složité rádiusy a šroubované detaily, které se později „upečou“ do normal mapy.

Retopologie: z high-poly na low-poly

Účelem je vytvořit efektivní síť s nízkým počtem polygonů a dobrým edge-flow pro animaci i nasvícení. Techniky: ruční kreslení polygonů po povrchu (snap), quad draw, automatická retopologie pro méně kritické části. Výsledek musí respektovat rozpočty (počet trojúhelníků) a oblasti s detaily.

Normals a shading: hladké vs. tvrdé hrany

Interpolace normál určuje, jak „zaobleně“ plocha působí. Tvrdé hrany (hard edges) lámou shading a často rozdělují také UV švy. Hladké hrany (smooth) spojují normály ploch. V real-time pipeline je vhodné sladit hard edge = UV split pro správný tangent space a normal mapy (MikkTSpace).

UV unwrapping: rozbalení povrchu do 2D

  • Seams: logicky umístěné řezy (spodní strany objektů, ostré hrany, symetrie) minimalizují viditelné přechody.
  • Packing: rozmístění UV islandů do texturového prostoru s mezerami (padding) pro mipmapping a dilataci.
  • Texel density: konzistentní hustota px/m; definujte cílovou hustotu (např. 512 px/m) a kontrolujte ji v DCC nástroji.
  • UDIM: více dlaždic pro film/VFX; ve hrách se kvůli výkonu používají spíše jednovrstvé sady.

Baking: přenos detailů z high-poly na low-poly

Bake generuje mapy z high-poly modelu na low-poly model v UV prostoru. Kritické kroky:

  • Cage: rozšířená kopie low-poly modelu, která řídí ray-casting; brání ray miss a skew.
  • Exploded bake: oddálení částí zabrání „propálení“ mezi sousedními díly.
  • Antialiasing & dilation: super-sampling a roztažení barev mimo ostrůvky minimalizují švy.
  • Tangent-space normal: pro real-time; respektujte konvenci OpenGL (Y+) vs. DirectX (Y-). Při exportu se ujistěte, zda je třeba invertovat zelený kanál podle enginu.

Jaké mapy péct a proč

  • Normal: simuluje jemné nerovnosti povrchu bez geometrie.
  • Ambient Occlusion (AO): měkké stíny v dutinách; v PBR se používá opatrně (v kombinaci s dynamickým nasvícením).
  • Curvature: křivost povrchu; skvěle se hodí k maskování opotřebení ve smart materials.
  • Position/World Space Normal: maskování a gradienty při texturování.
  • Thickness: tloušťka materiálu – pro efekty subsurface/translucency.
  • ID map: barevné oblasti materiálů (rychlý výběr při texturování).

PBR materiály: kanály a fyzikální konzistence

Standard metallic/roughness rozlišuje vodivý (kov) a nevodivý (dielektrický) materiál:

  • Base Color (Albedo): bez stínování a spekulárních příměsí; u kovů obsahuje barvu odrazu.
  • Roughness: mikroskopická drsnost od 0 (zrcadlový povrch) do 1 (matný povrch). Řídí rozptyl a intenzitu odlesků.
  • Metallic: 0 = dielektrikum, 1 = kov; mezilehlé hodnoty se používají jen u směsí/oxidace.
  • Normal (tangent/objekt/world): jemná geometrie.
  • Height/Parallax: makroreliéf pro offline/VFX nebo parallax occlusion mapping v real-time.
  • AO: použijte jako násobicí složku v albedu (uvážlivě) nebo jako samostatný kanál.
  • Emissive: vlastní „světlo“ povrchu (displeje, diody).

Workflow texturování: malba vs. procedurální tvorba

  • Texture painting: ruční malba detailů, projekční malování z fotografií (triplanar), clone/heal.
  • Procedurální materiály: uzlové grafy (noise, curvature, AO) a smart masks pro opotřebení, nečistoty a okraje.
  • Hybridní přístup: základ vytvořený procedurálně, specifické akcenty ručně; trim sheets a decals pro opakující se prvky.
  • Channel packing: ukládání více masek do RGBA pro úsporu paměti.

Barvové prostory a linearita

Dodržujte správný color space pro jednotlivé mapy: albedo/emissive v sRGB, normal/roughness/metallic/AO v linear. Při offline renderování zvažte ACEScg pro širší gamut; v real-time respektujte pipeline enginu (tonemapping, gamma 2.2).

Optimalizace: rozpočty, LOD a atlasy

  • Rozpočet trojúhelníků a draw calls: vyvažte míru detailu a počet materiálů. Texturové atlasy snižují počet přepnutí materiálů.
  • LOD: postupné zjednodušování s rostoucí vzdáleností (automatický decimate + ruční korekce).
  • Streaming textur: úrovně MIP, rozumné rozlišení (2k/4k) podle významu objektu; anisotropic filtering.

Specifika pro hry vs. film/VFX

  • Hry: přísné limity real-time renderování, tangent normal, atlasování, LODy, jeden skinned mesh na postavu.
  • VFX/Film: UDIM sady, displacement, rozsáhlý look-dev pro path tracer, vyšší přesnost (float textury).

Hard edges, UV a normal mapy: pravidla kompatibility

Každé rozlomení normál by mělo mít odpovídající UV split; invertujte G (Y) kanál normal mapy, pokud engine používá opačnou konvenci. Při bakingu i za běhu používejte jednotnou definici tangent space (např. MikkTSpace), jinak vzniknou „švy“ a gradient banding.

Detailní povrchy: vertex color, decals a tiling

  • Vertex color: masky pro prolínání shaderů (např. špína/rez) bez dodatečné textury.
  • Decals: lokální nálepky (nápisy, škrábance) bez úprav hlavního UV.
  • Tiled textury: pro velké plochy; opakování potlačte pomocí noise/rotation/uv offset.

Validace a look-dev

Kontrolní kroky: triangulace před exportem (stejný algoritmus jako při bakingu), kontrola normal map v neutrálním HDRI, UV checker pro kontrolu natažení a texel density, test specular response (white/black room) a unit scale v enginu. Vyhněte se double shading (AO × dynamické AO).

Exporty a formáty

  • Mesh: FBX, glTF/GLB (preferované pro real-time), USD pro ekosystém DCC/VFX.
  • Textury: PNG/TGA pro zdrojové soubory, komprese BCn (DXT) / ASTC/ETC2 pro runtime; normal mapy v BC5, albedo v sRGB kompresi.

Časté chyby a jak se jim vyhnout

  • Nesladěný tangent space mezi bakerem a enginem → použijte stejný algoritmus (MikkTSpace) a konvenci Y.
  • Příliš mnoho UV švů → zvyšují viditelnost přechodů; slučujte je, pokud to shading dovolí.
  • Nekonzistentní texel density → nevyrovnaná míra detailu; normalizujte ji a kontrolujte pomocí checkeru.
  • Příliš výrazný bevel v low-poly modelu bez podpory v normal mapě → „faceting“; slaďte hrany s bakingem a vyhlazováním.
  • Chyby v color space → rozmazané normaly (sRGB místo linear), nesprávná drsnost; nastavte správné profily.

Osvědčené postupy pro robustní model

  • Začněte blockoutem a schvalte proporce i měřítko.
  • High-poly řeší design a mikrogeometrii; retopo má být účelná a čistá.
  • UV s konzistentní hustotou, rozumně umístěnými švy a paddingem (≥4–16 px podle rozlišení).
  • Bake s cage, kontrola artefaktů, korekce skewu a dilatace.
  • PBR respektuje fyziku: nenarušujte zachování energie (nevykreslujte světla/stíny do albeda).
  • Validace v cílovém enginu při HDRI i reálném nasvícení; profilování výkonu.

Závěr

3D model vzniká kombinací promyšlené topologie, pečlivého rozbalení UV a fyzikálně konzistentních PBR textur. Kontrola měřítka, shoda tangent space, kvalitní bake a disciplinovaná správa barev jsou klíčem k výsledku, který je vizuálně přesvědčivý, výkonově efektivní a snadno udržovatelný v jakémkoli produkčním prostředí – od real-time enginů až po filmové renderery.