Presentation is loading. Please wait.

Presentation is loading. Please wait.

I3D 20081 Fast Non-Linear Projections using Graphics Hardware Jean-Dominique Gascuel, Nicolas Holzschuch, Gabriel Fournier, Bernard Péroche I3D 2008.

Similar presentations


Presentation on theme: "I3D 20081 Fast Non-Linear Projections using Graphics Hardware Jean-Dominique Gascuel, Nicolas Holzschuch, Gabriel Fournier, Bernard Péroche I3D 2008."— Presentation transcript:

1 I3D 20081 Fast Non-Linear Projections using Graphics Hardware Jean-Dominique Gascuel, Nicolas Holzschuch, Gabriel Fournier, Bernard Péroche I3D 2008

2 2 Non-linear projections: What & Why ? [lensmateonline.com] [wiki.panotools.org, Ben Kreunen]

3 I3D 20083 Motivations [Kautz et al., 2004] Cosine sphere for local shadows [Heidrich & Seidel,1998] Introduced Parabola envmaps [Osman et al., 2006] Dual parabola shadowmaps

4 I3D 20084 Previous work [Kautz 2004] CPU rasterization Close papers: [Fournier 2005] Indirect illumination [Loyd 2006] Logarithmic shadow maps [Hou 2006] Multi perspective reflections [Liu 2007] Non linear beam tracing GPU based, same rendering pipeline & FS

5 I3D 20085 Our contributions Targeted to a specific class of non-linear projections –Single center of projection –Convex, C 1, and invertible Each triangle maps to one simple shape. Simple equations for projected edges. Fast  ~x2 to x4 times faster than cubemaps or hemicubes. Everything is done on the GPU

6 I3D 20086 Plan Introduction Case studies –Sphere projection –Parabola projection –Other projections Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

7 I3D 20087 Sphere projection 1/5

8 I3D 20088 Sphere projection 2/5

9 I3D 20089 Sphere projection 3/5

10 I3D 200810 Sphere projection 4/5

11 I3D 200811 Sphere projection 5/5

12 I3D 200812 Triangles made of known ellipses Looking at the 2D screen:

13 I3D 200813 Plan Introduction Case studies –Sphere projection –Parabola projection –Other projections Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

14 I3D 200814 Parabola projection 1/3

15 I3D 200815 Parabola projection 2/3

16 I3D 200816 Parabola projection 3/3

17 I3D 200817 Parabola: 3D line  2D circle 1/2

18 I3D 200818 Triangles made of arcs 2/2

19 I3D 200819 Plan Introduction Case studies –Sphere projection –Parabola projection –Other projections Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

20 I3D 200820 Other projections… Fisheyes arcs with: single minimum in normal direction, possible maximum at extremities.

21 I3D 200821 Application-driven choice Sphere lighting  solid angle x cos Parabola envmaps  less distortions Lambert ambient occlusion  equal area Fish eye 2 Ideal photographic fish-eye

22 I3D 200822 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

23 I3D 200823 Rendering strategy

24 I3D 200824 FS: Ray-casting FS discards pixels outside original 3D triangle unproject: 2D fragment coordinates  3D ray direction ray/triangle intersection

25 I3D 200825 FS: Interpolations Mimic linear interpolation inside the 3D triangle  Non-linear interpolation in 2D screen For all vertex varying attributes: normals, colors, texture coordinates, etc. Ray-intersect gives barycentric coordinates α, β  dot product: (1, α, β). (C 0, C 1 -C 0, C 2 -C 0 )

26 I3D 200826 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding –Basic Triangle –Near plane Clipping –Concave Covering Triangle Quad Based Bounding Demo & Results Conclusion

27 I3D 200827 Bounding triangle 1/2

28 I3D 200828 Bounding Triangle 2/2

29 I3D 200829 Triangle Covering

30 I3D 200830 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding –Basic Triangle –Near plane Clipping –Concave Covering Triangle Quad Based Bounding Demo & Results Conclusion

31 I3D 200831 Bellow horizon

32 I3D 200832 Camera Plane Clipping 1/3

33 I3D 200833 Camera Plane Clipping 2/3

34 I3D 200834 Camera Plane Clipping 3/3

35 I3D 200835 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding –Basic Triangle –Near plane Clipping –Concave Covering Triangle Quad Based Bounding Demo & Results Conclusion

36 I3D 200836 Concave Covering Triangle 1/2

37 I3D 200837 Concave Covering Triangle 2/2 1 input triangle  1 to 4 bounding triangles

38 I3D 200838 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

39 I3D 200839 Needed because 1.We don’t have easy tangents for Fisheyes projections 2.G80 geometry shader take worst case timing: 4 output triangles in some rare case  x4 slowdown everywhere in GS…

40 I3D 200840 Oriented Bounding Box “Easy” for a single ellipse.

41 I3D 200841 Quad coverage scheme Merge extremal points into a single aaBB

42 I3D 200842 Parabola projection …Bent triangles are made of circles…  Any axis will work.  optimal axis aligned bounding box

43 I3D 200843 Generic bounding scheme

44 I3D 200844 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

45 I3D 200845 Example scenes Lemmings

46 I3D 200846 Triangles 37% overdraw

47 I3D 200847 Aligned bbox 107% overdraw But FASTER on G80

48 I3D 200848 Test scene2/4 Cubemaps/hemicube

49 I3D 200849 Test scene3/4 Columns = Thin triangles, With large deformations

50 I3D 200850 Test scenes4/4 Sphere – 560K triangles « Real life »

51 I3D 200851 Inside the OpenGL pipeline Facades

52 I3D 200852 Cubemap vs. Parabola-map Color (ms) Depth (ms) Coverage (ms) 6 x 512x512 cubemaps 2x 512x512 parabola 2590 716 548 157 490 121 6 x 16x16 cubemaps 2 x 16x16 parabola 8.8 3.4 5.2 2.6 4.8 2.2 Better quality than cubemaps Heidrich, Laine, Osman Lower memory footprint Low triangle scenes: ~ x2 to x4 speedups (better on hi res)

53 I3D 200853 Hemicube vs non-linear projection Color (ms) Depth (ms) Coverage (ms) 5 × 512 × 512 hemicube 1 × 512 × 512 parabola 1 × 512 × 512 sphere map 1 × 512 × 512 Lambert 1500 375 433 396 375 79 71 80 320 61 67 5 × 16 × 16 hemicube 1 × 16 × 16 parabola 7.1 2.5 4.3 1.9 4.0 1.6 Low triangle scenes: ~ x2.5 to x5 speedups (better on hi res)

54 I3D 200854 Plan Introduction Case studies Rendering Pipeline Triangle Based Bounding Quad Based Bounding Demo & Results Conclusion

55 I3D 200855 Conclusion Implemented Non-linear projections on GPU –Specific class of projections, useful for many applications –Tight bounding shapes –Faster than cubemaps Projections: –Parabola: optimal BB  fast overall computations –Sphere: sub-optimal BB, still fast –Other (Lambert/Fisheye): generic BB, lots of overdraw Full sources at http://artis.inrialpes.fr/Publications

56 I3D 200856 Future Directions Better quad bounding for Lambert & fisheye Should be ~ Sphere projection Improve GS bottleneck –Faster, not worst case based (NVidia’s job) –Multi pass triangle bounding Multiple layers rendering (all faces at once) Deferred shading Benchmark within a local/global lighting framework.


Download ppt "I3D 20081 Fast Non-Linear Projections using Graphics Hardware Jean-Dominique Gascuel, Nicolas Holzschuch, Gabriel Fournier, Bernard Péroche I3D 2008."

Similar presentations


Ads by Google