Modelování 3D postav

Editovat
Note

Avatar, postava, model. Modelování mnohoúhelníkových sítí (high-poly, low-poly), topologie a modifikace těchto sítí, tvorba textur (maps baking). Kostra modelu a potažení kostry (rigging, skinning).

VV035, VV036

Model

Model je komplikované slovo s mnoha významy:

model, noun

  1. a usually miniature representation of something
    also: a pattern of something to be made

  2. a: a type or design of product (such as a car)
    b: a type or design of clothing

  3. a system of postulates, data, and inferences presented as a mathematical description of an entity or state of affairs
    also: a computer simulation based on such a system

  4. archetype

  5. an example for imitation or emulation

  6. one who is employed to display clothes or other merchandise

  7. a person or thing that serves as a pattern for an artist
    especially: one who poses for an artist

  8. version

  9. a description or analogy used to help visualize something (such as an atom) that cannot be directly observed

  10. structural design

  11. an organism whose appearance a mimic imitates

  12. animal model

  13. (dialectal british): copy, image

  14. (obsolete): a set of plans for a building

— Mirriam-Webster

Nicméně v kontextu modelování 3D postav je model soubor (např. ve formátu .fbx, .obj či .blend) obsahující mesh. Nejblíže má tím pádem významu č. 1.

Character / postava

Fiktivní osoba či jiná bytost. Typicky má nějaký background — příběh, rysy osobnosti, vzhled, dovednosti, apod. V herních kontextech rozlišuje player character (PC) a non-player character (NPC).

Vývojáři často zaměňují "postava" a "model".

Avatar

Grafická reprezentace uživatele či uživatelovy postavy. [1] Ve hrách je typicky implementován skrze 3D mesh (obsažený v modelu) či 2D sprite obohacený o animace, collidery, apod.

Mnohoúhelníkové sítě

Polygon

Mnohoúhelník.

(Polygon) mesh

Mnohoúhelníková síť.

High-poly mesh

Model s velkým množstvím polygonů. Typicky se jedná o model, který je určen např. pro pre-renderované cutscény a nikoliv pro hraní.

Bývájí výsledkem sculptingu v programech jako je ZBrush či Mudbox.

vph08 high poly mesh
Obrázek 1. Arachnid humanoid bust by Alexander Tobler
Low-poly mesh

Model s malým množstvím polygonů. Typicky se jedná o model, který je vložen do hry a je tedy výhodné, aby bylo co možná nejjednodušší jen vykreslit.

vph08 low poly mesh
Obrázek 2. Triceratops by Base Mesh Store
Low-poly stylizace

Stylizace, kdy je model záměrně vytvořen s nízkým množstvím polygonů, protože to vypadá cool. Je to taková skoro 3D analogie pixelartu.

vph08 low poly
Obrázek 3. Low Poly Worlds by Pavel Novák

Topologie a modifikace

Tip
Pro základní topologické pojmy viz 3D modelování a datové struktury.
Meshflow

Logické uspořádání hran a polygonů v mnohoúhelníkové síti.

Note
Nepovedlo se mi tenhle termín najít jinde než ve slidech pro VV035/VV036. Zdá se mi, že je to v zásadě synononymum pro topologii.
Quad topologie

Při modelování (nejen postav) se snažíme, aby všechny polygony byly quady (čtyřúhelníky). Je to zejména proto, že subdivision na nich funguje lépe, a 3D artisti dokáží lépe odhadnout, co se s nimi při takových operacích stane.

Organic modeling

Při modelování postav většinou vycházíme z nějaké anatomie z reálného světa. Snažíme se vyjít z toho, jak jsou v reálném světě kosti, svaly, apod. umístěny. V důsledku toho je například důležité mít edge loops okolo ramen, úst, a boků. [2]

Nejde jen o to vyrobit anatomicky věrný model, ale i o to, aby se model dobře rigoval a animoval. Správná topologie přispívá k tomu, aby se model plynule deformoval při animaci, aniž by se některé části modelu pohybovaly nerealisticky a rozbily imerzi.

