Lapped Textures. Princeton University Princeton University Microsoft Research. Emil Praun Adam Finkelstein Hugues Hoppe. Goal. mesh geometry. ?. textured surface. “ example ” image. Goal. Little user effort No apparent seams No obvious periodicity Low distortion
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
F I N
Plus de contenu associé
Transcription de la présentation
Lapped Textures Princeton University Princeton University Microsoft Research Emil Praun Adam Finkelstein Hugues Hoppe
Algorithm • Cut texture patches from input texture • [Specify texture direction & scale on mesh] • REPEAT • Pick texture patch T, mesh point P • Grow surface patch S around P to size(T) • Flatten S over T; paste T on mesh • Update mesh coverage info • UNTIL mesh is covered
Direction Field: User-specified • Angle - Only for anisotropic patches. • Can be set for only small number of faces – Gaussian radial basis function is used for interpolation. • Since the normal lies within the plane of the face we get an orthogonal basis : • S = T x N. (N – normal to the plane).
Issues • Texture patch creation • Specifying direction field • Surface patch growth • Patch parametrization • Face coverage estimation • Texture storage and rendering
Patch Growth • 1. Choose a random point on a non fully covered triangle. • 2. Add triangles in a BFS order to cover the texture patch. • 3. Stop when the patch is fully coverd. • Condintions: • The surface patch homeomorphic to a disk. • The distortion should not exceed a given limit. • We add edge only if it is within the texture patch.
Optimizing the Parametrization Least squares best match to unit axes Sparse linear system. No explicit fairness functional
^ (T) t ^ s (S) Optimizing the Parametrization (A) A (B) T S B C (C) face in 3D 2D texture space
Optimizing the Parametrization • For each mesh face f ={A,B,C} the vector T lies within the face plain. • Barycentric coordinates: • T = A + B + C and + + = 0.
^ (T) t ^ s (S) Optimizing the Parametrization (A) A (B) T S B C (C) face in 3D 2D texture space ^ dT = (A) + (B) + (C) - t We wish to minimize :
Issues • Texture patch creation • Specifying direction field • Surface patch growth • Patch parametrization • Face coverage estimation • Texture storage and rendering
Coverage estimation Render patch triangles Flag covered triangles Remember 1 pixel per uncovered triangle • off-screen buffer
Coverage estimation Render patch triangles Flag covered triangles Remember 1 pixel per uncovered triangle • off-screen buffer
Coverage estimation Render patch triangles Flag covered triangles Remember 1 pixel per uncovered triangle • off-screen buffer
Issues • Texture patch creation • Specifying direction field • Surface patch growth • Patch parametrization • Face coverage estimation • Texture storage and rendering
Texture Storage and Rendering • Method 1: Texture Atlas • Pre-composite into a global texture map. • -- OR -- • Method 2: Runtime pasting • Composite at run-time using hardware
Texture Atlas • Texture Atlas is a set of charts {1,…, k}. • Each chart j is a mapping from a subset U j of the mesh to the Euclidean plane (the texture plane). • {U1,…, Uk} is a cover of the surface. • If i j then j and i don’t overlap except on the edges.
Texture Atlas • Patches of triangles with similar normals • 2D packing problem for arbitrary polygons
Connexion au compte
Connectez-vous pour publier votre contenu sur SlideServe.