Texture maps assets e Mesh assets

Documenti analoghi
Normal maps: come si ottengono (2/4)

Texture maps come assets

Video Game Dev - Uni Insubria 29/10/ = Bump-map (here: a tangent space normal map) Bump-map

Texture mapping. Marco Tarini. Video Game Dev - Uni Insubria 24/10/2015. Marco Tarini / Video Game Dev 2015/2016 Univ Insubria Textures

Computer Graphics. Digital representation of 3D objects. 3D Rendering. Scena 3D rendering image. Marco Tarini - univ insubria AA 2016/2017

Corso di Tecniche Avanzate per la Grafica Texturing

Mesh triangolari i Modelli 3D universali dei games

Game Dev - Tools Programming 13/02/2014. Game Dev - GAME TOOLS Modelli 3D nei games. Modello 3D = Mesh poligonale

I Modelli 3D più comuni: Mesh poligonali

Computer Graphics. Memoria RAM nelle schede grafiche. Texture Mapping: paradigma di memoria. Concetto. Tessiture: Caso più comune.

Texture Mapping Realtà Virtuale: il presente, il pass T a e t x o u, r i e l f M u a t p u pi ro ng

Corso di Grafica Computazionale

Computer Graphics. 3D Rendering. Digital representation of 3D objects. Scena 3D rendering image. Geometry of a 3D object. 3D Model

Grafica Computazionale. Texturing. Fabio Ganovelli a.a

Computer Graphics. Mesh triangolare (o mesh simpliciale) Un insieme di triangoli adiacenti. Caratteristiche topologiche di una mesh.

Texture mapping. Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica a.a. 2014/2015

Computer Graphics. Superfici di suddivisione. Modo molto diffuso per costruire mesh. modelling: superfici di suddivisione

Grafica al calcolatore - Computer Graphics

Modello 3D = Mesh poligonale. Di triangoli, o mista (quadrilateri + triangoli) Struttura dati per modellare oggetti 3D

Modelli per i materiali

GAME DEV: tools programming. Parte 1: tri-meshes

Il texture fetch (o: texture lookup) Operazione molto semplice in GLSL, es: e si memorizza le coord texture (s,t) per ogni vertice

Marco Tarini 10/22/2015

Game Engine Programming -- Piccola Verifica Istruzioni:

Computer Graphics. Alcuni meccanismi propri del rasterization based rendering che non abbiamo visto Nuovi stage nel pipeline HW:

Livello di approfondimento della lezione. Texture mapping di solito spiegato in corsi di CG di base

Tipi di animazioni scripted

Computer Graphics. Semitrasparenze: come? Un vecchio trucco di imaging 2D: Quando scrivo un colore nello screen buffer, invece di: eseguo:

Computer Graphics. Mesh triangolare (o mesh simpliciale) Un insieme di triangoli adiacenti. meshes e modelling. Mesh superficiali.

Rendering 13/01/2014. Marco Tarini - Video Game Dev - Univ Insubria (recall?) Game Engine

Corso Autodesk Maya. consulteklab.com CELL. 349/8/ web: (Effetti speciali 3d per film e animazioni)

Grafica al Calcolatore Tecniche di mappatura - 1. Introduzione

Modellazione poligonale in Maya

LA STRUTTURA NARRATIVA. Prof. M.A. Alberti, A. Berolo, P. Pasteris

Tecniche di semplificazione

Polygonal meshes or triangle meshes? Quad meshes or Trinagle meshes? Level of Detail (LoD) Pyramid. 3D Meshes: resolution. (n-2) triangoli!

Non solo mesh. Height Map. Or: Height Field Or: 2.5 Dataset. Non di sole mesh vive la CG. Curisosità: physical height maps.

Game Dev Insubria 2014/ /10/2015. Funzione matematica prende punti 3D / vettori 3D restituisce punti 3D / vettori 3D

Capitolo 6 Interazione luce-materia

Effetti avanzati con le texture

Modelli 3D: come ottenerli

Modelli 3D: come ottenerli

Grafica al calcolatore Computer Graphics

Grafica computazionale

Prefazione...IX Capitolo 1 Introduzione a Blender Capitolo 2 Setup e installazione Capitolo 3 L interfaccia di Blender...

