Cg Direct3D9 Runtime API cgD3D9GetVertexDeclaration(3)
NAME
cgD3D9GetVertexDeclaration - get the default vertex
declaration stream
SYNOPSIS
#include
CGbool cgD3D9GetVertexDeclaration( CGprogram program,
D3DVERTEXELEMENT9 decl[MAXD3DECLENGTH] );
PARAMETERS
program The program from which to retrieve the vertex
declaration.
decl A D3DVERTEXELEMENT9 array that will be filled with
the D3D9 vertex declaration.
RETURN VALUES
Returns CGTRUE on success.
Returns CGFALSE otherwise.
DESCRIPTION
cgD3D9GetVertexDeclaration retrieves the default vertex
declaration stream for a program. The declaration always
uses a tightly packed single stream. The stream is always
terminated with D3DECLEND(), so this can be used to
determine the actual length of the returned declaration.
The default vertex declaration is always a single stream.
There will be one D3DVERTEXELEMENT9 element for each varying
input parameter.
If you want to use a custom vertex declaration, you can test
that declaration for compatibility by calling
cgD3D9ValidateVertexDeclaration.
EXAMPLES
For example:
void main( in float4 pos : POSITION,
in float4 dif : COLOR0,
in float4 tex : TEXCORD0,
out float4 hpos : POSITION );
would have this default vertex declaration:
Cg Toolkit 2.1 Last change: 1
Cg Direct3D9 Runtime API cgD3D9GetVertexDeclaration(3)
const D3DVERTEXELEMENT9 decl[] = {
{ 0, 0, D3DECLTYPEFLOAT4, D3DECLMETHODEFAULT, D3DECLUSAGEPOSITION, 0 },
{ 0, 16, D3DECLTYPEFLOAT4, D3DECLMETHODEFAULT, D3DECLUSAGECOLOR, 0 },
{ 0, 32, D3DECLTYPEFLOAT4, D3DECLMETHODEFAULT, D3DECLUSAGETEXCORD, 0 },
D3DECLEND()
};
ERORS
CGINVALIDPROGRAMHANDLEROR is generated if program is
not a valid program handle.
HISTORY
cgD3D9GetVertexDeclaration was introduced in Cg 1.1.
SEE ALSO
cgD3D9ValidateVertexDeclaration
Cg Toolkit 2.1 Last change: 2
|