d3d9: Do not rely on CreateVertexShader failing.

This commit is contained in:
Stefan Dösinger 2007-10-06 16:57:20 +02:00 committed by Alexandre Julliard
parent 700c602eb6
commit 6486a79e2a
1 changed files with 7 additions and 3 deletions

View File

@ -1356,6 +1356,7 @@ static void z_range_test(IDirect3DDevice9 *device)
DWORD color; DWORD color;
IDirect3DVertexShader9 *shader; IDirect3DVertexShader9 *shader;
IDirect3DVertexDeclaration9 *decl; IDirect3DVertexDeclaration9 *decl;
D3DCAPS9 caps;
const DWORD shader_code[] = { const DWORD shader_code[] = {
0xfffe0101, /* vs_1_1 */ 0xfffe0101, /* vs_1_1 */
0x0000001f, 0x80000000, 0x900f0000, /* dcl_position v0 */ 0x0000001f, 0x80000000, 0x900f0000, /* dcl_position v0 */
@ -1453,12 +1454,15 @@ static void z_range_test(IDirect3DDevice9 *device)
ok(color == 0x00ffffff, "Z range failed: Got color 0x%08x, expected 0x00ffffff.\n", color); ok(color == 0x00ffffff, "Z range failed: Got color 0x%08x, expected 0x00ffffff.\n", color);
/* Test the shader path */ /* Test the shader path */
hr = IDirect3DDevice9_CreateVertexShader(device, shader_code, &shader); IDirect3DDevice9_GetDeviceCaps(device, &caps);
if(FAILED(hr)) { if (caps.VertexShaderVersion < D3DVS_VERSION(1, 1)) {
skip("Can't create test vertex shader, most likely shaders not supported\n"); skip("Vertex shaders not supported\n");
goto out; goto out;
} }
hr = IDirect3DDevice9_CreateVertexShader(device, shader_code, &shader);
ok(hr == D3D_OK, "IDirect3DDevice9_CreateVertexShader returned %s\n", DXGetErrorString9(hr));
hr = IDirect3DDevice9_CreateVertexDeclaration(device, decl_elements, &decl); hr = IDirect3DDevice9_CreateVertexDeclaration(device, decl_elements, &decl);
ok(hr == D3D_OK, "IDirect3DDevice9_CreateVertexDeclaration returned %s\n", DXGetErrorString9(hr));
hr = IDirect3DDevice9_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0xffffffff, 0.4, 0); hr = IDirect3DDevice9_Clear(device, 0, NULL, D3DCLEAR_TARGET, 0xffffffff, 0.4, 0);