Contents. Texturing 1

CORSO CGI E COMPOSITING

Grafica computazionale Lezione 2

Le texture. Le texture. Informatica Grafica ][ Le texture. Le texture. Le texture. Le texture

Tipi di animazione nei games

Videogame e rendering 3D. Enrico Colombini (Erix) µhackademy 1 Marzo 2019

Grafica al calcolatore Computer Graphics

Texture e coordinate di mappatura

Programma del Master di Produzione digitale 3d

Animations in games (of 3D Solid Objects)

Realtà Virtuale: il presente, il passato, il Shading futuro

Grafica Real-Time, Hardware Grafico e Linguaggi di Shading. Alessandro Martinelli

Fondamenti di Grafica Tridimensionale

Tipi di animazioni scripted

Programma del Master Game Design

Modellazione poligonale

Texturing. Modello digitale texturizzato di di un soffitto ligneo. Schema di proiezione delle texture

Grafica 3D per i beni culturali: 3D and rendering. Lezione 2: 20 Febbraio 2014

Lighting. Realtà Virtuale: il presente, il passato, Lighting e il Shading futuro

Novità di 3ds max 5. 3ds max 5.0 MIGLIORAMENTI IN ANIMAZIONE 3ds max 5

Grafica 3D per i beni culturali: 3D e rendering. Lezione 2: 25 Febbraio 2016

Grafica 3D per i beni culturali: 3D and rendering

INFORMATICA GRAFICA SSD ING-INF/05 Sistemi di elaborazione delle informazioni a.a. 2007/2008. CAP 6. Rendering grafico

Corso di Grafica Computazionale

Grafica Computazionale

Strumenti per la modellazione poligonale

Modellazione Poligonale Avanzata

Introduzione alla Computer Graphics

Fondamenti di Grafica Tridimensionale

Animazioni nei games. Animazioni nei games. Tipi di animazioni scripted. Uni Verona - Master Game Dev Game Engines - Marco Tarini

Grafica al Calcolatore Rendering volumetrico - 1. Introduzione

Grafica e Geometria Computazionale

Introduzione alla modellazione 3d

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D)

ma... Computer Graphics Rasterization-based HW-supported rendering Lezione 3: modellare con triangoli Tutto sia composto da triangoli (3D)

Geometric Mesh Processing

PHOTOSHOP - base PHOTOSHOP- avanzato ILLUSTRATOR - base ILLUSTRATOR - avanzato INDESIGN - base INDESIGN - avanzato...

Master in Character Animation per Film / TV e videogames. A chi è rivolto

Corso di Grafica Computazionale

Computer Graphics. Visione di insieme: Visione di insieme: Hardware specializzato per il rendering. Lezione 2: hardware ergo triangoli

Animations Animazioni nei games Un assets! Physic engine

Superfici Parametriche

Rappresentazione di oggetti 3D

Corso di Tecniche Avanzate per la Grafica

Modellazione poligonale

Studio e comparazione di algoritmi per l'illuminazione Globale in Tempo Reale

RUOLO DELLA MODELLAZIONE GEOMETRICA PARTE IN QUESTA LEZIONE E LIVELLI DI MODELLAZIONE. Prof. Daniele Regazzoni

Transcript:

Texture maps assets e Mesh assets Non necessariamente 1:1 1:N -- vari texture «sheets» associati ad una mesh N:1 -- più meshes sullo stesso sheet (bene) esempio di struttura per : ogni mesh associata a un materiale ogni materiale: 1 sheet di diffuse-map 1 sheet bumpmap (se serve) 1 sheet di alphamap (se serve) 1 vertex + fragment shader vari parametri (es, shininess, ) se parti diverse di mesh associate a tessiture diverse: scomporre oggetto in sottomesh Notazione di spazio texture es: 512 texels t 1.0 Texture Space (o "spazio parametrico" o "spazio s-t" o "spazio u-v") Texture 2D 1.0 s es: 1024 texels texel Texture space = [0,1] x [0,1] Marco Tarini - 2014 1

