Name
cgD3D11GetIASignatureByPass - Gets the compiled vertex shader signature as a ID3DBlob
from a pass of a validated technique.
Synopsis
#include <Cg/cgD3D11.h>
ID3DBlob * cgD3D11GetIASignatureByPass( CGpass pass );
Parameters
- pass
-
The pass handle after validation of a CgFX technique.
Return Values
Returns a pointer to a ID3DBlob object containing the vertex shader signature.
Returns NULL if the program was not loaded.
Description
cgD3D11GetIASignatureByPass allows the user to get back the vertex shader signature
of a pass of a validated CgFX technique.
Examples
myCgEffect = cgCreateEffectFromFile( myCgContext, "effect.cgfx", NULL );
myCgTechnique = cgGetFirstTechnique( myCgEffect );
if( cgValidateTechnique( myCgTechnique ) != CG_FALSE )
{
const D3D11_INPUT_ELEMENT_DESC layout[] =
{
{ "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 },
};
CGpass myPass = cgGetFirstPass( myCgTechnique );
ID3DBlob * pVSBuf = cgD3D11GetIASignatureByPass( myPass );
hr = pDevice->CreateInputLayout( layout, 1, pVSBuf->GetBufferPointer(),
pVSBuf->GetBufferSize(), &g_pVertexLayout );
}
Errors
CG_INVALID_PASS_HANDLE_ERROR is generated if the pass is invalid.
History
cgD3D11GetIASignatureByPass was introduced in Cg 3.0.
See Also
cgD3D11GetCompiledProgram
|