Presentation is loading. Please wait.

Presentation is loading. Please wait.

Spherical Maps with the Near-Equal Solid-Angle Property

Similar presentations


Presentation on theme: "Spherical Maps with the Near-Equal Solid-Angle Property"— Presentation transcript:

1 Spherical Maps with the Near-Equal Solid-Angle Property
Liang Wan Tien-Tsin Wong The Chinese University of Hong Kong

2 Spherical Maps Represent the surrounding environment Applications
Environment mapping Precomputed radiance transfer (PRT) Image-based relighting Spherical maps Cubemap, longitude/latitude map, dual paraboloid map, sphere map, …

3 Criteria Uniform distribution Equal-area property Stretch
How uniformly the samples are distributed? Equal-area property Whether the texels span the same solid-angle Stretch Measure the mapping distortion of texel shapes Query efficiency Speed of querying a point in the map Base face number 6-face map fits nicely into the hardware

4 Cubemap Properties Drawbacks 6 base faces Fast look-up
Hardware cubemap Drawbacks Not uniformly distributed Not equal-area Distortion at corners

5 Three Spherical Maps Rhombic dodecahedron Isocube HEALPix Equal-area
Similar distortion Six-face, Equal-area

6 Base Faces 6 12 Cubemap HEALPix 12 6 Rhombic dodecahedron Isocube

7 Sample Distribution Uneven sampling Cubemap HEALPix Rhombic
dodecahedron Isocube

8 Shape Distortion Quadrilateral Not equal-area Cubemap HEALPix Shape
Similar distortion Rhombic dodecahedron Isocube

9 Property Summary Cubemap HEALPix Isocube Rhombic Dodecahedron
Base face number 6 12 Uniform Distribution Uneven Even Fair Equal-area property Not equal Equal Near Texel shape Quad. Quad./ Tri. Base Polyhedron Spherical partitioning

10 Property Summary Cubemap HEALPix Isocube Rhombic Dodecahedron
Base face number 6 12 Uniform Distribution Uneven Even Fair Equal-area property Not equal Equal Near Texel shape Quad. Quad./ Tri. Base Polyhedron Spherical partitioning

11 HEALPix Construction Originated in astrophysics
Curvilinear partitioning of the sphere

