i
i
i
i
i
i
i
i
x Contents
14 Acceleration Algorithms 645
14.1 SpatialDataStructures .................. 647
14.2 Culling Techniques . . . . . . . . . . . . . . . . . . . . . 660
14.3 Hierarchical View Frustum Culling . . . . . . . . . . . . 664
14.4 Portal Culling . . . . . . . . . . . . . . . . . . . . . . . . 667
14.5 Detail Culling . . . . . . . . . . . . . . . . . . . . . . . . 670
14.6 Occlusion Culling . . . . . . . . . . . . . . . . . . . . . . 670
14.7 LevelofDetail ....................... 680
14.8 Large Model Rendering . . . . . . . . . . . . . . . . . . 693
14.9 PointRendering....................... 693
15 Pipeline Optimization 697
15.1 ProfilingTools ....................... 698
15.2 LocatingtheBottleneck .................. 699
15.3 Performance Measurements . . . . . . . . . . . . . . . . 702
15.4 Optimization ........................ 703
15.5 Multiprocessing....................... 716
16 Intersection Test Methods 725
16.1 Hardware-Accelerated Picking . . . . . . . . . . . . . . . 726
16.2 Definitions and Tools . . . . . . . . . . . . . . . . . . . . 727
16.3 Bounding Volume Creation . . . . . . . . . . . . . . . . 732
16.4 Geometric Probability . . . . . . . . . . . . . . . . . . . 735
16.5 RulesofThumb....................... 737
16.6 Ray/Sphere Intersection . . . . . . . . . . . . . . . . . . 738
16.7 Ray/BoxIntersection.................... 741
16.8 Ray/TriangleIntersection ................. 746
16.9 Ray/Polygon Intersection . . . . . . . . . . . . . . . . . 750
16.10 Plane/Box IntersectionDetection............. 755
16.11 Triangle/Triangle Intersection . . . . . . . . . . . . . . . 757
16.12 Triangle/BoxOverlap ................... 760
16.13 BV/BV Intersection Tests . . . . . . . . . . . . . . . . . 762
16.14 ViewFrustumIntersection................. 771
16.15 Shaft/Box and Shaft/Sphere Intersection . . . . . . . . . 778
16.16 Line/Line Intersection Tests . . . . . . . . . . . . . . . . 780
16.17 Intersection Between Three Planes . . . . . . . . . . . . 782
16.18 Dynamic Intersection Testing . . . . . . . . . . . . . . . 783
17 Collision Detection 793
17.1 Collision Detection with Rays . . . . . . . . . . . . . . . 795
17.2 DynamicCDusingBSPTrees............... 797
17.3 General Hierarchical Collision Detection . . . . . . . . . 802
17.4 OBBTree .......................... 807