Due notazioni più diffusa (in game industry) s-t (es OpenGL) u-v (es DirectX) t (0,0) 1.0 1.0 u (0,0) 1.0 s 1.0 v Task di modellazione: u-v mapping ( u-v == s-t ) Assegnare una coppia di coordinate texutres ad ogni vertice della mesh In preprocessing t t s s Marco Tarini - 2014 2

Task di modellazione: u-v mapping ( u-v == s-t ) fatto a mano, oppure automatizzato Texture atlas (composto di vari charts ) Task di modellazione: u-v mapping ( u-v == s-t ) strategie pratiche: 1. selezionare edge di taglio o 1. assegnare facce a charts decidere dove sono i texture seams 2. unfolding minimizzare distorsione 3. packing dei charts minimizzare spazi vuoti assegnare aree secondo necessita (es, parti importanti maggiore spazio tessitura) Marco Tarini - 2014 3

Tileable Textures B A A B Tileable textures Marco Tarini - 2014 4

Tileable textures Tipico utilizzo: Molto efficiente in spazio! RGB maps: come si ottengono Image first, then UV-mapping e.g. immagine da fotografie e.g. tileable images / 2D painter / UV-mapper 3D modeller Marco Tarini - 2014 5

Texture maps come assets Vari texture «sheets» associati ad una mesh o anche: più meshes sullo stesso sheet (bene) tipica struttura dati: mesh divisa in sottomesh ogni sottomesh associata a un materiale ogni materiale: 1 sheet di diffuse-map 1 sheet bumpmap (se serve) 1 sheet di alphamap (se serve) 1 vertex + fragment shader vari parametri (es, shininess, ) RGB maps: come si ottengono Image first, then UV-mapping e.g. immagine da fotografie e.g. tileable images UV-mapper UV-mapping first, then paint 2D paint with 2D app (e.g. photoshop) UV-mapping first, then paint 3D paint within 3D modelling software, or: 1. export 2D rendering, 2. paint over with e.g. photoshop, 3. reimport images 4. goto 1 UV-mapper UV-mapper 2D painter 3D painter Marco Tarini - 2014 6

RGB maps: come si ottengono or: first Paint 3D on hi-res model, paint on vertex attributes e.g. with Z bursh then coarsen build / autobuild final low-poly version then UV-map the low-poly model must be a 1:1 mapping! then auto-texture auto build texture more about this later Alpha mapping (texels = lvl trasparenza) Alpha map RGB map Marco Tarini - 2014 7

Alpha mapping (texels = lvl trasparenza) es: drappi, barba... tessitura by Micheal M a r c o T a r i n i C o m Filipowski p u t e r G r a p h i c s 2 2004 0 1 1 / 1 2 U n i v e r s i t à d e l l I n s u b r i a Texture mapping e Alpha Test es: alberi, foliage Marco Tarini - 2014 8

Texture mapping e Alpha Test Es: pelo, pellicce tessitura (ripetuta) M a r c o T a r i n i C o m p u t e r G r a p h i c s 2 0 1 1 / 1 2 U n i v e r s i t à d e l l I n s u b r i a Bump-Mapping (see demo) stessa geometria (una sfera) bumpmaps diverse Marco Tarini - 2014 9

Bump maps: Categorie Bump maps Normal maps Displacement maps Object Space Tangent Space Scalar Vector Bump maps: Categorie Bump map: qualunque tessitura che codifica dettagli hi-freq ( meso-struttura ) su una sup low-res Normal Map: Dettagli codificati memorizzando le normali della sup hi-freq Modificano il lighting In quale spazio (in che base vettoriale)? Tangent Space: (spazio TBN) Riutilizzabili su più superfici indipendentemente dall oreintamento Richiede direzioni Tangenti-Bitangenti (e normali) def su superifcie Object Space: Solo per UV-mapping 1:1 Displacement Map Dettagli codificati memorizzando le differenze fra low-res e hi-freq Come vettori, oppure come scalari (distanza lungo la normale) caso più comune, di bump map Usati per re-tasselation, o per effetto parallasse (parallax mapping) Marco Tarini - 2014 10

Normal maps Memorizzati come immagini RGB => XYZ (come?) caratteristico colore RGB (0.5,0.5,1) - (128,128,255) (Tangent Space) Normal maps Espressi in spazio tangente Memorizzare direzioni tangenti Tangente e Bi-tangente Nuovi attributi x vertice! Computati automaticamente a partire da UV mapping (come?) Marco Tarini - 2014 11

