Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Space Partitions.

Similar presentations


Presentation on theme: "CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Space Partitions."— Presentation transcript:

1 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Space Partitions

2 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Today’s Short Film Arnold

3 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Announcement Proxy Settings for accessing SIGGRAPH papers online. Two paper presentations each on March 18 & 25. –3/18: Portal paper and BSP paper. –Read the papers before class. Volunteers wanted for paper presentations on April 8

4 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Common Operations in 3D Line/object intersection –Given a ray or line, which object will it intersect? View frustum culling Collision detection

5 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Sorting/Indexing in 3D Sequential search is too slow for large models. How about storing them in a 3D array? –Size will be overwhelming Think “hierarchy”

6 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Octree Divide the space in halves in X/Y/Z. –Always split in the middle. –You may also consider them as splitting in X, then in Y, then in Z. If too many objects are in a partition, divide them again (recursively).

7 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 K-D Tree More flexible than octree: –Not always splitted in the middle. –Split in X, then in Y, then in Z, or any order.

8 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Kd-tree Example 1 1 23 2 3 4567 4 5 6 7 8910111213 8 9 10 11 12 13 Figure Source: CS638 slides by Stephen Chenney, University of Wisconsin – Madison,

9 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 BSP Trees From the paper by Fuchs et al, “On visible surface generation by a priori tree structures” SIGGRAPH 80.On visible surface generation by a priori tree structures Binary Space Partition trees –A sequence of cuts that divide a region of space into two Cutting planes can be of any orientation

10 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Drawing Order from BSP Trees BSP tress can be used to order polygons from back to front, or visa-versa –Descend tree with viewpoint –Things on the same side of a splitting plane as the viewpoint are always in front of things on the far side Can draw from back to front –Gives the correct order for rendering transparent objects with a z-buffer, and by far the best way to do it Can draw front to back too.

11 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 BSP Example 1 4 2 375 BAout8 D 6 C 1 2 3 4 56 7 8 A B C D Figure Source: CS638 slides by Stephen Chenney, University of Wisconsin – Madison,

12 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 OBB Tree OBB stands for Oriented Bounding Box. OBB is a rectangular bounding box at an arbitrary orientation. Asymptotically faster for close proximity situations.

13 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Off Topics…

14 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Mouse Interaction in Assignment 1 You may write your own like this: x -= mouse_ref_x; y -= mouse_ref_y; xf = (float) x/width; yf = (float) y/height; angle = 90* xf; M = rotation3D(axis_Y, angle); angle = 90* yf; M = rotation3D(axis_X, angle) * M;

15 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Or You May Use GLH So you don’t have to reinvent the wheel. OpenGL Helper Library http://home.earthlink.net/~eberkain/GLH.html http://home.earthlink.net/~eberkain/GLH.html Used in some NVIDIA SDK Demos.

16 CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Example Code #include glut_simple_mouse_interactor camera, object, *current_interactor; current_interactor = &camera; glut_add_interactor( current_interactor);


Download ppt "CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Space Partitions."

Similar presentations


Ads by Google