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>
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 |
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.
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.
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.
- (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.