Siggraph 2004

50 %
50 %
Information about Siggraph 2004
Education

Published on January 8, 2008

Author: Manfred

Source: authorstream.com

Slide1:  Marco Tarini · Kai Hormann · Paolo Cignoni · Claudio Montani PolyCube-Maps seamless texture mapping Visual Computing Lab · ISTI · CNR · Pisa, Italy Our Goal:  Our Goal Texture mapping seamless hardware supported low distortion general object Texture Atlas (multi-chart approach to parameterization):  Texture Atlas (multi-chart approach to parameterization) + = 2D texture image textured bunny 3D mesh images courtesy of Lévy, Sylvain, Ray and Maillot , SIGGRAPH 02 disk-like patches texture charts u v Cube-Maps:  Cube-Maps Typically used for environment mapping images from Bubble demonstration program, nVidia environment texture mesh Abusing Cube-Maps:  Abusing Cube-Maps What if we store surface color in a cube-map? + = mesh with per-vertex 3D texture coord. (u,v,w) cube-map textured apple object space texture space object space Slide6:  texture from chart A cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels Slide7:  cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels texture from chart A texture from chart B Slide8:  cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels Slide9:  cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels Slide10:  cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels Slide11:  cube-map seamless a triangle can span multiple faces mesh independent mipmapping ok no packing: no wasted texels no boundaries, no artifacts texel neighbors always defined does not (~spheres only!) texture atlas seams a triangle cannot span multiple charts mesh dependency mipmapping difficult chart packing: wasted texels artifacts at boundaries no defined neighbors for boundary texels works (is general) What we Keep from CubeMaps:  interpolated coordinates in 3D texture space … from rasterizer What we Keep from CubeMaps FRAGMENT SHADER coordinates in 3D texture domain (a 2-manifold similar to the mesh) coordinates in 2D texture domain projection 2D texture fetch… mapping Per-fragment Hardware implemented Texture defined in 3D BUT stored in 2D Going Beyond Apples:  Going Beyond Apples Cube-Maps work well only for sphere-like objects  sphere-like mesh cubic texture domain texture space world space Going Beyond Apples:  ? Going Beyond Apples  But for more general objects? texture space world space arbitrary meshes cubic texture domain Going Beyond Apples:  ? Going Beyond Apples  But for more general objects? texture space world space arbitrary meshes cubic texture domain [Praun Hoppe SIGGGRAPH 2003] Going Beyond Apples:  Going Beyond Apples But for more general objects?  texture space world space arbitrary mesh coarse mesh Introducing Polycubes:  Introducing Polycubes Po·ly·cube: n. (Geom.) A solid composed by multiple unit cubes attached face to face Choosing a Polycube:  mesh polycube Choosing a Polycube Polycube should roughly resemble the mesh texture space world space Partition of Texture Space:  Partition of Texture Space polycube 2D analogue partition of the parameter space:  partition of the parameter space back to 3D case 3 case 4-a case 4-b case 5 case 6-a case 6-b partition of the parameter space:  partition of the parameter space back to 3D dual cells case 3 case 4-a case 4-b case 5 partition of the parameter space:  partition of the parameter space case 3 case 4-a case 4-b case 5 dual cells polycube-maps in a nutshell:  polycube-maps in a nutshell object space the mesh (with per-vertex text. coord) Fragment shader:  Fragment shader Input: current texture position (u,v,z) Find cell (in dual graph) Access information for that cell case orientation offset in global texture Apply axis-to-axis rotation inside cell according to orientation Apply projection according to case Add global offset Fetch final texel at resulting position stored in a texel in the tiny 3D lookup table Examples of poly-cubic parameterizations:  Examples of poly-cubic parameterizations texture space polycube-map world space in texture RAM u v w object Examples of poly-cubic parameterizations:  Examples of poly-cubic parameterizations texture space polycube-map world space u v w object Examples of poly-cubic parameterizations:  Examples of poly-cubic parameterizations texture space polycube-map world space u v w object Examples of poly-cubic parameterizations:  Examples of poly-cubic parameterizations texture space polycube-map world space object u v w An example application: same texture for different LOD:  An example application: same texture for different LOD Geometry 2 Geometry 1 Geometry 3 + + + = = = u v w the same polycube-map texture How to build a Polycube-Map (for a given mesh):  How to build a Polycube-Map (for a given mesh) Not automatic, to this point get a suitable polycube warp it around the mesh project mesh over it unwarp global optimization Global optimization:  Global optimization projection (not optimized) Discussion:  Discussion Pros truly seamless texture mapping no patch boundaries no color bleeding very low distortion nearly optimal texture packing bilinear filtering possible mipmapping possible mesh independency Cons long fragment program ~60 GPU instruction long could be improved, with little branching support 3 t-coords per vertex instead of 2 Limits cannot handle arbitrary shape/topology complexity e.g. a tree Thank you! Questions?:  Thank you! Questions? http://vcg.isti.cnr.it/~polycubemaps/ or, just Google for “polycube-map” Marco Tarini · Kai Hormann · Paolo Cignoni · Claudio Montani Visual Computing Lab · ISTI · CNR · Pisa, Italy Q: why only 6 cases? MC has 15...:  Q: why only 6 cases? MC has 15... A: only polycubes with two-manifold surfaces are considered... no no Q: Aren’t cubemaps just another atlas?:  Q: Aren’t cubemaps just another atlas? texture charts? chart boundaries? A: true, but such chart borders are: transparent for triangles invisible for mipmapping... hidden from the user Q: Similarities with volumetric textures:  Q: Similarities with volumetric textures Yes, a cube map can be seen as a compressed 3D texture… …which works only for a 2D surface in 3D texture space (and around it) 2D analogue texture stored in 1D values defined in a 2D space Q: isn’t it a lot of work to build a polycube map?:  Q: isn’t it a lot of work to build a polycube map? Polycube-maps Get a fitting polycube Warp it around mesh Project mesh over it Unwarp back Global optimization Atlases Find a good division into disk-like patches Pack charts togheter Global optimization Q: isn’t it a lot of work to build a polycube map?:  Q: isn’t it a lot of work to build a polycube map? Polycube-maps New. Not studied at all. Future work: design tools to make task a lot easier (but still user guided) In any case, final result will be clean (seamless...) Atlases Very much studied problem Automatic results inferior w.r.t. manual results In any case, final parameterization bound to have drawbacks (seams...)

