Page 1 of 1

Master branch: Shader uses features not recognized by this D3D version

Posted: Mon Feb 20, 2017 6:54 pm
by Ernst Hot
I have compiled the master branch, however when running the various projects, the D3D11 debug layer reports:
D3D11 ERROR: ID3D11Device::CreateComputeShader: Shader uses features not recognized by this D3D version. [ STATE_CREATION ERROR #2097322: CREATECOMPUTESHADER_INVALIDSHADERBYTECODE] ... I think I saw somewhere that the problem was a lack of double precision support.

Is there an easy fix to avoid using features that my hardware does not support, maybe a config file somewhere I have missed?

I have tried using older pre-release version of Banshee3D, but the dependencies link for v0.4.0 is  broken and building v0.3.0 fails.

Re: Master branch: Shader uses features not recognized by this D3D version

Posted: Wed Feb 22, 2017 2:23 pm
by BearishSun
Hi. No shader uses double-precision so I don't believe that to be an issue. Can you provide information about your hardware, especially which GPU are you using?

Also, when the error triggers you can try going through the callstack to the "D3D11GpuProgram::loadFromMicrocode" method. It would be helpful if you could paste the contents of the "mProperties.mSource" variable from the object that function is called on, which can give me a better idea of exactly which shader is failing.

Try this dependencies link for 0.4: link

Until the issue is resolved, you can also try compiling using OpenGL or Vulkan by selecting it in CMake config.

Re: Master branch: Shader uses features not recognized by this D3D version

Posted: Sat Feb 25, 2017 5:07 pm
by BearishSun
The issue was probably linked to loads from unordered access views using formats supported only on DX11.3/DX12 hardware. I'm hoping the issue is now resolved on master. I wasn't able to reproduce it myself so I can't say with certainty.