Ошибка HLSL X3086: синтаксис 'compile' в стиле DX9 не рекомендуется в строгом режиме - PullRequest
3 голосов
/ 17 ноября 2010

Эй, я получаю эту ошибку:
ошибка X3086: синтаксис 'compile' в стиле DX9 устарел в строгом режиме
При компиляции эффекта DirectX с этим кодом:

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

IЯ уверен, что он жалуется на это:

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

Так что я должен использовать вместо компиляции?

1 Ответ

2 голосов
/ 19 ноября 2010

Попробуйте:

technique11 basic
{
    pass p0
    {
        SetVertexShader( CompileShader( vs_5_0, vsMain() ) );
        SetPixelShader( CompileShader( ps_5_0, psMain() ) );
    }
}
...