Normal maps Come si ottengono (1/3): 2D texture painter Filtro (e.g. photoshop) Displacement map come grayscale = estruso - in fuori Normal map = profondo - incassato Normal maps Come si ottengono (2/3): Photometric Stereo da: N immagini (N>=4) reali Stesso punto di vista Illuminazione diversa (e possibilmente controllata e nota) a Normal Map Marco Tarini - 2014 12

Normal maps Come si ottengono (3/3): Detail recovery da: a: 1) mesh Hi-Res 2) mesh Low-res + UV mapping (senza ripetizioni) Normal map per 2 (che mimica il dettaglio presente in 1) More about this later Normal maps Come si ottengono (bonus): Proceduralmente Marco Tarini - 2014 13

Semplificazione automatica aka. poly reduction Strategie completamente diverse Approcci iterativi repeat compi l'azione di semplificazione atomica meno costosa (in termini di errore aggiunto) aggiorna costi until (obiettivo raggiunto) es: numero faccie, errore remove vertex edge collapse remove face Semplificazione automatica Strategie completamente diverse Vertex clustering: dividi i vertici originali in una griglia regolare "collassa" in un solo vertice tutti quelli nella stessa casella togli i triangoli che hanno solo 1 o 2 vertici diversi Approssimazione dipende da dimensione griglia M a r c o T a r i n i [ G A M E - D E V ] V e r o n a 2 0 1 3 Marco Tarini - 2014 14

Semplificazione automatica Simplificazione ad edge collapse (adattva) 215k faces Semplificazione a clustering (non adattiva) 235k faces M a r c o T a r i n i [ G A M E - D E V ] V e r o n a 2 0 1 3 Semplificazione automatica Strategie completamente diverse Fitting di piani sostituire molte facce con poligoni planari quando i loro vertici sono quasi coplanari Cohen-Steiner, Alliez, Desbrun (SIGGR04) Marco Tarini - 2014 15

Detail preservation / recovery (o "texture for geometry") Idea: data una mesh A low res, uv-mapped una mesh B hir res sintetizzare una tessitura per A per ripristinare il dettaglio hi-freq presente in B es: A ottenuto da B tramite semplificazione automatica 500mila triangoli detail recover TESSITURA fatta apposta (es. BumpMap normali o RGB map x colori) semplificazione automatica 2mila triangoli rendering M a r c o T a r i n i [ G A M E - D E V ] V e r o n a 2 0 1 3 sempre duemila triangoli, ma con texture mapping Marco Tarini - 2014 16

originale M a r c o T a r i n i [ G A M E - D E V ] V e r o n a 2 0 1 3 500K triangles semplificato simplificato ma con tessitura 2K triangles Detail Recovery: how to Low-res model Hi-res model v Texture map find a suitable spot u e.g.: color, precomputed shading, normal... Some attribute Code & Store Marco Tarini - 2014 17

Esempio Esempio Marco Tarini - 2014 18

esempi da cg-talks CG society esempi da cg-talks CG society Marco Tarini - 2014 19

esempi da cg-talks CG society Mesh: task tipici nella game industry Poly reduction / Retopology e.g. LOD construction Light baking Precomputazione Luce e.g.: Ambient Occlusion U-V mapping parametrizzazione Texturing creazione tessiture di vario tipo Rigging / Skinning / Animation more about this next time Marco Tarini - 2014 20

Una classe di tool utili: attribute transfer Attribute transfer Da mesh A a mesh B Retargeting di: Animazioni, UV-mapping, tessiture, Solid textures Marco Tarini - 2014 21

Solid Textures Tessitura volumetrica voxelizzata 1 texel == 1 voxel E.g. ogni voxel un colore RGB solid RGB textures Come tutte le tessiture: In video RAM Accesso veloce durante rendering MIP mapping, filtering in accesso Modellano colore di tutto il volume superficie + interno utile, per es, per fratture Nota: nessun bisogno di UV-mapping! tessitura indicizzata con geometria mesh Solito problema: spazio ram Cubico con risoluzione Soluz: tessiture procedurali? Marco Tarini - 2014 22