cgCreateStateAssignment(3)

NAME
cgCreateStateAssignment - create a state assignment

SYNOPSIS
  #include <Cg/cg.h>
  CGstateassignment cgCreateStateAssignment( CGpass pass,
                                             CGstate state );

PARAMETERS

pass
    The pass in which to create the state assignment.

state
    The state used to create the state assignment.

RETURN VALUES
Returns the handle to the created state assignment.

Returns NULL if an error occurs.

DESCRIPTION
cgCreateStateAssignment creates a state assignment for the specified pass. The new state assignment is appended to the pass' existing list of state assignments. If the state is actually a state array, the created state assignment is created for array index zero. Use the cgCreateStateAssignmentIndex manpage to create state assignments for other indices of an array state.

EXAMPLES
  /* Procedurally create state assignment equivalent to */
  /* "BlendFunc = { SrcAlpha, OneMinusSrcAlpha };"  */
  CGstate blendFuncState = cgGetNamedState(context, "BlendFunc");
  CGstateassignment blendFuncSA =
      cgCreateStateAssignment(pass, blendFuncState);
  static const int blendFuncConfig[2] =
      { GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA };
  cgSetIntArrayStateAssignment(blendFuncSA, blendFuncConfig);
  /* Procedurally create state assignment equivalent to */
  /* "BlendEnable = true;" */
  CGstate blendEnableState =
      cgGetNamedState(context, "BlendEnable");
  CGstateassignment blendEnableSA =
      cgCreateStateAssignment(pass, blendEnableState);
  cgSetBoolStateAssignment(blendEnableSA, CG_TRUE);

ERRORS
CG_INVALID_PASS_HANDLE_ERROR is generated if pass is not a valid pass.

CG_INVALID_STATE_HANDLE_ERROR is generated if state is not a valid state.

HISTORY
cgCreateStateAssignment was introduced in Cg 1.5.

SEE ALSO
the cgCreateTechnique manpage, the cgCreateSamplerStateAssignment manpage, the cgCreateState manpage, the cgCreateStateAssignmentIndex manpage