Name
cgSetParameterVariability - set a parameter's variability
Synopsis
#include <Cg/cg.h>
void cgSetParameterVariability( CGparameter param,
CGenum vary );
Parameters
- param
-
The parameter.
- vary
-
The variability to which param will be set.
Return Values
None.
Description
cgSetParameterVariability allows the
application to change the variability of a parameter.
Currently parameters may not be changed to or from CG_VARYING variability.
Also, the variability of uniform buffer parameters and their member parameters
may not be changed.
However, other parameters of CG_UNIFORM or CG_LITERAL variability may
be changed.
Valid values for vary include :
- CG_UNIFORM
-
A uniform parameter is one whose value does not change with each
invocation of a program, but whose value can change between groups
of program invocations.
- CG_LITERAL
-
A literal parameter is folded out at compile time. Making a uniform
parameter literal
will often make a program more efficient at the expense of requiring
a compile every time the value is set.
- CG_DEFAULT
-
By default, the variability of a parameter will be overridden by the
a source parameter connected to it unless it is changed with
cgSetParameterVariability. If it is set
to CG_DEFAULT it will restore the default state of assuming the
source parameters variability.
Examples
to-be-written
Errors
CG_INVALID_PARAM_HANDLE_ERROR is generated if param is not a valid parameter.
CG_INVALID_ENUMERANT_ERROR is generated if vary is not
CG_UNIFORM, CG_LITERAL, or CG_DEFAULT.
CG_INVALID_PARAMETER_VARIABILITY_ERROR is generated if the parameter could
not be changed to the variability indicated by vary.
CG_INVALID_PARAMETER_TYPE_ERROR is generated if vary is CG_LITERAL and
param is not a numeric parameter, or if param is a uniform buffer or a
member of a uniform buffer.
History
cgSetParameterVariability was introduced in Cg 1.2.
See Also
cgGetParameterVariability
|