Error HLSL X3086: la sintaxis de 'compilar' al estilo DX9 está en desuso en modo estricto

StackOverflow https://stackoverflow.com/questions/4200777

Pregunta

Oye, recibo este error:
Error X3086: la sintaxis de 'compilar' al estilo DX9 está en desuso en modo estricto
Al compilar un efecto DirectX con este código:

hr=D3DX11CompileFromFile( TEXT("shaders\\basic.fx"), NULL, NULL, NULL,"fx_5_0", D3DCOMPILE_ENABLE_STRICTNESS, 0, NULL, &pBlob, &pErrorBlob, NULL );

Estoy bastante seguro de que se está quejando de esto:

technique11 basic
{
 pass p0
 {
  VertexShader = compile vs_5_0 vsMain();
  PixelShader = compile ps_5_0 psMain();
 }
}

Entonces, ¿qué se supone que debo usar en lugar de compilar?

¿Fue útil?

Solución

Probar:

technique11 basic
{
    pass p0
    {
        SetVertexShader( CompileShader( vs_5_0, vsMain() ) );
        SetPixelShader( CompileShader( ps_5_0, psMain() ) );
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top