Castle Game Engine Introduction
Units
Class Hierarchy
Classes, Interfaces, Objects and Records
Types
Variables
Constants
Functions and Procedures
Identifiers
Unit CastleFrustum
Description
Frustum object (TFrustum ) and helpers.
Uses
Overview
Classes, Interfaces, Objects and Records
Object TFrustum
Viewing frustum, defined as 6 plane equations.
Types
Constants
FrustumPointsQuadsIndexes : array[TFrustumPlane , 0..3]of LongWord =
( (0, 3, 7, 4),
(1, 2, 6, 5),
(2, 3, 7, 6),
(0, 1, 5, 4),
(0, 1, 2, 3),
(4, 5, 6, 7) );
FrustumPointsLinesIndexes : array[0..11, 0..1]of LongWord =
( (0, 1), (1, 2), (2, 3), (3, 0),
(4, 5), (5, 6), (6, 7), (7, 4),
(0, 4), (1, 5), (2, 6), (3, 7)
);
Description
Types
TFrustumPointsSingle = packed array [0..7] of packed record
case Integer of
0: (XYZ: TVector3Single ; W: Single);
1: (XYZW: TVector4Single );
end;
TFrustumPointsDouble = packed array [0..7] of packed record
case Integer of
0: (XYZ: TVector3Double ; W: Double);
1: (XYZW: TVector4Double );
end;
TFrustumCollisionPossible = (...);
See TFrustum.SphereCollisionPossible for description what each value of this type means.
Values
fcNoCollision:
fcSomeCollisionPossible:
fcInsideFrustum:
Constants
FrustumPointsQuadsIndexes : array[TFrustumPlane , 0..3]of LongWord =
( (0, 3, 7, 4),
(1, 2, 6, 5),
(2, 3, 7, 6),
(0, 1, 5, 4),
(0, 1, 2, 3),
(4, 5, 6, 7) );
FrustumPointsLinesIndexes : array[0..11, 0..1]of LongWord =
( (0, 1), (1, 2), (2, 3), (3, 0),
(4, 5), (5, 6), (6, 7), (7, 4),
(0, 4), (1, 5), (2, 6), (3, 7)
);
Useful if you want to draw frustum obtained from TFrustum.CalculatePoints .
It's guaranteed that the first 4 items touch only the first 4 (near plane) points of the frustum — useful if you want to draw only the near plane rect. For ZFarInfinity , other points may be in infinity.
Generated by PasDoc 0.13.0 on 2014-04-30 22:06:42