vph08 organic modeling
Obrázek 4. Flowing edge loops and good topology are crucial for rigging and animation [4]
Retopologie

Postup, kdy začneme s high-poly modelem, který jsme nejspíš vysculptovali bez ohledu na topologii, a ručně / automaticky na něm postavíme nový low-poly model se správnou topologií. Tohle nám umožňuje se nejprve soustředit na to, co za model chceme, a pak teprve na jeho technické provedení. [2]

Box modeling

Proces, kdy začneme od default cube, subdividneme ji a pokračujeme odtamtaď. [2]

Point to point modeling

Začneme od jediného bodu / polygonu. Tahle metoda je užitečná, když očekáváme, že retopologie modelu bude náročná, jelikož nám dává větší kontrolu nad meshflow. [2]

Textury

Typický 3D model se skládá nejen z meshe, ale i z materiálů, které jsou v herních enginech typicky reprezentovány texturami (mapami).

Note
Typy map souvisí s physically based rendering (PBR), kterému se částečně věnuje otázka Pokročilá počítačová grafika.
UV unwrapping

Tvorba 2D reprezentace 3D modelu — projekce jeho polygonů na 2D plochu. Toto mapování se posléze využívá při texturování. Proces zahrnuje označování seams — hran, podél kterých se bude model "rozřezávat". Nevhodná volba seams vede k deformaci textur.

vph08 uv unwrapping
Obrázek 5. Result of unwrapping Suzanne [8]
Diffuse / albedo map

Základní barva modelu.

Detail map

Detaily, které mají být na modelu vidět zblízka.

Emissive / glow / incandescence / self-illumination map

Jak moc model "svítí" ve tmě. Používané pro modely, na které není aplikováno osvětlení scény.

Bump / displacement / height map

Detaily na povrchu. Typicky se používá dohromady s teselací.

Normal map

Normála na povrchu každého pixelu. Má podobný efekt jako displacement mapa, ale není aplikovaná na vertexy.

vph08 normal map
Obrázek 6. A normal mapped model, the mesh without the map, and the normal map alone (by Eric Chadwick)
Metallic / roughness map

"Kovové" odlesky v daném místě modelu.

Light map

Zapečené statické osvětlení. Typicky se týká spíš celých scén než postav.

Texture baking

Proces přenosu detailů z (typicky high-poly) modelu na jiný (typicky low-poly) model. High-poly detaily jsou "zapečeny" do textur. Modelovací software typicky vrhá po modelu velké množství paprsků a výsledek ukládá do textur. [5]

Kostra modelu

Kostra / skeleton / rig

Hierarchická struktura kostí (bones), jenž popisují, kde je možné model ohnout a animovat.

vph08 rigging
Obrázek 7. Rig of Atlas from Portal 2 by Oliver Simmonet
(Skeletal) rigging

Proces tvorby kostry.

Rigging is making our characters able to move. The process of rigging is we take that digital sculpture, and we start building the skeleton, the muscles, and we attach the skin to the character, and we also create a set of animation controls, which our animators use to push and pull the body around.

— Josh Petty
Forward kinematics (FK)

Animace se řetězí od parent kosti k child kosti. Pohneme-li rodičovskou kostí, pohnou se i její děcka. Klouby se hýbou po křivkách. [6]

Inverse kinematics (IK)

Animujeme jen koncové kosti. Pohyb rodičovských kostí je dopočítán. Klouby se hýbou po přímkách. [6]

T-pose / reference pose

Defaultní póza pro charakter při riggování.

vph08 tpose
Obrázek 8. T-pose by vkstudio
Skinning

Úprava kostry tak, aby se povrch modelu správně deformoval při animaci. [2] Například v Blenderu se skinning dá provést automaticky nebo nastavením envelopes — objemů obsahujících ovlivněné vertexy — a jejich vah.