<HTML> <HEAD> <TITLE>cgGLSetParameter</TITLE> <STYLE TYPE="text/css" MEDIA=screen> <!-- BODY { font-family: Arial,Helvetica; } BLOCKQUOTE { margin: 10pt; } H1,A { color: #336699; } /*** Top menu style ****/ .mmenuon { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #ff6600; font-size: 10pt; } .mmenuoff { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #ffffff; font-size: 10pt; } .cpyright { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #ffffff; font-size: xx-small; } .cpyrightText { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #ffffff; font-size: xx-small; } .sections { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 11pt; } .dsections { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 12pt; } .slink { font-family: Arial,Helvetica; font-weight: normal; text-decoration: none; color: #336699; font-size: 9pt; } .slink2 { font-family: Arial,Helvetica; text-decoration: none; color: #336699; } .maintitle { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 18pt; } .dblArrow { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: small; } .menuSec { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: small; } .newstext { font-family: Arial,Helvetica; font-size: small; } .linkmenu { font-family: Arial,Helvetica; color: #000000; font-weight: bold; text-decoration: none; } P { font-family: Arial,Helvetica; } PRE { font-family: monospace; white-space: pre; font-color: #333333; font-weight: 100; background-color: #eeeeee; padding: 5px; width: 90%; border-style: solid; border-width: 2px; border-color: #bebebe; } .quote { font-family: Times; text-decoration: none; color: #000000; font-size: 9pt; font-style: italic; } .smstd { font-family: Arial,Helvetica; color: #000000; font-size: x-small; } .std { font-family: Arial,Helvetica; color: #000000; } .meerkatTitle { font-family: sans-serif; font-size: x-small; color: black; } .meerkatDescription { font-family: sans-serif; font-size: 10pt; color: black } .meerkatCategory { font-family: sans-serif; font-size: 9pt; font-weight: bold; font-style: italic; color: brown; } .meerkatChannel { font-family: sans-serif; font-size: 9pt; font-style: italic; color: brown; } .meerkatDate { font-family: sans-serif; font-size: xx-small; color: #336699; } .tocTitle { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #333333; font-size: 10pt; } .toc-item { font-family: Arial,Helvetica; font-weight: bold; color: #336699; font-size: 10pt; text-decoration: underline; } .perlVersion { font-family: Arial,Helvetica; font-weight: bold; color: #336699; font-size: 10pt; text-decoration: none; } .docTitle { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #000000; font-size: 10pt; } .dotDot { font-family: Arial,Helvetica; font-weight: bold; color: #000000; font-size: 9pt; } .docSec { font-family: Arial,Helvetica; font-weight: normal; color: #333333; font-size: 9pt; } .docVersion { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 10pt; } .docSecs-on { font-family: Arial,Helvetica; font-weight: normal; text-decoration: none; color: #ff0000; font-size: 10pt; } .docSecs-off { font-family: Arial,Helvetica; font-weight: normal; text-decoration: none; color: #333333; font-size: 10pt; } h3 { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: small; } h2 { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: medium; } h1 { font-family: Verdana,Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: large; } DL { font-family: Arial,Helvetica; font-weight: normal; text-decoration: none; color: #333333; font-size: 10pt; } UL > LI > A { font-family: Arial,Helvetica; font-weight: bold; color: #336699; font-size: 10pt; } .moduleInfo { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #333333; font-size: 11pt; } .moduleInfoSec { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 10pt; } .moduleInfoVal { font-family: Arial,Helvetica; font-weight: normal; text-decoration: underline; color: #000000; font-size: 10pt; } .cpanNavTitle { font-family: Arial,Helvetica; font-weight: bold; color: #ffffff; font-size: 10pt; } .cpanNavLetter { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #333333; font-size: 9pt; } .cpanCat { font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; color: #336699; font-size: 9pt; } --> </STYLE> </HEAD> <BODY> <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"> </object> <BLOCKQUOTE> <H1><A NAME="NAME"><A NAME="1">NAME </A></A></H1> <P> <B>cgGLSetParameter</B> - set the values of a scalar or vector parameter </P> <H1><A NAME="SYNOPSIS"><A NAME="2">SYNOPSIS </A></A></H1> <PRE> #include <Cg/cgGL.h> /* TYPE is float or double */ void cgGLSetParameter1{fd}( CGparameter param, TYPE x ); void cgGLSetParameter2{fd}( CGparameter param, TYPE x, TYPE y ); void cgGLSetParameter3{fd}( CGparameter param, TYPE x, TYPE y, TYPE z ); void cgGLSetParameter4{fd}( CGparameter param, TYPE x, TYPE y, TYPE z, TYPE w ); void cgGLSetParameter{1234}{fd}v( CGparameter param, const TYPE * v ); </PRE> <H1><A NAME="PARAMETERS"><A NAME="3">PARAMETERS </A></A></H1> <DL> <DT><STRONG>param </STRONG></DT> <DD> <P> The parameter that will be set. </P> <DT><STRONG>x, y, z, and w </STRONG></DT> <DD> <P> The values used to set the parameter. </P> <DT><STRONG>v </STRONG></DT> <DD> <P> An array of values used to set the parameter for the array versions of the set functions. </P> </DD></DL> <H1><A NAME="RETURN_VALUES"><A NAME="4">RETURN VALUES </A></A></H1> <P> None. </P> <H1><A NAME="DESCRIPTION"><A NAME="5">DESCRIPTION </A></A></H1> <P> The <B>cgGLSetParameter</B> functions set the value of a scalar or vector parameter. </P> <P> The function takes either 1, 2, 3, or 4 values depending on which version is used. If more values are passed in than the parameter requires, the extra values will be ignored. </P> <P> There are versions of each function that take either <B>float</B> or <B>double</B> values signified by <B>f</B> or <B>d</B> in the function name. </P> <P> The functions with <B>v</B> at the end of their names take an array of values instead of explicit parameters. </P> <P> The <B>cgGLSetParameter</B> functions may be called with either uniform or varying parameters. When called with a varying parameter, the appropriate immediate mode OpenGL entry point will be called. However, the <A HREF="cgGLGetParameter.html">cgGLGetParameter</A> functions will only work with uniform parameters. </P> <P> <B>Note:</B> Previous releases of Cg allowed you to store more values in a parameter than indicated by the parameter's type. For example, one could use <A HREF="cgGLSetParameter4f.html">cgGLSetParameter4f</A> to store four values into a parameter of type <B>CG_FLOAT</B> (not <B>CG_FLOAT4</B>). All four values could later be retrieved using a get call which requested more than one value. However, this feature conflicts with the GLSL approach and also leads to issues with parameters mapped into BUFFERS. Therefore, beginning with Cg 2.0 any components beyond the number indicated by the parameter type are ignored. </P> <H1><A NAME="EXAMPLES"><A NAME="6">EXAMPLES </A></A></H1> <P> <I>to-be-written</I> </P> <H1><A NAME="ERRORS"><A NAME="7">ERRORS </A></A></H1> <P> <B>CG_INVALID_PROFILE_ERROR</B> is generated if <B>param</B>'s profile is not a supported OpenGL profile. </P> <P> <B>CG_INVALID_PARAM_HANDLE_ERROR</B> is generated if <B>param</B> is not a valid parameter. </P> <P> <B>CG_INVALID_PARAMETER_ERROR</B> is generated if the parameter fails to set for any other reason. </P> <H1><A NAME="HISTORY"><A NAME="8">HISTORY </A></A></H1> <P> The <B>cgGLSetParameter</B> functions were introduced in Cg 1.1. </P> <H1><A NAME="SEE_ALSO"><A NAME="9">SEE ALSO </A></A></H1> <P> <A HREF="cgGLGetParameter.html">cgGLGetParameter</A>, <A HREF="cgGLSetParameterArray.html">cgGLSetParameterArray</A>, <A HREF="cgGLSetMatrixParameter.html">cgGLSetMatrixParameter</A>, <A HREF="cgGLSetMatrixParameterArray.html">cgGLSetMatrixParameterArray</A>, <A HREF="cgGLSetTextureParameter.html">cgGLSetTextureParameter</A>, <A HREF="cgGLBindProgram.html">cgGLBindProgram</A> </P> </BLOCKQUOTE> </BODY>