很多人使用Effect框架基本针对渲染功能,典型如:
technique11 meshTech
{
pass p0
{
SetVertexShader(CompileShader( vs_4_0,VS_DRAW() ) );
SetGeometryShader(NULL);
SetPixelShader(CompileShader( ps_4_0,PS_DRAW() ) );
SetRasterizerState(rsSolid);
SetDepthStencilState(EnableDepthWrite,0);
}
}
在Directx里面通过Apply,DrawIndexed等来调用。
void Mesh::DrawMesh(CModelViewerCamera* gCamera)
{
……
for(int i=0;i<techDesc.Passes;i++)
{
m_pfxMeshTech->GetPassByIndex(i)->Apply(0,m_pC......
阅读全文