Protected Attributes | Properties

CC3CameraShadowVolume Class Reference

A bounding volume that encloses a pyramidal volume between the view plane (near clipping plane) of the camera, and a light. More...

#import <CC3Light.h>

Inheritance diagram for CC3CameraShadowVolume:
Inheritance graph
[legend]
Collaboration diagram for CC3CameraShadowVolume:
Collaboration graph
[legend]

List of all members.

Protected Attributes

CC3Plane planes [6]
CC3Vector vertices [5]

Properties

CC3Vector bottomLeft
CC3Plane bottomPlane
CC3Vector bottomRight
CC3Plane farPlane
CC3Plane leftPlane
CC3Plane nearPlane
CC3Plane rightPlane
CC3Vector topLeft
CC3Plane topPlane
CC3Vector topRight

Detailed Description

A bounding volume that encloses a pyramidal volume between the view plane (near clipping plane) of the camera, and a light.

Nodes that intersect this volume will cast a shadow from that light across the camera. The shadow volume of nodes that cast a shadow across the camera view plane are rendered differently than shadow volumes for nodes that do not cast their shadow across the camera.

The camera shadow volume is a type of bounding volume and therefore supports methods for testing whether locations, rays, shapes, and other bounding volumes intersect its volume.


Member Data Documentation

- (CC3Plane planes[6]) [protected]

For bounding volumes that are described in terms of a hull of vertices and planes, this property returns the array of planes that define the boundary surface of this bounding volume.

The planes are defined in the global coordinate system. The number of planes in the array is specified by the planeCount property.

Not all bounding volumes are based on vertices and planes, and this abstract implementation returns the NULL pointer. Subclasses that make use of vertices and planes will allocate the underlying array and override this implementation.

Implements CC3BoundingVolume.

- (CC3Vector vertices[5]) [protected]

For bounding volumes that are described in terms of a hull of vertices and planes, this property returns the array of vertices at the points where the planes intersect.

The vertices are defined in the global coordinate system. The number of vertices in the array is defined by the vertexCount property.

The returned vertices are not in any defined order.

Not all bounding volumes are based on vertices and planes, and this abstract implementation returns the NULL pointer. Subclasses that make use of vertices and planes will allocate the underlying array and override this implementation.

Implements CC3BoundingVolume.


Property Documentation

- (CC3Vector) bottomLeft [read, assign]

The frustum vertex on the near clipping plane of the camera, at the intersection of the bottom and left sides.

- (CC3Plane) bottomPlane [read, assign]

The clip plane at the bottom of this frustum, in global coordinates.

- (CC3Vector) bottomRight [read, assign]

The frustum vertex on the near clipping plane of the camera, at the intersection of the bottom and right sides.

- (CC3Plane) farPlane [read, assign]

The clip plane at the far end of this frustum, in global coordinates.

- (CC3Plane) leftPlane [read, assign]

The clip plane at the left side of this frustum, in global coordinates.

- (CC3Plane) nearPlane [read, assign]

The clip plane at the near end of this frustum, in global coordinates.

- (CC3Plane) rightPlane [read, assign]

The clip plane at the right side of this frustum, in global coordinates.

- (CC3Vector) topLeft [read, assign]

The frustum vertex on the near clipping plane of the camera, at the intersection of the top and left sides.

- (CC3Plane) topPlane [read, assign]

The clip plane at the top of this frustum, in global coordinates.

- (CC3Vector) topRight [read, assign]

The frustum vertex on the near clipping plane of the camera, at the intersection of the top and right sides.


The documentation for this class was generated from the following file: