Jump to content
Posted 02 June 2012 - 02:22 AM
Posted 02 June 2012 - 07:47 AM
Posted 02 June 2012 - 09:21 AM
Wow, this actually really surprises me - I would've assumed that D3D9 was limited to only using SM3!
For example, when I compile my shaders against Shader Model 4 or 5 (vs/ps_4_0 or 5_0) I can easily use them in my directX 9 game. This makes the compilation faster and lets me use new intrinsic functions like ddx_coarse/fine.
Posted 02 June 2012 - 11:54 AM
Posted 03 June 2012 - 10:52 AM
Posted 03 June 2012 - 12:54 PM
But what about running f.i. a SM4.0 shader on a D3D10 level GPU with a DX9 based engine? What he wrote sounded like he actually already did it.
Posted 03 June 2012 - 02:11 PM
Direct3D9: Shader Validator: X245: (Global Error) Version token 0x43425844 does not represent a vertex shader. D3D9 Helper: IDirect3DDevice9::CreateVertexShader failed: D3DERR_INVALIDCALL
Edited by MJP, 03 June 2012 - 02:12 PM.
Posted 03 June 2012 - 03:25 PM
Posted 03 June 2012 - 03:30 PM
Edited by Martins Mozeiko, 03 June 2012 - 03:31 PM.
Posted 03 June 2012 - 03:41 PM
d3dx...dll files is not the Direct3D runtime. They are helpers for compiling hlsl shader source to bytecode, or loading images into textures, and some other stuff.
Direct3D runtime is in d3d9.dll file (for DirectX 9), and in d3d10.dll or d3d11.dll (for DirectX 10 or 11).