Add a comment

Related presentations

Related pages

SIGGRAPH 2004

> invitation to exhibit > academic exhibits > siggraph 2004 exhibitors > acm siggraph industry directory
Read more

Home | ACM SIGGRAPH

ACM SIGGRAPH is a thriving international organization. Everybody who shares ACM SIGGRAPH's love for computer graphics and interactive techniques is warmly ...
Read more

31. SIGGRAPH 2004: Los Angeles, California, USA - Computer ...

31. SIGGRAPH 2004: Los Angeles, California, USA - Computer Animation Festival. Trier 1. Trier 2; Dagstuhl; modern. classic > Home > Conferences and ...
Read more

Call for Participation | SIGGRAPH 2004

Welcome to the SIGGRAPH 2004 Call for Participation. This is where we ask you to contribute your time, effort, and skill to the premier annual conference ...
Read more

ACM SIGGRAPH 2004 Emerging technologies

Title: SIGGRAPH '04 ACM SIGGRAPH 2004 Emerging technologies table of contents: Pages: 33: Sponsor: SIGGRAPH ACM Special Interest Group on ...
Read more

SIGGRAPH 2004 GPGPU Course :: GPGPU.org

Welcome to the course notes and supplementary materials for the full-day SIGGRAPH 2004 GPGPU course! The course was held at SIGGRAPH 2004 on Wednesday ...
Read more

New Audiences - Conference | SIGGRAPH 2004

New Audiences Thursday, 12 August 3:45 - 5:30 pm Room 501AB Session Chair: Dean Jackson, World Wide Web Consortium Flash Finally Hits Hollywood
Read more

Apple groß auf der Siggraph 2004? – GIGA

Die für den August angesetzte Computergrafikmesse Siggraph 2004 soll mit einer “riesigen” Präsenz von Apple glänzen. Wie das Gerüchteportal ...
Read more

ACM SIGGRAPH 2004 Computer animation festival

Title: SIGGRAPH '04 ACM SIGGRAPH 2004 Computer animation festival table of contents: Pages: 63: Sponsor: SIGGRAPH ACM Special Interest Group ...
Read more

Conference | SIGGRAPH 2004 - Home | ACM SIGGRAPH

Computer Visualization as a Tool for Historic Preservation and Education Thursday, 10 - 10:15 am Room 511AB This paper discusses the ability of computer ...
Read more