Classes |
struct | ClampProjectionMatrixCallback |
| Callback for overriding the CullVisitor's default clamping of the projection matrix to computed near and far values. More...
|
Public Types |
enum | VariablesMask {
COMPUTE_NEAR_FAR_MODE = (0x1 << 0),
CULLING_MODE = (0x1 << 1),
LOD_SCALE = (0x1 << 2),
SMALL_FEATURE_CULLING_PIXEL_SIZE = (0x1 << 3),
CLAMP_PROJECTION_MATRIX_CALLBACK = (0x1 << 4),
NEAR_FAR_RATIO = (0x1 << 5),
IMPOSTOR_ACTIVE = (0x1 << 6),
DEPTH_SORT_IMPOSTOR_SPRITES = (0x1 << 7),
IMPOSTOR_PIXEL_ERROR_THRESHOLD = (0x1 << 8),
NUM_FRAMES_TO_KEEP_IMPOSTORS_SPRITES = (0x1 << 9),
CULL_MASK = (0x1 << 10),
CULL_MASK_LEFT = (0x1 << 11),
CULL_MASK_RIGHT = (0x1 << 12),
CLEAR_COLOR = (0x1 << 13),
CLEAR_MASK = (0x1 << 14),
LIGHTING_MODE = (0x1 << 15),
LIGHT = (0x1 << 16),
DRAW_BUFFER = (0x1 << 17),
READ_BUFFER = (0x1 << 18),
NO_VARIABLES = 0x00000000,
ALL_VARIABLES = 0x7FFFFFFF
} |
enum | InheritanceMaskActionOnAttributeSetting { DISABLE_ASSOCIATED_INHERITANCE_MASK_BIT,
DO_NOT_MODIFY_INHERITANCE_MASK
} |
enum | ComputeNearFarMode { DO_NOT_COMPUTE_NEAR_FAR = 0,
COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES,
COMPUTE_NEAR_FAR_USING_PRIMITIVES,
COMPUTE_NEAR_USING_PRIMITIVES
} |
enum | CullingModeValues {
NO_CULLING = 0x0,
VIEW_FRUSTUM_SIDES_CULLING = 0x1,
NEAR_PLANE_CULLING = 0x2,
FAR_PLANE_CULLING = 0x4,
VIEW_FRUSTUM_CULLING,
SMALL_FEATURE_CULLING = 0x8,
SHADOW_OCCLUSION_CULLING = 0x10,
CLUSTER_CULLING = 0x20,
DEFAULT_CULLING,
ENABLE_ALL_CULLING
} |
typedef int | InheritanceMask |
typedef int | CullingMode |
Public Member Functions |
| CullSettings () |
| CullSettings (ArgumentParser &arguments) |
| CullSettings (const CullSettings &cs) |
virtual | ~CullSettings () |
CullSettings & | operator= (const CullSettings &settings) |
virtual void | setDefaults () |
void | setInheritanceMask (InheritanceMask mask) |
| Set the inheritance mask used in inheritCullSettings to control which variables get overwritten by the passed in CullSettings object.
|
InheritanceMask | getInheritanceMask () const |
| Get the inheritance mask used in inheritCullSettings to control which variables get overwritten by the passed in CullSettings object.
|
void | setCullSettings (const CullSettings &settings) |
| Set the local cull settings values from specified CullSettings object.
|
virtual void | inheritCullSettings (const CullSettings &settings) |
| Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.
|
virtual void | inheritCullSettings (const CullSettings &settings, unsigned int inheritanceMask) |
| Inherit the local cull settings variable from specified CullSettings object, according to the inheritance mask.
|
void | readEnvironmentalVariables () |
| read the environmental variables.
|
void | readCommandLine (ArgumentParser &arguments) |
| read the commandline arguments.
|
void | setInheritanceMaskActionOnAttributeSetting (InheritanceMaskActionOnAttributeSetting action) |
InheritanceMaskActionOnAttributeSetting | getInheritanceMaskActionOnAttributeSetting () const |
void | applyMaskAction (unsigned int maskBit) |
| Apply the action, specified by the InheritanceMaskActionOnAttributeSetting, to apply to the inheritance bit mask.
|
void | setImpostorsActive (bool active) |
| Switch the creation of Impostors on or off.
|
bool | getImpostorsActive () const |
| Get whether impostors are active or not.
|
void | setImpostorPixelErrorThreshold (float numPixels) |
| Set the impostor error threshold.
|
float | getImpostorPixelErrorThreshold () const |
| Get the impostor error threshold.
|
void | setDepthSortImpostorSprites (bool doDepthSort) |
| Set whether ImpostorSprite's should be placed in a depth sorted bin for rendering.
|
bool | getDepthSortImpostorSprites () const |
| Get whether ImpostorSprite's are depth sorted bin for rendering.
|
void | setNumberOfFrameToKeepImpostorSprites (int numFrames) |
| Set the number of frames that an ImpostorSprite is kept whilst not being beyond, before being recycled.
|
int | getNumberOfFrameToKeepImpostorSprites () const |
| Get the number of frames that an ImpostorSprite is kept whilst not being beyond, before being recycled.
|
void | setComputeNearFarMode (ComputeNearFarMode cnfm) |
ComputeNearFarMode | getComputeNearFarMode () const |
void | setNearFarRatio (double ratio) |
double | getNearFarRatio () const |
void | setCullingMode (CullingMode mode) |
| Set the culling mode for the CullVisitor to use.
|
CullingMode | getCullingMode () const |
| Returns the current CullingMode.
|
void | setCullMask (osg::Node::NodeMask nm) |
osg::Node::NodeMask | getCullMask () const |
void | setCullMaskLeft (osg::Node::NodeMask nm) |
osg::Node::NodeMask | getCullMaskLeft () const |
void | setCullMaskRight (osg::Node::NodeMask nm) |
osg::Node::NodeMask | getCullMaskRight () const |
void | setLODScale (float scale) |
| Set the LOD bias for the CullVisitor to use.
|
float | getLODScale () const |
| Get the LOD bias.
|
void | setSmallFeatureCullingPixelSize (float value) |
| Threshold at which small features are culled.
|
float | getSmallFeatureCullingPixelSize () const |
| Get the Small Feature Culling Pixel Size.
|
void | setClampProjectionMatrixCallback (ClampProjectionMatrixCallback *cpmc) |
| set the ClampProjectionMatrixCallback.
|
ClampProjectionMatrixCallback * | getClampProjectionMatrixCallback () |
| get the non const ClampProjectionMatrixCallback.
|
const
ClampProjectionMatrixCallback * | getClampProjectionMatrixCallback () const |
| get the const ClampProjectionMatrixCallback.
|
void | write (std::ostream &out) |
| Write out internal settings of CullSettings.
|
Protected Attributes |
InheritanceMask | _inheritanceMask |
InheritanceMaskActionOnAttributeSetting | _inheritanceMaskActionOnAttributeSetting |
ComputeNearFarMode | _computeNearFar |
CullingMode | _cullingMode |
float | _LODScale |
float | _smallFeatureCullingPixelSize |
ref_ptr
< ClampProjectionMatrixCallback > | _clampProjectionMatrixCallback |
double | _nearFarRatio |
bool | _impostorActive |
bool | _depthSortImpostorSprites |
float | _impostorPixelErrorThreshold |
int | _numFramesToKeepImpostorSprites |
Node::NodeMask | _cullMask |
Node::NodeMask | _cullMaskLeft |
Node::NodeMask | _cullMaskRight |