set_cond_ind_mode(3G)
NAME
set_cond_ind_mode, inq_cond_ind_mode − set/inquire the conditional index mode for a global rendering scene
SYNOPSIS
C Syntax:
void set_cond_ind_mode(fildes,scene_id,prune_mode,cull_mode);
int fildes,scene_id,prune_mode,cull_mode;
void inq_cond_ind_mode(fildes,scene_id,prune_mode,cull_mode);
int fildes,scene_id,*prune_mode,*cull_mode;
FORTRAN77 Syntax:
subroutine set_cond_ind_mode(fildes,scene_id,prune_mode,
cull_mode)
integer*4 fildes,scene_id,prune_mode,cull_mode
subroutine inq_cond_ind_mode(fildes,scene_id,prune_mode,
cull_mode)
integer*4 fildes,scene_id,prune_mode,cull_mode
Pascal Syntax:
procedure set_cond_ind_mode(fildes,scene_id,prune_mode,
cull_mode:integer);
procedure inq_cond_ind_mode(fildes,scene_id:integer;
var prune_mode,cull_mode:integer);
DESCRIPTION
Input Parameters
fildes Integer file descriptor returned by gopen when an I/O path to a graphics device is opened.
scene_id Scene identifier; as returned by create_scene.
Input/Output Parameters
prune_mode Specifies/reports how model segment will be pruned during global rendering traversal. May be PRUNE_NORMAL or FALSE
cull_mode Specifies/reports how model segment culling will be performed during global rendering traversal. May be CULL_NORMAL, TRUE, or FALSE
Discussion
set_cond_ind_mode sets the conditional index mode for the specified global rendering scene. The prune_mode and cull_mode parameters control how the segment network associated with scene_id will be traversed during calls to render_scene.
In addition to the normal segment network traversal controls, (set_traversal_depth, traversal_lock), Starbase Display List provides performance enhancement traversal controls called pruning and culling. In applications requiring frequent viewing changes based on user input, often large portions of the segment network will be clipped prior to display. Pruning is a mechanism for quickly rejecting entire sub-networks by testing their extents against the current clipping bounds. Pruning is usually not appropriate for global renderings, however, because off screen objects may be reflected in on screen objects, for example. The prune_mode allows pruning to be disabled for the entire segment network.
When prune_mode is PRUNE_NORMAL, render_scene will prune the model segment during traversal as would Starbase. Setting prune_mode to FALSE disables all pruning during the render_scene traversal.
Culling is the process of replacing portions of a segment network with a more or less detailed version according to the screen size of the object for a given view. Three cull_mode options are provided for controlling culling during traversals for global rendering:
TRUE The culling test is always assumed to return TRUE, typically resulting in the less detailed version being selected.
FALSE The culling test is always assumed to return FALSE, typically resulting in the more detailed version being selected.
CULL_NORMAL Perform culling as would Starbase.
NOTES
Render_scene inquires the conditional index mode only when called upon to do a segment traversal; that is, when called with a compute_type of COMPUTE_RAY_TRACE or COMPUTE_RAD_FIRST.
This command may not be stored in a segment.
ERRORS
Invalid file descriptor.
Invalid scene_id.
Invalid prune_mode.
Invalid cull_mode.
DEFAULTS
By default, prune_mode = PRUNE_NORMAL and cull_mode = CULL_NORMAL.
SEE ALSO
render_scene(3G), output_scene(3G), cond_call_segment(3G), set_extent(3G), set_cull_size(3G).
— July 12, 1991