170 likes | 193 Views
Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition. Chapter 6. Figure 6.1: Screenshot of spaceTravel.cpp with a 100 x100 array of asteroids. Figure 6.2: (a) Projection of the asteroids and the frustum of spaceTravel.cpp onto
E N D
Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition Chapter 6
Figure 6.1: Screenshot of spaceTravel.cpp with a 100 x100 array of asteroids.
Figure 6.2: (a) Projection of the asteroids and the frustum of spaceTravel.cpp onto the xz-plane. (b) Corresponding quadtree squares (the root square is bold) (c) The tree structure with children at each node drawn SW, NW, NE, SE from left to right; the nodes in the red circle are some of those pruned.
Figure 6.3: Spacecraft carrying a viewing frustum "attached" to its front.
Figure 6.4: An octree cube and one of its 8 octants.
Figure 6.5: Two rooms off a hall. A dashed bounding box is shown containing the first object.
Figure 6.6: Screenshot of occlusion.cpp.
Figure 6.8: (a) Orienting an object in space with respect to fixed axes – the fixed reference orientation of the L is shown in bold (b) Orientation of an aircraft with respect to local axes “carried” by it.
Figure 6.9: Screenshot of eulerAngles.cpp.
Figure 6.10: The bold blue start orientation is given by the Euler angle tuple (0, 0, 0) and the bold blue destination one by either (0, 90, 0) or (-90, 90, 90). Intermediate orientations (green) in the linear interpolation between (0, 0, 0) and (0, 90, 0) all lie on the xz-plane, while those (red) between (0, 0, 0) and (-90, 90, 90) arc above it.
Figure 6.11: Screenshot of interpolateEuler- Angles.cpp.
Figure 6.12: The vector f(X) is obtained by rotating X about the line l.
Figure 6.13: The unit sphere S3 in R4 with a radial line l, representing a rotation of R3, passing through a pair of antipodal points.
Figure 6.14: (a) Conceptual plan to use quaternion space to interpolate in orientation space (numbers in parentheses indicate steps) (b) The geodesic path from q1 to q2 on S3 (c) Slerping from q1 to q2.
Figure 6.15: Changing the orientation from AB to AB’ is inherently ambiguous.
Figure 6.16: Screenshot of quaternionAnimation- .cpp.