Commit Graph

511 Commits

Author SHA1 Message Date
Jason Green
27364e8454 d3d9: Add a visual test case for the D3DSAMP_SRGBTEXTURE sampler state. 2008-03-20 11:43:12 +01:00
Francois Gouget
8ffad44397 d3d9/tests: Fix compilation on systems that don't support nameless unions. 2008-03-10 19:12:54 +01:00
Jason Green
d0b8fd0a13 d3d9: Fix a few ok() comparisons to not always return true in the visual tests. 2008-03-07 11:13:47 +01:00
Stefan Dösinger
5f14acc0bf d3d9: Add a point size test. 2008-03-07 11:01:07 +01:00
Stefan Dösinger
8a3ef776f4 wined3d: gl_FragCoord isn't exact. 2008-03-07 11:01:07 +01:00
Stefan Dösinger
c00c89eb51 d3d9: Add a test for the vPos register.
The vPos register returns the unnormalised position of the current
fragment to the pixel shader. This test tests for its functionality in
both onscreen and offscreen render targets. On- and offscreen targets
are used because of the inverted y coordinate.
2008-03-07 11:01:07 +01:00
Stefan Dösinger
73ba896e8e d3d9: Add a test testing two texbem instructions in one shader. 2008-03-05 19:22:53 +01:00
Rob Shearman
48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Stefan Dösinger
b0269c9486 d3d9: Remove D3D9GetSWInfo. 2008-03-03 20:53:00 +01:00
Stefan Dösinger
086dd8178f d3d9: Reorder the spec file. 2008-03-03 20:52:55 +01:00
Stefan Dösinger
d7098076e1 d3d9: Implement Direct3DCreate9Ex + tests. 2008-03-03 20:50:29 +01:00
Stefan Dösinger
c1a0037b88 d3d9: IDirect3DDevice9Ex stub. 2008-03-03 20:48:50 +01:00
Stefan Dösinger
d9f9725993 d3d9: Add an IDirect3D9Ex stub. 2008-03-03 20:48:05 +01:00
Stefan Dösinger
aedb8873c0 d3d9: Fix an ok line. 2008-03-03 11:58:19 +01:00
James Hawkins
26ad93947b janitorial: Remove links to any microsoft site. 2008-03-01 12:04:09 +01:00
Jason Green
438fa44d43 d3d9: Add tests showing the D3DUSAGE_RENDERTARGET and D3DUSAGE_AUTOGENMIPMAP are mutually exlusive. 2008-02-29 10:54:53 +01:00
Roderick Colenbrander
4ac1b94d96 wined3d: Improved CheckDeviceType. 2008-02-27 14:52:25 +01:00
Stefan Dösinger
3ed963dc5d d3d9: Fix a ok line. 2008-02-25 12:37:04 +01:00
Stefan Dösinger
708e217506 d3d9: ATI drivers do not handle D3DUSAGE_QUERY_LEGACYBUMPMAP properly. 2008-02-25 12:36:30 +01:00
Stefan Dösinger
9850e4b529 d3d9: Add a non-shader reversed fog test. 2008-02-25 12:36:22 +01:00
Stefan Dösinger
22f379ccac d3d9: Some Windows drivers do not like reversed fog.
The fog test used start = 0.9 and end = 0.1. This is perfectly ok in
theory, but some Windows drivers do not like it. Since this test tests
how fog is calculated with Vertex and Pixel shaders put the fog range in
the normal order(start = 0.1, end = 0.9), this fixes a number of fog
failures on ATI cards on Windows.
2008-02-19 14:48:34 +01:00
Stefan Dösinger
1a906aace7 d3d9: Do not expect consistent failures.
The drivers for some radeon cards are not prepared for the things the
fixed function type test does and fail inconsistently. Thus skip the
color comparison if one of the two draws fails, and do not write an
extra complaint about the inconsistency
2008-02-19 14:48:20 +01:00
Stefan Dösinger
27dd3428d7 d3d9: Add a stencil+culling test. 2008-02-19 14:48:08 +01:00
Rob Shearman
dfda3c4dc8 d3d9: Fix copy and paste error in reset_enum_callback.
vertex_desc.Pool should obviously be used in the 
WINED3DRTYPE_VERTEXBUFFER case instead of index_desc.Pool.
2008-02-19 14:11:43 +01:00
Stefan Dösinger
c2d97b2329 wined3d: Add a test for fixed function bump mapping. 2008-02-18 13:34:25 +01:00
Francois Gouget
4c8e218252 Assorted spelling fixes. 2008-02-15 12:09:24 +01:00
Andrew Talbot
43ed6eae5a d3d9: Assign to struct instead of using memcpy. 2008-02-15 11:09:37 +01:00
Stefan Dösinger
9950cb4bf5 wined3d: Switch the visual tests back to D3DDEVTYPE_HAL. 2008-02-15 09:40:12 +01:00
Stefan Dösinger
81de2fa10a wined3d: Add a test for the vFace register. 2008-02-15 09:40:03 +01:00
Stefan Dösinger
ef4119029b d3d9: Implement the device lost state. 2008-02-07 13:05:37 +01:00
Stefan Dösinger
b322f81b75 wined3d: Reject unsupported modes when restting the device. 2008-02-07 13:05:27 +01:00
Stefan Dösinger
b6ecb56eef d3d9/tests: Accept the rejection of non-standard fixed function attrib types. 2008-02-05 12:41:48 +01:00
Stefan Dösinger
334e1600f2 d3d9/tests: Be less picky about X8L8V8U8 precision. 2008-02-05 12:41:39 +01:00
Stefan Dösinger
8daf8322ba wined3d: Some texture transform test corrections. 2008-02-05 12:38:06 +01:00
Stefan Dösinger
635daf8b5d wined3d: D3DTADDRESS_WRAP on conditional NP2 textures clamps to edge.
Conditional NP2 textures in Direct3D do not support D3DTADDRESS_WRAP
texture addressing. Similarly, GL_ARB_texture_rectangle textures do
not support GL_REPEAT. This patch adds a test which shows that _WRAP
clamps to the texture edge and implements that.
2008-02-05 12:37:49 +01:00
Stefan Dösinger
451d85a71c d3d9: Some drivers allow non-aligned offsets. 2008-02-05 12:33:28 +01:00
Gerald Pfeifer
450c634ab8 d3d9: Fix the type of three loop variables. 2008-02-04 11:11:20 +01:00
Marcus Meissner
fc49a338bb d3d9/tests: Initialize decl. 2008-01-23 12:05:32 +01:00
Jason Green
e11d7c63b4 d3d9 tests: Correct some typos. 2008-01-22 11:27:24 +01:00
Francois Gouget
44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Stefan Dösinger
80953d62d7 d3d9: Reject IDirect3DDevice9::Reset with active default pool resources. 2008-01-14 15:12:00 +01:00
Alexandre Julliard
980ee365a0 wined3d: Use unsigned int instead of size_t for element counts. 2008-01-07 17:17:04 +01:00
Gerald Pfeifer
0060027e4b d3d9: Fix type of loop variable. 2008-01-04 12:12:34 +01:00
Gerald Pfeifer
21a9c2d2f9 wined3d: Removed dead FIXME checks. 2008-01-03 11:53:29 +01:00
Gerald Pfeifer
a77249ad14 d3d9/tests: Simplify condition in test_vshader_input(). 2008-01-02 12:38:42 +01:00
Marcus Meissner
2cb3f982a6 d3d9: Initialize pVertexBuffer. 2007-12-27 14:13:30 +01:00
Stefan Dösinger
998426e6b7 d3d9: Accept D3DDEVTYPE_REF devices in the vertex declaration test. 2007-12-21 13:44:21 +01:00
Stefan Dösinger
47a8a6bd44 wined3d: Implement and test vertex fixups with per stream offsets. 2007-12-21 13:44:16 +01:00
Stefan Dösinger
e27cf6ff8f wined3d: Per stream offsets are 4 byte aligned. 2007-12-21 13:44:06 +01:00
Stefan Dösinger
8ff517eeb9 wined3d: Vertex attributes are 4 byte aligned. 2007-12-21 13:43:58 +01:00
Stefan Dösinger
a0b81e1c44 wined3d: Add a test for POSITIONT vertex fixups. 2007-12-21 13:15:09 +01:00
Stefan Dösinger
d8209b5de3 d3d9: Extend the fixed function vertex declaration test. 2007-12-21 13:14:49 +01:00
Stefan Dösinger
aaa0e5090a wined3d: Add a test for 16 bit floats. 2007-12-20 12:10:16 +01:00
Stefan Dösinger
2d90449500 wined3d: Fixed function vertex attribute types are flexible. 2007-12-20 10:49:42 +01:00
Francois Gouget
f1c27eda6b Assorted spelling fixes. 2007-12-18 14:16:11 +01:00
Stefan Dösinger
df77e28854 wined3d: Implement D3DFMT_G16R16. 2007-12-18 14:08:18 +01:00
Stefan Dösinger
de6aba11d4 d3d9: Add a note about a breakage in the refrast. 2007-12-18 13:22:27 +01:00
Stefan Dösinger
110facbac4 d3d9: Remove a few more incorrect D3DLOCK_DISCARDs. 2007-12-18 13:22:22 +01:00
Peter Beutner
b4a0d47809 d3d9: Add stub for Direct3DShaderValidatorCreate9(). 2007-12-18 12:32:56 +01:00
Stefan Dösinger
b9860a9b27 d3d9: Do not set NONE MIN and MAG filters. 2007-12-17 12:30:04 +01:00
Stefan Dösinger
297b88486e d3d9: D3DLOCK_DISCARD is not valid on managed textures. 2007-12-17 12:26:09 +01:00
Stefan Dösinger
b060390c73 d3d9: The refrast returns an error on invalid clear rects. 2007-12-17 12:26:01 +01:00
Francois Gouget
5f7a9cea38 Assorted spelling fixes. 2007-12-07 16:35:32 +01:00
Stefan Dösinger
f700cbe74b wined3d: Add an alpha blending test. 2007-12-07 16:26:43 +01:00
Stefan Dösinger
0e8c13e630 wined3d: A more detailed occlusion query test and fixes. 2007-12-07 15:27:11 +01:00
Alexandre Julliard
ad9396302d Removed some unneeded imports. 2007-12-06 21:24:24 +01:00
Stefan Dösinger
f4d2449244 wined3d: Test clearing regarding the scissor test and colorwrite. 2007-12-06 13:48:43 +01:00
Andrew Talbot
77c8a1594d d3d9: Remove unneeded casts. 2007-12-05 12:04:44 +01:00
Stefan Dösinger
fce9abd095 wined3d: Clear honors the viewport. 2007-12-04 14:32:39 +01:00
Stefan Dösinger
3cc253c557 wined3d: Enabling too many lights is silently ignored.
I'm resending this patch because my reply to Henri's concern came too late. 
Henri noted that I am enabling lights that do not exist. Existing tests show 
that if no light is assigned to the index, LightEnable creates a light with a 
set of default parameters, so the tests should be fine.