12 HEALPix Mapping 01 float3 hpmap(float3 dir) 02 {
02 { 03 float fn, u, v, iu, iv, x, y, z, t; 04 float tt, tn, tf, za, tmp, zone, south; 06 float3 res; 07 08 x=dir.x; y=dir.z; z=dir.y; 09 t = atan2(-y, x)/1.571; 10 t += step(t, 0.f) * 4.0; 11 za = 3.0 * abs(z); 12 tf = modf(t, tn); 13 // Equatorial or polar zone 15 if ( za < 2.0 ) { // Equatorial zone tt = t + 0.5; tmp= z * 0.75; u = modf(tt + tmp, iu); v = modf(tt - tmp, iv); fn = min(iu, iv); fn+= 4 + (sign(iv-iu) - floor(fn/4))*4; res= float3(fn, u, v); 24 } else { // Polar zone tmp= sqrt(3.0f - za); // If in south pole zone south = ( z < 0 ); tt = tmp * tf; tmp= tmp; tf = tmp * south; res= float3(tn+8*south, tmp-tf+tt, tf+tt); 33 } 34 return res; 35 }

13 HEALPix Characteristics Drawback Equal area A hierarchical structure
Samples on parallel small circles Facilitate spherical harmonic transform Drawback Texels in different base faces have different shapes

14 Property Summary Cubemap HEALPix Isocube Rhombic Dodecahedron
Base face number 6 12 Uniform Distribution Uneven Even Fair Equal-area property Not equal Equal Near Texel shape Quad. Quad./ Tri. Base Polyhedron Spherical partitioning

15 Rhombic Dodecahedron Construction
Great circle subdivision 1 5 8 6 9 10 11 2 7 3 4

16 Rhombic Dodecahedron Characteristics
All texels are distorted similarly Identical base faces Geodesic property

17 HEALPix & Rhombic Dodecahedron
Drawbacks Both consist of 12 base faces Tailor-made programs for texture lookup Difficult for mipmap construction and tri-linear filtering What we desire? 6 faces so as to fully utilize the hardware cubemap Retain good properties

18 Property Summary Cubemap HEALPix Isocube Rhombic Dodecahedron
Base face number 6 12 Uniform Distribution Uneven Even Fair Equal-area property Not equal Equal Near Texel shape Quad. Quad./ Tri. Base Polyhedron Spherical partitioning

19 Isocube Construction Spherical partitioning

20 Isocube Mapping R Q 01 float3 R2Q( float3 R ) 02 { 03 float2 I;
04 float3 Q; 05 float4 coef; 06 float phi, y, ya, bequ,quar; 07 08 // Compute azimuth angle and convert it in the range [0,4) 09 phi = 2*atan2(R.z, R.x)/PI; 10 phi+= step(phi, -0.5) * 4; 11 12 // Decide whether the pixel is in the equatorial region 13 y = R.y * 1.5; 14 ya = abs(y); 15 bequ= step(ya, 1.); 16 17 // Convert R → I 18 I.x = sqrt(3 - 2*ya); 19 I.x = lerp(I.x, 1, bequ); 20 I.y = phi * I.x; 21 22 // Map I → Q 23 quar= floor(phi + 0.5); 24 coef= texRECT(signTBL, float2(quar, 0)); 25 Q.x = dot(coef.xy, I); 26 Q.y = lerp(sign(y), y, bequ); 27 Q.z = dot(coef.zw, I); 28 29 return Q; 30 } R Q

21 Isocube Characteristics Drawback Equal area 6 faces
Extremely fast look-up Drawback Distortion in polar regions

22 Environment Mapping HEALPix Rhombic Dodecahedron

23 Environment Mapping Isocube Cubemap

24 Rendering Comparison Demo Cubemap
We now compare the rendering results. Please look at the blowups. Healpix preserves more details near the spotlight, the panel and the window. Cubemap

25 Discussions Performance comparison
All three maps are resampled from a high-resolution cubemap Cubemap HEALPix Rhombic Dodecahedron Isocube Timing (fps) 232.6 65.9 56.5 168.2 Discrepancy Figure. Discrepancy Comparison Stretch Figure. Stretch Variance Comparison The timing test context: object with 106,466 vertices, Pentium IV 2.6 GHz CPU, nVidia GeForceFX 6800 Ultra.

26 Potential Applications
Equal-area, uniform sampling OmniMax video HEALPix, isocube Similar distortion Shadow mapping HEALPix, rhombic dodecahedron Hemicube Cubemap, isocube

27 References HEALPix Isocube
K. M. Górski, E. Hivon, and B. D. Wandelt, Analysis issues for large CMB data sets. In Proc. of the MPA/ESO Conference on Evolution of Large-Scale Structure: from Recombination to Garching, 1998 T.T. Wong, L. Wan, C.S. Leung, and P.M. Lam, Real-time environment mapping with equal solid-angle spherical quad-map, Shader X4: Lighting & Rendering, Edited by W. Engel, Charles River Media, 2006 L. Wan, T.T. Wong, and C.S. Leung, Spherical Q2tree for sampling dynamic environment sequences, in Proc. of Eurographics Symposium on Rendering 2005 (EGSR 2005), Konstanz, Germany, pp , 2005 Isocube L. Wan, T.T. Wong, and C.S. Leung, Isocube: Exploiting the Cubemap Hardware, IEEE Transactions on Visualization and Computer Graphics, to appear

28 Webpage The updated document can be found in the website
The demo code is free to download from the link

29 Credits & Acknowledgments
Rhombic dodecahedron is a joint work with Chi-Wing Fu (HKUST) and Chi-Sing Leung (CityU) Isocube is a joint work with Chi-Sing Leung (CityU) Thanks to Lai-Sze Ng and Ping-Man Lam for implementing part of the codes Thanks to Xuemiao Xu for capturing some of the panoramas This work is supported by Research Grants Council of the Hong Kong Special Administrative Region, under RGC Earmarked Grants (Project No. CUHK416806)

30 Q & A

31 Discrepancy comparison
The lower the discrepancy is, the more uniformly the samples are distributed.

32 Stretch variance comparison
The smaller the variance is, more similarly the samples are distorted.


Download ppt "Spherical Maps with the Near-Equal Solid-Angle Property"

Similar presentations


Ads by Google