From 9ee4c61805b50886f79e87d744b52f27b7b00b4e Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan@codeweavers.com>
Date: Thu, 29 Nov 2007 13:22:47 +0100
Subject: [PATCH] WineD3D: Enabling too many lights is silently ignored

This patch adds tests for all d3d versions that show that Windows
pretends that enabling more lights than supported succeeds. D3D_OK is
returned, and the light is reported as enabled.

What is not tested in this patch is the rendering output of this
situation, thus the FIXME is still written.
2007-12-03 13:44:07 +01:00
Stefan Dösinger
0f39b29da0 wined3d: mov to a0.x does a floor(), not a round to nearest. 2007-12-03 13:43:54 +01:00
Stefan Dösinger
ba5c61ba20 wined3d: Fog is applied after sRGB correction. 2007-11-27 16:01:44 +01:00
Stefan Dösinger
02ebbd1fe5 d3d9: Add a test for vertex shader input matching. 2007-11-27 15:18:28 +01:00
Stefan Dösinger
22ac3704ba d3d9: Free the converted declaration data after creating the declaration. 2007-11-20 13:10:55 +01:00
Francois Gouget
5c3151b2e7 d3d9/tests: Fix the trailing '\n' in an ok() call. 2007-11-16 12:38:27 +01:00
Stefan Dösinger
e4f8a2da2b wined3d: Depth stencil fixes. 2007-11-14 11:58:36 +01:00
Stefan Dösinger
9f41a359b6 wined3d: Partially revert "Get rid of the conditionals in shader_glsl". 2007-11-14 11:58:22 +01:00
Stefan Dösinger
b4b10d8bc2 d3d9: Release the window after the visual tests. 2007-11-09 12:35:50 +01:00
Stefan Dösinger
4454096db2 d3d9: Be less picky in the D3DFMT_X8L8V8U8 test. 2007-11-08 12:18:30 +01:00
Stefan Dösinger
6209b36acb wined3d: mov to a0.x does a floor(), not a round to nearest. 2007-11-08 11:55:31 +01:00
Stefan Dösinger
d2c166bbb7 d3d9: Initialize the test rectangle correctly. 2007-11-07 12:08:40 +01:00
Stefan Dösinger
c390b6044b d3d9: Remove some spamy debug traces from the texture test. 2007-11-07 12:08:15 +01:00
Stefan Dösinger
50ea23efd6 d3d9: Use HAL devices in some tests. 2007-11-07 12:07:52 +01:00
Stefan Dösinger
5fc54b5459 wined3d: Shader Model 3.0 varying tests. 2007-11-07 12:03:04 +01:00
Stefan Dösinger
aa7f9f0a72 d3d9: Silence a FIXME. 2007-11-01 12:39:32 +01:00
Stefan Dösinger
393ed4a070 wined3d: Make resource memory 32 byte aligned. 2007-11-01 12:38:45 +01:00
Stefan Dösinger
a022e8b402 wined3d: Add a (nested) loop test. 2007-10-12 10:59:17 +02:00
H. Verbeet
3587dfeb48 d3d9: Release pixel shaders after we're done with them in the visual test. 2007-10-10 19:52:22 +02:00
Stefan Dösinger
6486a79e2a d3d9: Do not rely on CreateVertexShader failing. 2007-10-09 12:31:36 +02:00
Ulrich Czekalla
700c602eb6 d3d9: Fix crash in texture test. 2007-10-09 12:31:32 +02:00
Marcus Meissner
4a31362d53 d3d9/tests: Initialize shader to NULL. 2007-10-03 11:01:47 +02:00
Stefan Dösinger
4c51db896c wined3d: Check for NULL streams. 2007-09-20 15:53:19 +02:00
Stefan Dösinger
02114ac21f wined3d: The D3DSI_COISSUE flag changes the behavior of cnd. 2007-09-14 14:26:26 +02:00
Stefan Dösinger
c96236ff3e wined3d: Add a test for the cnd instruction. 2007-09-14 14:26:08 +02:00
Stefan Dösinger
7248354067 wined3d: Pixel shader 1.x constants are clamped to [-1;1]. 2007-09-14 14:23:45 +02:00
Stefan Dösinger
160258b637 wined3d: Implement mipmap auto generation. 2007-09-12 12:10:25 +02:00
Stefan Dösinger
41bf0d48db wined3d: Fix WINED3DFMT_X8L8V8U8. 2007-09-11 13:48:15 +02:00
Stefan Dösinger
422e0ba1cc wined3d: texkill ignores the .w only in ps 1.x. 2007-09-11 13:48:08 +02:00
Stefan Dösinger
a006d2568b wined3d: Fix texdepth instruction. 2007-09-11 13:47:49 +02:00
Stefan Dösinger
a305af0b30 wined3d: Fix the z range. 2007-09-11 13:47:36 +02:00
Stefan Dösinger
d0fdb1ea7e d3d: Add a test for double surface locking. 2007-08-31 11:25:19 +02:00
Francois Gouget
a116879507 Assorted spelling fixes. 2007-08-30 12:26:02 +02:00
Stefan Dösinger
4438b3be06 wined3d: Texture transform flag test. 2007-08-27 18:28:48 +02:00
Stefan Dösinger
cc563b9c69 d3d9: Return the correct return value in GetDepthStencilSurface. 2007-08-27 12:00:28 +02:00
Stefan Dösinger
04d62b4322 wined3d: fogstart == fogend means full fog. 2007-08-21 13:35:48 +02:00
Stefan Dösinger
01c6c982bb d3d9: Some caps fixes. 2007-08-21 13:35:35 +02:00
Stefan Dösinger
86b991c851 wined3d: Fix R32F and R16F. 2007-08-17 12:01:38 +02:00
Stefan Dösinger
b220905e4a wined3d: Reinstall the internal reference on the current index buffer. 2007-08-16 11:35:06 +02:00
Stefan Dösinger
a06e002e93 wined3d: Add a wined3d private WINED3DSBT_RECORDED. 2007-08-15 09:36:20 +02:00
Alexandre Julliard
427723cc37 d3d9: Comment out some failing fog tests. 2007-08-08 15:32:03 +02:00
Stefan Dösinger
2d15cb8b27 d3d: Add a simple offscreen rendering test. 2007-08-08 15:32:00 +02:00
Stefan Dösinger
dbd338c018 wined3d: WINED3DSAMP_MAXMIPLEVEL fixes. 2007-08-06 12:05:39 +02:00
Stefan Dösinger
9ae22f1a76 d3d9: Do not fail if d3d9 is not available. 2007-08-06 12:05:31 +02:00
Stefan Dösinger
39a8f1b2a4 d3d9: Deal with failing surface creation. 2007-08-06 12:04:58 +02:00
Stefan Dösinger
17fe57e212 d3d9: Check for volume texture support before running the volume test. 2007-08-03 12:30:58 +02:00
Stefan Dösinger
878414a5e6 d3d9: Some visual test fixes. 2007-08-03 12:30:52 +02:00
H. Verbeet
4194d784f8 d3d9: Trace the Format parameter to IDirect3DDevice9Impl_CreateTexture as hexadecimal. 2007-07-26 11:51:26 +02:00
Andrew Talbot
7a8455094d d3d9/tests: Fix use of uninitialized variable (Coverity). 2007-06-25 13:23:50 +02:00
Stefan Dösinger
e84158f510 d3d9: Hold the lock in VertexShader methods. 2007-06-25 11:35:40 +02:00
Stefan Dösinger
57acd1d9a6 d3d9: Hold the lock in VertexDeclaration methods. 2007-06-25 11:35:24 +02:00
Stefan Dösinger
d9583c6c58 d3d9: Hold the lock in Vertexbuffer methods. 2007-06-25 11:35:09 +02:00
Stefan Dösinger
99a3d76e8d d3d9: Hold the lock in Texture methods. 2007-06-25 11:34:58 +02:00
Stefan Dösinger
ef5e5300e3 d3d9: Hold the lock in swapchain methods. 2007-06-22 13:43:11 +02:00
Stefan Dösinger
35c5c4528f d3d9: Hold the lock in suface methods. 2007-06-22 13:43:05 +02:00
Stefan Dösinger
80f792f350 d3d9: Hold the lock in stateblock methods. 2007-06-19 12:34:15 +02:00
Stefan Dösinger
9570cd5be4 d3d9: Release the wined3d query when the d3d9 query is destroyed. 2007-06-19 12:34:03 +02:00
Stefan Dösinger
c0cc0f1062 d3d9: Hold the lock in query methods. 2007-06-19 12:33:56 +02:00
Stefan Dösinger
5194ce1972 d3d9: Hold the lock in Pixelshader functions. 2007-06-18 12:33:55 +02:00
Stefan Dösinger
896568f209 d3d9: Hold the lock in indexbuffer methods. 2007-06-18 12:33:55 +02:00
Stefan Dösinger
ea3076b0f7 d3d9: Hold the lock in cubetexture methods. 2007-06-18 12:33:55 +02:00
Stefan Dösinger
0820777983 d3d9: Hold the lock in methods implemented in device.c. 2007-06-18 12:33:54 +02:00
Stefan Dösinger
66821059b4 d3d9: Hold the lock in IDirect3D9 methods. 2007-06-18 12:33:54 +02:00
Stefan Dösinger
c4b801b7d1 d3d9: Add a dll global critical section. 2007-06-14 13:23:04 +02:00
Stefan Dösinger
078523f73e wined3d: Present does not clear the depth stencil. 2007-06-14 13:22:19 +02:00
H. Verbeet
6ee356fca0 wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead. 2007-06-07 11:20:48 +02:00
H. Verbeet
785771272a wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead. 2007-06-06 12:10:47 +02:00
H. Verbeet
b70bc73196 d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer. 2007-06-04 12:58:42 +02:00
Francois Gouget
e6196f9ae7 d3d9/tests: Fix the Visual C++ double to float conversion warnings. 2007-05-29 13:47:01 +02:00
Francois Gouget
fd578240f2 d3d9/tests: Fix compilation with Visual C++ 2005. 2007-05-29 12:12:41 +02:00
Francois Gouget
d476313a49 direct3d: Remove misspelled constants as they exist correctly spelled. 2007-05-21 12:38:54 +02:00
Stefan Dösinger
5c48d504fc wined3d: Destroying the resource frees all private data.
Also adds a test for ddraw, d3d8 and d3d9.
2007-05-11 11:22:31 +02:00
H. Verbeet
1316b7f5e4 d3d9: Add a surface locking test. 2007-05-04 13:41:21 +02:00
Stefan Dösinger
94b3fddec8 d3d: Pass the cube face to Create*Texture's surface creation callback. 2007-05-01 11:42:25 +02:00
Francois Gouget
5a8fc34033 Assorted spelling fixes. 2007-04-30 12:35:11 +02:00
Stefan Dösinger
460f71dcf8 d3d: Fix ProcessVertices.
IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
vertex buffer. The source for ProcessVertices is taken from the
stateblock, not the vertex declaration.
2007-04-26 14:54:29 +02:00
Fabian Bieler
71fe9ae7da d3d9/tests: Fix fog with shader test. 2007-04-23 13:55:35 +02:00
Stefan Dösinger
725f4bfeb1 d3d9: Rework the converted vertex declaration management.
Instead of creating a converted declaration each time SetFVF is
called, exactly one declaration is created for each FVF(on demand) and
stored for the lifetime of the device. This avoids memory leaks and
makes keeping track of converted declarations easier. Wether a
declaration is converted from a fvf or not is now a static information
inside the declaration. Those declarations are not destroyed in
VertexDeclaration::Release, they stay for the lifetime of the
device. This keeps us free from tracking the declaration through
stateblocks
2007-04-18 13:13:45 +02:00
Stefan Dösinger
7cee0b2ed0 d3d9: Do not allow Direct3D9::GetAdapterModeCount to be called with D3DFMT_UNKNOWN. 2007-04-17 11:21:13 +02:00
Stefan Dösinger
725057da47 d3d: Remove dependency on ddraw.h header. 2007-04-16 13:20:15 +02:00
Stefan Dösinger
8a5b6df483 d3d: Enumerate palettized formats for ddraw. 2007-04-16 12:12:34 +02:00