Commit Graph

1236 Commits

Author SHA1 Message Date
Peter Urbanec 766e732fb3 d3d9/tests: Use primary monitor screen size to perform tests. 2011-02-11 17:40:39 +01:00
Stefan Dösinger eadae86c85 d3d9: Use a proper window class for the query test. 2011-02-07 10:05:00 -06:00
Henri Verbeet a5fe3610ad wined3d: Remove COM from the query implementation. 2011-02-04 15:25:32 +01:00
Henri Verbeet 5765632d9f wined3d: Remove COM from the vertex declaration. 2011-02-03 13:15:17 +01:00
Henri Verbeet 82a4373cd0 wined3d: Check if formats are supported as render target in srgbwrite_format_test().
Floating point formats in particular may not be supported everywhere.
2011-02-02 12:23:34 +01:00
Henri Verbeet 36d4268e3c wined3d: Remove COM from IWineD3D. 2011-02-02 12:22:42 +01:00
Henri Verbeet 0fb6005fa8 d3d9/tests: Check another return value in maxmip_test() (LLVM/Clang). 2011-02-02 12:21:20 +01:00
Stefan Dösinger af641eb4fd d3d9: Add an sRGB format test. 2011-02-01 12:04:35 +01:00
Stefan Dösinger 73c4fbcc51 d3d9: Work around an odd nvidia windows bug. 2011-02-01 12:03:24 +01:00
Stefan Dösinger d9591d69f4 d3d9: Use a proper window class in the device tests. 2011-02-01 12:03:03 +01:00
Henri Verbeet 4125fa62b9 d3d9/tests: Check ColorFill() return codes in color_fill_test() (LLVM/Clang). 2011-02-01 12:01:06 +01:00
Henri Verbeet 4b109ff1f8 wined3d: Remove COM from the stateblock. 2011-01-31 12:24:58 +01:00
Henri Verbeet 69ea0884ab d3d9: Check the correct swapchain in IDirect3DDevice9Impl_GetSwapChain() (LLVM/Clang). 2011-01-28 11:58:09 +01:00
Henri Verbeet 34bd603b9e d3d9/tests: Add a test for the NULL format. 2011-01-27 14:14:04 +01:00
Henri Verbeet 5c7c31fc87 d3d9: Remove some useless ERRs (LLVM/Clang). 2011-01-26 15:00:11 +01:00
Henri Verbeet 91ac0c37b1 wined3d: Disable vertex shader output clamping.
It looks like NV50+ hardware gets you infinities and NaN's in D3D as well for
most things, so we should only need special handling for pow and nrm.
2011-01-25 12:32:38 +01:00
Greg Geldorp 5c9ce61e9b d3d9/tests: Skip tests if not running in the foreground. 2011-01-12 14:56:25 +01:00
Henri Verbeet ac2afd08ae d3d9/tests: Don't draw undefined data in stream_test(). 2010-12-07 11:33:20 +01:00
Austin English b98c8ce556 d3d8/d3d9: Fix compiler warnings on non x86/x86_64. 2010-12-03 16:08:55 +01:00
Henri Verbeet 27b72fa847 d3d9/tests: Use GetRenderTargetData() for reading back pixels.
This is the recommended way to read back render targets. It's also much faster
on current wined3d, but that's mostly a side effect of imperfections in our
resource location management.
2010-11-23 13:15:29 +01:00
Henri Verbeet 4ea2d9f62f d3d9/tests: Add a test for 0 width / height surface creation. 2010-11-18 12:37:40 +01:00
Henri Verbeet 4f651808fc wined3d: Disallow empty surfaces. 2010-11-18 12:37:36 +01:00
Henri Verbeet 10ccba52e7 d3d9/tests: Fix some failure messages. 2010-11-17 14:01:14 +01:00
Henri Verbeet 06581b4513 d3d9: Fix some return values. 2010-11-16 13:48:51 +01:00
André Hentschel ce0e1f07dc d3d9: Improve CheckDeviceState stub to run Firefox 4 Beta 7. 2010-11-12 11:56:41 +01:00
Henri Verbeet 6ae987ea98 d3d9/tests: Specify width and height when changing the display orientation.
This appears to be required on Windows 7, or perhaps depends on the video
driver.
2010-11-09 14:20:37 +01:00
Henri Verbeet 7e3985e1fe ddraw: Setup the device window in SetCooperativeLevel(). 2010-11-08 13:30:54 +01:00
Henri Verbeet feaf81f60d wined3d: Use SetWindowPos() to make the focus window active. 2010-11-05 17:15:37 +01:00
Henri Verbeet e279fa2afd d3d9/tests: Add a test for INTZ. 2010-11-05 17:15:37 +01:00
Henri Verbeet 41a76b958d d3d9: Add some missing locking to IDirect3DDevice9Impl_EndStateBlock().
Found by Michael Stefaniuc & Coccinelle.
2010-11-04 12:12:56 +01:00
Henri Verbeet 14b063a14f d3d9/tests: Check for multiple expected messages in test_wndproc(). 2010-11-04 12:12:51 +01:00
Henri Verbeet c287ed2232 d3d9: Use more reasonable return values for unimplemented functions. 2010-10-27 12:12:04 +02:00
Henri Verbeet cd957f5b64 d3d9: Partially implement IDirect3D9Ex::CreateDeviceEx(). 2010-10-27 12:12:00 +02:00
Henri Verbeet 6dd9109358 wined3d: Pass a sub-resource index instead of a face + miplevel to cube texture methods. 2010-10-25 14:29:31 +02:00
Henri Verbeet 70f4e66f84 wined3d: IWineD3DBuffer_Unmap() can't fail. 2010-10-15 16:19:54 +02:00
Henri Verbeet 95469309d6 wined3d: Consistently use Map/Unmap for mapping resources. 2010-10-14 17:54:52 +02:00
Austin Lund 47d2a00a28 d3d9/tests: Fix test failure for IDirect3D9::CreateDevice in test_set_stream_source. 2010-10-07 17:42:13 +02:00
Henri Verbeet 9b42e7f7e3 d3d9/tests: Add window proc tests for switching between fullscreen and windowed. 2010-10-06 14:42:12 +02:00
Alexandre Julliard c1b1b6f184 d3d9/tests: Make some variables static. 2010-10-01 13:36:20 +02:00
Henri Verbeet d911622722 d3d9/tests: Cleanup maxmip_test() a bit.
Having the failure message match the actual draw call in particular makes
debugging failures a lot nicer.
2010-09-21 14:16:54 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Ričardas Barkauskas b099eeb8c4 d3d9/tests: Test NVDB (depth bounds test) behavior. 2010-09-16 10:12:39 -05:00
Rico Schüller e6d52c0c8b wined3d: Add argument check for Type to Get/SetTextureStageState(). 2010-09-14 13:32:00 -05:00
Henri Verbeet fd7c1cbf05 wined3d: IWineD3DBuffer_GetDesc() should never fail. 2010-09-14 09:43:22 -05:00
Henri Verbeet 955858e97d wined3d: IWineD3DVolume_GetDesc() should never fail. 2010-09-08 13:31:49 +02:00
Henri Verbeet 53183b4cf3 wined3d: IWineD3DSurface_GetDesc() should never fail. 2010-09-08 13:31:43 +02:00
Henri Verbeet 07b5c4becf wined3d: Getting the current pixel shader should never fail. 2010-09-07 11:23:31 +02:00
Henri Verbeet 0c54dfe7ba wined3d: Getting the current vertex shader should never fail. 2010-09-07 11:23:27 +02:00
Henri Verbeet 1549180daa d3d9: Merge vertex and index buffer implementations into a single file. 2010-09-02 11:50:52 +02:00
Henri Verbeet c35b85a78d d3d9: Merge vertex and pixel shader implementations into a single file. 2010-09-02 11:50:28 +02:00
Henri Verbeet 2465b4cf01 d3d9: Move device functions to device.c. 2010-09-01 14:01:02 +02:00
Henri Verbeet 6c4c351791 wined3d: Don't require wined3d object parents to be COM objects. 2010-09-01 14:01:02 +02:00
Henri Verbeet 7c675b522a wined3d: Queries don't need parents. 2010-09-01 12:40:08 +02:00
Henri Verbeet 2ef400901d wined3d: Devices don't need parents. 2010-09-01 12:40:07 +02:00
Henri Verbeet c568916f9e wined3d: Implicit depth/stencil surfaces don't have a container.
They're owned by the device instead of the swapchain.
2010-08-31 14:23:47 +02:00
Henri Verbeet 4005eb2a18 wined3d: Get rid of WINED3DRECT. 2010-08-31 14:23:47 +02:00
Francois Gouget 45ea56ffb4 d3d9/tests: Fix compilation on systems that don't support nameless unions or structs. 2010-08-30 11:26:46 +02:00
Austin English 243771deb1 d3d8/d3d9: Fix a compiler warning on non-i386/x86_64. 2010-08-24 12:25:14 +02:00
Henri Verbeet cc5271d1b7 wined3d: Rename WINED3DFORMAT to wined3d_format_id. 2010-08-24 12:25:01 +02:00
Henri Verbeet 0df144164b wined3d: Pass floating point colors to IWineD3DDeviceImpl_ColorFill(). 2010-08-24 12:24:43 +02:00
Henri Verbeet bb201bb510 d3d9/tests: Read from the appropriate pixels in test_constant_clamp_vs(). 2010-07-30 11:36:03 +02:00
Henri Verbeet 3ad82a82bb wined3d: The stateblock doesn't have a parent. 2010-07-30 11:36:03 +02:00
Henri Verbeet 7b3d200ab3 d3d9/tests: Fix an ok() message in pointsize_test(). 2010-07-29 17:33:35 +02:00
Henri Verbeet da0582a624 d3d9/tests: Add a test for handling floating point specials in shaders. 2010-07-29 17:33:35 +02:00
Louis Lenders 5a05950271 d3d9/tests: Test GetAdapterDisplayModeEx with D3DDISPLAYROTATION null-pointer. 2010-07-26 18:38:33 +02:00
Stefan Dösinger a554d1e296 d3d9: Remove the shader version varying tests.
My Windows 7 installation rejects mixing ps_3_0 with anything other than
vs_3_0 and vice versa, making testing how those versions pass varyings
moot. Since I have never seen an app mixing 3.0 and non-3.0 shaders I
see no reason to keep the tests.
2010-07-26 18:38:32 +02:00
Henri Verbeet 0b630e1430 d3d9/tests: Add a test for clearing render targets in an MRT. 2010-07-23 11:46:51 +02:00
Henri Verbeet 74015090ae d3d9/tests: Introduce a vertex shader to the MRT test. 2010-07-23 11:46:41 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Stefan Dösinger 8284f70de8 d3d9: Use a vertex shader in the vpos test. 2010-07-21 13:23:59 +02:00
Stefan Dösinger bb3fb05c38 d3d9: Use a vertex shader in the vFace test. 2010-07-21 13:23:59 +02:00
Stefan Dösinger ba0a5ed104 d3d9: Use a vertex shader for the nested loop test.
Win7 (or newer Nvidia drivers) don't allow ps_3_0 fragment processing without
vertex shaders. This is interesting on its own, but not part of this test.
2010-07-21 13:23:59 +02:00
Stefan Dösinger e534e2e2ac d3d9: Win7+Nvidia returns c2 in COISSUE'd CND. 2010-07-21 13:23:59 +02:00
Stefan Dösinger 24adf40ee1 d3d9: Remove the fog vs sRGB test. 2010-07-21 13:23:59 +02:00
Alexandre Julliard cbc6ef9e91 d3d9/tests: Avoid sizeof in a trace. 2010-07-21 13:23:58 +02:00
Louis Lenders 277fdc6b33 d3d9: Add a few tests for GetAdapterDisplayModeEx. 2010-07-09 16:01:12 +02:00
Stefan Dösinger 0190b6cb90 d3d9: Use color_match in the coissue tests. 2010-07-06 19:28:27 +02:00
Stefan Dösinger b50a008549 d3d9: Windows7 doesn't draw with Viewports bigger than the framebuffer.
This is my Geforce 9600 setup here, the failure doesn't occur on all
windows 7 systems. I don't think we can change wined3d's behavior as a
number of games are broken on my Windows installation because they do
not like the extra parameter validation.
2010-07-06 19:28:27 +02:00
Stefan Dösinger cb4ba6a862 d3d9: Ignore a Windows 7 failure in the d3d9 depth clamp test. 2010-07-06 19:28:27 +02:00
Stefan Dösinger dd6cabcc1e d3d9: Pass count=0 when clearing the whole surface. 2010-07-05 12:59:46 +02:00
Stefan Dösinger 218b9cec6f d3d9: Nvidia drivers don't like unused output formats.
Newer nvidia drivers return garbage when using a COUNTx where x is bigger
than the amount of coordinates the texture can consume. So stick to COUNT3 for
volume textures. The tests don't need COUNT4 anyway.
2010-07-05 12:59:46 +02:00
Alexandre Julliard d0f60b05d1 d3d9/tests: Fix some test failures with the focus messages. 2010-07-02 13:45:29 +02:00
Henri Verbeet 95aaaf2f12 d3d9/tests: Add a test for offscreen point sprites. 2010-06-11 16:22:30 +02:00
Henri Verbeet c3cda92cf4 d3d9/tests: Remove an invalid point size test.
This test tests point size clamping behaviour when POINTSIZE_MAX <
POINTSIZE_MIN, but that behaviour isn't consistent between D3D drivers.
2010-05-28 16:22:26 +02:00
Henri Verbeet 1c12ba44a7 d3d9/test: Introduce point_match() to simplify testing point sizes. 2010-05-28 16:22:26 +02:00
Henri Verbeet 8c92f805f6 d3d9/tests: Don't depend so much on point rasterization rules in pointsize_test().
We can create a separate test for point rasterization if we really care about
that, but I doubt we do.
2010-05-28 16:22:26 +02:00
Henri Verbeet 2210b9a6ac d3d9/tests: Fix a typo. 2010-05-27 14:46:43 +02:00
Henri Verbeet e6611e22fb d3d9: Set the FPU control word on device creation. 2010-05-26 17:36:32 +02:00
Henri Verbeet 123bfa20f5 d3d9/tests: Add a shadow sampler test. 2010-05-17 13:20:03 +02:00
Henri Verbeet 3ab491f810 d3d9/tests: Allow D3DFMT_A2R10G10B10 as supported adapter mode.
This is in the list of allowed formats in the documentation, and some drivers
report this on Windows.
2010-05-04 13:14:59 +02:00
Henri Verbeet 2661e9abf7 d3d9/tests: Fix test_cube_wrap() for different texture filtering schemes. 2010-05-03 13:50:37 +02:00
Gerald Pfeifer f2d7cbc90c d3d9: Remove variable hr which is not really used from resource_test_cleanup. 2010-04-26 06:59:57 -05:00
Roderick Colenbrander 67f43418d0 d3d9: Add an initial ColorFill regression test. 2010-04-14 18:00:47 +02:00
Henri Verbeet 6ecdad06a3 d3d9/tests: Add some depth buffer tests. 2010-04-12 11:33:20 +02:00
Paul Vriens cc20a0da59 d3d9/tests: Initialize a variable (Coverity). 2010-03-31 16:12:32 +02:00
Roderick Colenbrander 342c6c6de5 d3d9: Add source/destination and backbuffer tests for StretchRect. 2010-03-30 13:55:28 +02:00
Henri Verbeet ab4bf7600a d3d9/tests: Add some message processing to test_wndproc().
For some reason Windows XP allows device creation to be blocked by the lack of
message processing in wndproc_thread(). Thanks to Wylda for helping debug
this. Disabled testing the focus and foreground windows after creating the
device for the moment.
2010-03-25 10:02:11 +01:00
Paul Vriens a0da7b6d3b d3d9/tests: Fix timeouts on Win9x/WinMe. 2010-03-19 12:26:37 +01:00
Henri Verbeet 914c8cb8ea ddraw: Acquire/release the focus window from the correct location. 2010-03-18 10:24:15 +01:00
Henri Verbeet a62e5a4678 d3d9/tests: Extend the window proc / focus window tests. 2010-03-18 10:23:58 +01:00
Stefan Dösinger 48d6167c29 d3d9: Remove old debug messages from the tests. 2010-03-17 16:10:15 +01:00
Stefan Dösinger f5b5f7176a d3d9: Windows 7 rejects invalid rectangles. 2010-03-17 16:09:55 +01:00
Stefan Dösinger 25c6dbfc2a d3d9: Remove the double unlock test. 2010-03-17 16:09:16 +01:00
Stefan Dösinger d790530df3 wined3d: Make resources 16 byte aligned. 2010-03-17 13:36:39 +01:00
Stefan Dösinger eb355ece4a d3d9: Fix test failures on Windows 7. 2010-03-16 17:02:23 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Ričardas Barkauskas 1e754f5e2e d3d9/tests: Test ATI2N pitch and locking offset behaviour. 2010-03-16 13:03:35 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Stefan Dösinger bb035638d0 d3d: Make sure vertexbuffer lock doesn't return a NULL pointer. 2010-02-09 11:33:53 +01:00
Stefan Dösinger 8912b372ed d3d9: Move the vertex buffer alignment test into buffer.c. 2010-02-02 14:10:11 +01:00
Stefan Dösinger 1d486a5abe d3d9: Test buffer lock flags. 2010-02-02 14:09:57 +01:00
Henri Verbeet 69861cf873 wined3d: Get rid of the depth range hack. 2010-01-27 11:16:07 +01:00
Henri Verbeet 983f96b82f d3d9: Add depth clamp tests. 2010-01-27 11:15:49 +01:00
Henri Verbeet 7f8ccf0342 d3d9: Add a separate function for stateblock initialization. 2010-01-20 15:32:15 +01:00
Henri Verbeet bfb63a8634 d3d9: Add a separate function for query initialization. 2010-01-18 14:37:21 +01:00
Paul Vriens e0405286bc d3d9/tests: Correct the size of a memcmp. 2010-01-11 11:35:28 -06:00
Paul Vriens e38e54e3f4 d3d9/tests: Fix size parameter for memcmp (Coccinelle). 2010-01-08 10:14:01 +01:00
Henri Verbeet 67cba48782 wined3d: The FVF parameter to IWineD3DDeviceImpl_CreateVertexBuffer() is unused now. 2009-12-30 13:31:20 +01:00
Henri Verbeet d992e77b9c d3d9/tests: Add message tests for windowed devices. 2009-12-29 11:05:52 +01:00
Stefan Dösinger d6b9732497 wined3d: Remove the d3d7 do-not-convert code. 2009-12-29 11:03:36 +01:00
Henri Verbeet a96aa28d98 d3d9/tests: Add some tests for focus behaviour. 2009-12-23 14:27:29 +01:00
Henri Verbeet f262cf7603 d3d9/tests: A volume really isn't a resource, despite having all the methods. 2009-12-22 13:48:25 +01:00
Henri Verbeet 76804fa711 d3d9: Add a separate function for swapchain initialization. 2009-12-21 15:01:25 +01:00
Henri Verbeet 79a2045395 wined3d: NULL vertex declarations are captured, but not applied. 2009-12-21 15:01:22 +01:00
Henri Verbeet bd46ccc38e d3d9: Add a test to show D3D replaces the window proc. 2009-12-15 11:44:09 +01:00
Henri Verbeet c2cf193563 d3d9: Forward the volume's GetDevice() to the texture instead of the wined3d volume. 2009-12-09 13:50:56 +01:00
Alexandre Julliard 506a62776c d3d9/tests: Fix some pointer cast warnings on 64-bit. 2009-12-09 12:04:27 +01:00
Henri Verbeet 89c96ca31e d3d9: Fix GetDevice() for surfaces that are part of a texture.
If the surface is part of a texture it doesn't keep its own reference to the
device, but instead relies on the reference the texture has. This fixes a
regression introduced by ff92e6eb6a.
2009-12-07 14:34:08 +01:00
Henri Verbeet ff92e6eb6a d3d9: Simplify GetDevice(). 2009-12-04 14:34:59 +01:00
Huw Davies 14b343fcd0 d3d9/tests: Destroy the window after we release the device.
Although either order is supposed to work, the former crashes with Wine.
2009-12-03 15:26:52 +01:00
Henri Verbeet b644d11333 d3d9/tests: Add a small test for IDirect3D9Ex::GetAdapterLUID(). 2009-12-02 13:06:08 +01:00
Henri Verbeet ed73f0a1b0 d3d9: Implement IDirect3D9Ex::GetAdapterLUID(). 2009-12-02 13:06:08 +01:00
Henri Verbeet bdad5ace2a d3d9/tests: Trace the viewport in clear_test().
There are some failures in this test on Win7 that appear to be related to the
initial viewport. Perhaps this trace will help narrow it down.
2009-12-01 13:16:22 +01:00
Henri Verbeet 55f3c576d9 wined3d: Remove the effetively unused "state" field from the device. 2009-11-18 11:16:54 +01:00
Henri Verbeet 434a23d90d d3d9: Move D3D9CB_DestroySwapChain() to device.c. 2009-11-18 11:16:35 +01:00
Henri Verbeet b9243b721a d3d9: Add a separate function for device initialization. 2009-11-18 11:16:31 +01:00
Stefan Dösinger 7f961c0796 d3d9: Abort the x8l8v8u8 test if the format is not supported. 2009-11-12 15:18:09 +01:00
Henri Verbeet 5f8e6cb5e0 d3d9/tests: Don't require dynamic usage for textures in the stateblock tests. 2009-11-12 13:13:37 +01:00
Louis Lenders cdb2ccd2d8 d3d9: Quiet a few noisy fixme's. 2009-11-09 20:00:29 +01:00
Stefan Dösinger b49a9cbfd2 d3d9: Run the visual tests in a window. 2009-11-09 19:59:33 +01:00
Stefan Dösinger 69612bb241 d3d9: Make the visual test read the backbuffer. 2009-11-09 19:59:29 +01:00
Stefan Dösinger 63326b1925 wined3d: Add a usage flag for vertex buffer optimization. 2009-11-03 21:21:48 +01:00
Stefan Dösinger 90e443758a wined3d: Add a parameter for SetRenderTarget viewport setup. 2009-11-03 21:21:30 +01:00
Henri Verbeet bf10dbe8a6 wined3d: Map D3DFMT_D24S8 to WINED3DFMT_D24_UNORM_S8_UINT.
The internal order of the depth and stencil bits is unspecified since the
format isn't lockable.
2009-10-30 11:28:52 +01:00
Henri Verbeet fff8b09fb4 d3d9/tests: Release the IDirect3D9Ex interface in test_qi_ex_to_base(). 2009-10-23 12:03:08 +02:00
Henri Verbeet 66961840a5 d3d9: Free "elements" in a vertexdeclaration_init() error path (Valgrind). 2009-10-22 10:46:25 +02:00
Louis Lenders 786271e1a1 d3d9/tests: Test {IDirect3DTexture9, IDirect3DSurface9}::UnlockRect for rectangles that are not locked. 2009-10-20 15:00:40 +02:00
Henri Verbeet 4dbf1c4900 d3d9: Add traces. 2009-10-20 14:00:36 +02:00
Henri Verbeet d17cd37d3b d3d9/tests: Remove an unused color result. 2009-10-19 11:45:30 +02:00
Henri Verbeet 44aead2e1c d3d9: Fix some IDirect3DDevice9Ex methods. 2009-10-19 11:45:25 +02:00
Henri Verbeet 023446f109 d3d9/tests: Check some more return values (LLVM/Clang). 2009-10-16 13:37:12 +02:00
James Helferty 2b5ff09160 d3d9/tests: Fix position of EndScene in visual test. 2009-10-15 12:06:17 +02:00
Stefan Dösinger e80144c403 d3d: Make EndScene calls hookable. 2009-10-14 12:21:06 +02:00
Stefan Dösinger dcacd83a82 d3d9: Make some functions hookable. 2009-10-14 12:21:06 +02:00
Henri Verbeet aa96a4559e d3d9: Add some stateblock tests for device resources. 2009-10-13 11:38:28 +02:00
Henri Verbeet 803eab27c7 d3d9: Cleanup the stateblock test callbacks a bit. 2009-10-12 12:36:05 +02:00
Henri Verbeet 8f91327b89 d3d9: Only run the vertex/pixel shader constant apply tests when the implementation supports them. 2009-10-12 12:35:47 +02:00
Henri Verbeet de45a38003 d3d9: Add tests for D3DSBT_PIXELSTATE stateblocks. 2009-10-09 11:50:30 +02:00
Henri Verbeet 489264d495 d3d9: Add tests for D3DSBT_VERTEXSTATE stateblocks. 2009-10-09 11:50:30 +02:00
Henri Verbeet 50e1106eca d3d9: Add some tests for CreateStateBlock(). 2009-10-08 13:53:59 +02:00
Henri Verbeet dfe07023c4 d3d9: Don't test D3DRS_DEBUGMONITORTOKEN in the stateblock tests. 2009-10-08 13:53:39 +02:00
Henri Verbeet ffcfbc2aeb d3d8: Rename abort_stateblock() to release_stateblock() in the stateblock tests. 2009-10-08 13:53:24 +02:00
Stefan Dösinger fcd0bc8f54 d3d9: Reduce the YUV test precision. 2009-10-08 12:03:20 +02:00
Henri Verbeet 3cb7e87284 d3d9: Use separate fields for data to check/apply in the stateblock tests. 2009-10-07 12:24:21 +02:00
Henri Verbeet 063d3d181b d3d9: Get rid of the unused "return_data_buffer" in the stateblock tests. 2009-10-07 12:24:09 +02:00
Henri Verbeet 7d0d8c0245 d3d9: Make the individual stateblock tests responsible for checking data. 2009-10-06 12:02:41 +02:00
Henri Verbeet 54e28991fc d3d9: Always pass "struct event_data" to "event_fn" in the stateblock tests. 2009-10-05 13:46:01 +02:00
Henri Verbeet 9f4f29fd03 d3d9: Remove useless typedefs from the stateblock tests. 2009-10-05 13:46:01 +02:00
Henri Verbeet 3caba01ec9 d3d9: Remove D3D9_RENDER_STATES from the stateblock tests. 2009-10-05 13:46:01 +02:00
Stefan Dösinger eda00d97ad d3d9: Test viewports that are bigger than the surface. 2009-10-02 15:06:38 +02:00
Stefan Dösinger dc45657f2c wined3d: Fix vs_2_0 sgn.
vs_2_0's sgn has two extra parameters - temporary registers for the
instruction. This patch fixes the crash of the d3d9:visual test on windows and
properly handles the vs_2_0 version of sgn.
2009-10-02 12:36:59 +02:00
Stefan Dösinger 0c70291c2c wined3d: Fix a contradicting comment.
The test was adopted from the ddraw test, where GetPrivateData does not
addref. The test code was adjusted, the comment apparently not.
2009-10-01 13:47:53 +02:00
Allan Tong 5d56eddb7c d3d9: Don't release the parent device before destroying its children.
Releasing the device earlier may cause the underlying wineD3D device
to be freed before the child object has had a chance to clean up.
2009-09-29 12:05:47 +02:00
Henri Verbeet 47c84f4f7f wined3d: Use the DXGI naming convention for all formats. 2009-09-25 15:15:44 +02:00
Henri Verbeet c64da00de7 wined3d: Rename IWineD3DDevice::GetIndices() to IWineD3DDevice::GetIndexBuffer(). 2009-09-25 15:14:52 +02:00
Henri Verbeet 60e32659a7 wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer(). 2009-09-25 15:14:44 +02:00
Henri Verbeet 789372afa8 wined3d: Don't free D3D pixel shaders until the wined3d pixel shader is destroyed. 2009-09-24 13:24:53 +02:00
Henri Verbeet 7f1c802b9f d3d9: Add a separate function for pixel shader initialization. 2009-09-24 13:24:40 +02:00
Henri Verbeet ca05ef5dd0 wined3d: Don't free D3D vertex shaders until the wined3d vertex shader is destroyed. 2009-09-24 13:24:19 +02:00
Henri Verbeet cdb741274a d3d9: Add a separate function for vertex shader initialization. 2009-09-24 13:24:04 +02:00
Henri Verbeet 66a7236590 wined3d: Don't free D3D vertex declarations until the wined3d vertex declaration is destroyed. 2009-09-23 12:36:28 +02:00
Henri Verbeet 0241fefa94 d3d9: Add a separate function for vertex declaration initialization. 2009-09-23 12:35:00 +02:00
James Helferty 6fa09d1d22 d3d9: Fix some typos in visual test. 2009-09-22 20:19:58 +02:00
Henri Verbeet 85ab52a48d d3d9: Properly destroy vertex declarations. 2009-09-22 16:17:37 +02:00
Henri Verbeet 359acf2461 d3d9: Limit "NumSimultaneousRTs" to 4. 2009-09-22 16:17:30 +02:00
Henri Verbeet 93b0600829 wined3d: Don't free D3D buffers until the wined3d buffer is destroyed. 2009-09-18 08:55:25 -05:00
Henri Verbeet de9b47924d d3d9: Add a separate function for vertex buffer initialization. 2009-09-18 08:55:05 -05:00
Henri Verbeet 5ec05c556d d3d9: Add a separate function for index buffer initialization. 2009-09-18 08:55:00 -05:00
Henri Verbeet a8e8f763bf wined3d: Don't free D3D textures until the wined3d texture is destroyed. 2009-09-18 08:54:34 -05:00
Henri Verbeet 75f005ebf9 d3d9: Add a separate function for texture initialization. 2009-09-17 10:10:10 -05:00
Henri Verbeet de3bd86fb6 wined3d: Don't free D3D cube textures until the wined3d cube texture is destroyed. 2009-09-17 10:09:44 -05:00
Henri Verbeet c51fbe9293 d3d9: Add a separate function for cube texture initialization. 2009-09-17 10:09:28 -05:00
Henri Verbeet a286646f51 wined3d: Don't free D3D volume textures until the wined3d volume texture is destroyed. 2009-09-16 13:06:06 -05:00
Henri Verbeet 5b7b4f59d2 d3d9: Add a separate function for volume texture initialization. 2009-09-16 13:05:51 -05:00
Henri Verbeet b1ede91bfc d3d9: Mark internal symbols hidden. 2009-09-16 13:05:34 -05:00
Henri Verbeet e9000d2e6c wined3d: Don't free D3D volumes until the wined3d volume is destroyed. 2009-09-16 13:05:20 -05:00
Henri Verbeet 8ffca99fb0 d3d9: Add a separate function for volume initialization. 2009-09-16 13:04:57 -05:00
Henri Verbeet a5214c306f wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Henri Verbeet 52e45865bd d3d9: Add a separate function for surface initialization. 2009-09-15 14:32:23 -05:00
Henri Verbeet 2b2fc827ce wined3d: Remove unused parameters to drawPrimitive(). 2009-09-11 12:09:14 +02:00
Stefan Dösinger e1469961d4 wined3d: Test and fix ddraw and d3d9 GetDC differences.
The MSDN is not totally correct: A8R8G8B8 and A1R5G5B5 also allow GetDC. The
main differences that have to be filtered out in d3d9.dll are GetDC on
A8B8G8R8, X8B8G8R8 and P8.
2009-09-08 13:04:52 +02:00
Stefan Dösinger 9281bdb478 wined3d: SetLOD is ignored on D3DPOOL_DEFAULT textures.
I am not testing SYSTEMMEM and SCRATCH textures. SCRATCH textures
cannot be created, SYSTEMMEM ones cannot be used for texturing on
Windows.
2009-08-31 12:18:56 +02:00
Stefan Dösinger edf1c50b54 wined3d: Handle per-texture max LOD level.
GL_TEXTURE_BASE_LEVEL matches the basetexture::SetLOD functionality.
D3DSAMP_MAXMIPLEVEL essentially does the same as SetLOD. The test included in
this patch shows that the smallest mipmap level is used.
2009-08-31 12:18:41 +02:00
Henri Verbeet e7d14d02d0 d3d9: Remove trailing spaces. 2009-08-28 11:54:50 +02:00
Henri Verbeet 5f9f079d71 d3d9: Use the wined3d cs for wined3d locking. 2009-08-26 12:11:41 +02:00
Henri Verbeet ada3e059e8 d3d9: Remove stray tabs. 2009-08-26 12:10:49 +02:00
Jörg Höhle f2a4c6eeab d3d9/tests: SetAutoGenFilterType tests. 2009-08-20 17:39:45 +02:00
Henri Verbeet ffb38da024 wined3d: Try to force a top-left filling convention. 2009-08-19 14:45:09 +02:00
Jörg Höhle ba87299402 d3d9/tests: Detect empty graphics driver name. 2009-08-14 11:26:44 +02:00
Henri Verbeet 3b06fc92f4 wined3d: Use EXT_provoking_vertex to match Direct3D's provoking vertex convention. 2009-08-10 13:52:50 +02:00
Stefan Dösinger 296573caae d3d: Filter R8G8B8 in d3d8 and d3d9. 2009-08-07 14:56:40 +02:00
Henri Verbeet 3115f3357f d3d9/tests: Use color_match() in a few more places. 2009-07-10 12:13:32 +02:00
Henri Verbeet 699f68cdee wined3d: Get rid of some pointers in WINED3DADAPTER_IDENTIFIER.
This also avoids some unchecked strcpy() calls.
2009-07-07 11:50:30 +02:00
Paul Vriens f96e210ed7 d3d9/tests: Skip a test on failure. 2009-07-06 14:35:26 +02:00
Henri Verbeet 17c0e99106 d3d9/tests: Add a small test for having multiple device active at the same time.
This is essentially the situation that caused problems with reusing the
initial GL context.
2009-07-03 13:05:52 +02:00
Henri Verbeet 7d3beb6b79 d3d: Add a test for releasing the device after destroying the window. 2009-06-29 12:30:32 +02:00
Gerald Pfeifer b44596ffff d3d9: Fix variable type in reset_enum_callback(). 2009-06-26 12:02:59 +02:00
Henri Verbeet c672071db7 d3d9/tests: Make sure the device is released properly. 2009-06-23 11:47:59 +02:00
Henri Verbeet ad05c39fd7 d3d9/tests: Release the query in test_occlusion_query_states(). 2009-06-23 11:47:53 +02:00
Henri Verbeet 6cc2f9573a d3d9/tests: Release the vertex buffer in test_null_stream(). 2009-06-23 11:47:49 +02:00
Paul Vriens d8669f9e41 d3d9/tests: Use color_match ((logical || with non-zero constant). 2009-06-23 11:47:38 +02:00
Gerald Pfeifer 9b043744cd d3d9/tests: Fix three incorrect logic conditions. 2009-06-22 11:44:37 +02:00
Stefan Dösinger 2364ce08e5 d3d9: Add a SGN test. 2009-06-22 11:26:14 +02:00
Stefan Dösinger b93136e0c3 d3d9: Add an aL indexing test. 2009-06-22 11:26:07 +02:00
Henri Verbeet 1e0b1e5487 d3d9: Use color_match() in the fog test. 2009-06-19 13:52:56 +02:00
Stefan Doesinger f75dadfeb7 d3d9: Accept an alternative oFog->ps_3_0 handling. 2009-06-17 12:19:57 +02:00
Henri Verbeet 88162fabb8 wined3d: Get rid of the pointers in WINED3DSURFACE_DESC. 2009-06-15 13:42:29 +02:00
Henri Verbeet 4bc6b376e0 wined3d: Remove the useless "resource_type" parameter from IWineD3DDevice::CreateSurface(). 2009-06-12 17:33:15 +02:00
Gerald Pfeifer 6383d5fee2 d3d9: Use correct constant types (WINED3DPOOL_DEFAULT instead of D3DPOOL_DEFAULT and WINED3DRTYPE_SURFACE instead of D3DRTYPE_SURFACE). 2009-06-11 11:53:54 +02:00
Henri Verbeet 621da64245 wined3d: Get rid of the silly pointers in WINED3DVOLUME_DESC. 2009-06-09 17:01:14 +02:00
Gerald Pfeifer f39e7182e1 d3d9: Use WINED3DPOOL_DEFAULT instead of D3DPOOL_DEFAULT as appropriate. 2009-06-03 11:27:34 +02:00
Alexandre Julliard 2449eea0fd d3d9/tests: Skip CheckDeviceMultiSampleType test if not available. 2009-06-01 16:16:04 +02:00
Henri Verbeet 59268f7924 d3d9: Having a NULL rendertarget isn't a failure. 2009-05-29 11:26:50 +02:00
Louis Lenders 06936f04c0 wined3d: Fix CheckDeviceMultiSampleType when queried with D3DMULTISAMPLE_NONE. 2009-05-28 15:02:08 +02:00
Henri Verbeet 13a05caa97 wined3d: Remove the "declaration" parameter to IWineD3DDeviceImpl_CreateVertexShader().
Once upon a time this was used for creating fake vertex shader
attribute semantics for d3d8 shaders. We don't need this anymore since
device_stream_info_from_declaration() will use the vertex
declaration's output slot to load the data, if present. That also
avoids the potentially expensive matching of attribute semantics
between vertex shader and declaration for d3d8.
2009-05-28 12:42:18 +02:00
Stefan Dösinger 6492622350 wined3d: sincos for vertex shaders.
SCS is unfortunately a fragment program only instruction. If we have the NV
extensions we can use SIN and COS. Otherwise we have to approximate sine and
cosine with a taylor series. Luckily we're provided with the necessary
constants by the application.
2009-05-27 11:56:53 +02:00
Louis Lenders f9b9f73991 d3d9/tests: Add simple test to show that QualityLevels is not zero, when we call CheckDeviceMultiSampleType with D3DMULTISAMPLE_NONE. 2009-05-27 11:55:04 +02:00
Henri Verbeet f0e303b0f2 wined3d: Add the output signature to IWineD3DDevice_CreateVertexShader(). 2009-05-26 13:49:55 +02:00
Henri Verbeet 9a579a43b1 wined3d: Use the output signature to map SM4 pixel shader outputs to the appropriate register. 2009-05-11 12:43:00 +02:00
Austin English 68ccd08952 d3d9/tests: Sign compare fix. 2009-05-08 14:30:51 +02:00
Stefan Dösinger 31f5b01f9a wined3d: Add a point size test.
It shows that our current behavior (enabling coord_replace on all
units) is correct.
2009-05-08 12:17:04 +02:00
Stefan Dösinger 9f1731edb6 d3d: Limit d3d8 and d3d9 vshader constants to 256.
DX10 cards support 512(ATI) or 1024(Nvidia) vertex shader constants in
GL. The dx9 DXCapsViewer shows that dx10 windows drivers only claim
256 constants on Windows, so we can and should do the same.
2009-04-27 13:23:36 +02:00
David Adam 758777d1e2 d3d9: Fix a copy/paste error in test. 2009-04-27 13:23:19 +02:00
David Adam 33eb939390 wined3d: SetDepthStencilSurface is always called when AutoDepthStencil is enabled. 2009-04-24 11:51:27 +02:00
Henri Verbeet 6f33b97c94 wined3d: Get rid of the shared_handle parameter.
I don't expect us to support this in the near future, and right now it's just
dead code.
2009-04-23 14:22:06 +02:00
David Adam d993f85167 d3d9: Add tests for IDirect3D9Device_Reset. 2009-04-22 12:55:48 +02:00
Stefan Dösinger cb1c9dcda9 d3d: Remove the format from index buffers. 2009-04-09 16:28:25 +02:00
Stefan Dösinger f0efa97413 wined3d: Remove the buffer fvf. 2009-04-09 16:28:10 +02:00
Stefan Dösinger 77e6dcca02 d3d9: Store the FVF in the d3d9 vertex buffer. 2009-04-09 16:27:52 +02:00
Stefan Dösinger 513a493f00 wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer. 2009-04-08 11:37:29 +02:00
Stefan Dösinger 3ed94329a3 wined3d: Use Map and Unmap for index buffers.
Just a change in name to prepare for the next patch
2009-04-08 11:36:18 +02:00
Stefan Dösinger dc80a3ede5 d3d: Unify WINED3DVERTEXBUFFER_DESC and WINED3DINDEXBUFFER_DESC. 2009-04-08 11:36:02 +02:00
Stefan Dösinger bc07ad0579 d3d8, d3d9: Don't rely on the wined3d buffer type. 2009-04-08 11:35:29 +02:00
Henri Verbeet 4434d00f84 wined3d: Unify vertex and texture formats.
Some fields should be redundant now, eg. gl_vtx_type and glType. I'll leave
that for a different patch to fix though.
2009-03-27 15:51:25 +01:00
Henri Verbeet 6f206c75ec wined3d: Don't create an END element for wined3d vertex declarations.
Wined3d doesn't need it since it already has the element count.
2009-03-27 15:51:25 +01:00
Henri Verbeet 8a0fc70584 d3d9: Don't depend on specific display modes in test_reset(). 2009-03-26 14:47:42 +01:00
Henri Verbeet 49c22d6100 d3d9: Properly initialize the viewport dimensions. 2009-03-26 14:47:34 +01:00
Henri Verbeet db9bd91893 d3d9: Fix some indentation. 2009-03-26 14:47:28 +01:00
Henri Verbeet fd3d769a12 d3d9: Fix locking.
It appears there are some calls to wined3d missing critical sections.
2009-03-23 14:08:03 +01:00
Henri Verbeet 435b528e83 d3d9: Get rid of resource.c. 2009-03-23 14:08:02 +01:00
Henri Verbeet 82dd5bc2a1 d3d9: Get rid of basetexture.c. 2009-03-23 14:08:02 +01:00
Michael Stefaniuc 2df012a01a d3d9/tests: Use LONG instead of long. 2009-03-23 12:41:14 +01:00
Michael Stefaniuc 8e64efeeec d3d9/tests: Fix some ok() strings in the fog test. 2009-03-12 13:09:54 +01:00
Michael Stefaniuc a242d601cc d3d9/tests: Limit the back buffer to 800x600 in the scissor size test. 2009-03-12 13:09:54 +01:00
Henri Verbeet 39ae94d0b3 d3d9: Present parameters are an array when D3DCREATE_ADAPTERGROUP_DEVICE is specified. 2009-03-11 13:03:33 +01:00
Henri Verbeet 1b9a6fb4e9 d3d9: Fix some sign compare warnings. 2009-03-09 14:44:09 +01:00
Henri Verbeet 09f21f3fd8 d3d9: Improve IDirect3DDevice9::SetFVF() code flow. 2009-03-06 15:38:19 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Jörg Höhle 7a4ed15884 d3d9/tests: Fix typos in text. 2009-03-04 15:45:43 +01:00
Francois Gouget 3be6654259 d3d9/tests: Use win_skip() to skip over unimplemented functionality. 2009-02-25 12:49:30 +01:00
Stefan Dösinger 4aa0591c96 d3d9: Add an alpha blending test. 2009-02-24 16:57:30 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Henri Verbeet 61a9efc4b9 d3d9: Explicitly convert between D3DFORMAT and WINED3DFORMAT values. 2009-02-20 11:10:14 +01:00
Henri Verbeet 445255983d d3d9: Also copy the AutoDepthStencilFormat field in GetPresentParameters(). 2009-02-19 12:53:50 +01:00
Stefan Dösinger e51f2a0e6e d3d9: Test table fog and exp fog in the shader fog test. 2009-02-11 12:22:00 +01:00
Stefan Dösinger 693d9ded47 wined3d: Properly set the fog frag coord according to the FOGTABLEMODE.
This also fixes the test that an earlier patch broke, so the todo_wine can be
removed again.
2009-02-11 12:21:44 +01:00
Michael Stefaniuc bca813a5a6 d3d9: Remove superfluous pointer casts. 2009-01-29 14:06:18 +01:00
Marcus Meissner 7111ca5506 d3d9: Remove useless NULL check in stateblock test (Coverity). 2009-01-28 12:30:48 +01:00
Alasdair Sinclair f95b0209ab d3d9/tests: Fix missing void in empty parameter list. 2009-01-28 12:10:47 +01:00
Marcus Meissner ace65a527f d3d9: Initialize hr (Coverity). 2009-01-28 12:10:28 +01:00
Stefan Dösinger 50109aa969 wined3d: Get rid of last_was_foggy_shader & friends.
The fog settings do not depend on wether the shader writes to oFog or not,
instead they depend on the FOGVERTEXMODE and FOGTABLEMODE settings, and if a
vertex shader is bound at all.

It works the same way as with the fixed function, and having a vertex shader
is the same as using pretransformed vertices, just that the fog coord comes
from the shader instead of the specular color:

FOGTABLEMODE != NONE: The Z coord is used, oFog is ignored
FOGTABLEMODE == NONE, with VS: oFog is used
FOGTABLEMODE == NONE, no VS, XYZ: Z is used
FOGTABLEMODE == NONE, no VS, XYZRHW: diffuse color is used
2009-01-20 12:45:40 +01:00
Henri Verbeet 9e7b5676a7 d3d9: Remove some superfluous pointer casts. 2009-01-20 12:34:12 +01:00
Henri Verbeet e6babd8367 d3d9: Properly test for dynamic usage in device_parent_CreateSurface(). 2009-01-16 13:29:57 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +01:00
Stefan Dösinger 903c774263 d3d9: Use D3DFOG_* constants instead of plain integers. 2009-01-13 17:33:08 +01:00
Stefan Dösinger b3b60f9602 d3d9: Properly set AutoRestoreDisplayMode. 2009-01-13 16:39:53 +01:00
Stefan Dösinger a69c86d3f5 ddrawex: Add a test for the permanent DC function. 2009-01-09 16:26:06 +01:00
Henri Verbeet 352e60e6ed d3d: Explicitly translate texture stage states.
Ddraw and d3d8 already translate half of them, it turns out the lookup
table actually saves lines there.
2009-01-06 12:45:32 +01:00
Henri Verbeet 04808cc5aa d3d9: Don't test invalid texture stages. 2009-01-06 12:45:14 +01:00
Stefan Dösinger 616ea53226 ddraw: Add a test for IDirectDrawSurface::GetDC. 2009-01-03 15:14:38 +01:00
Roderick Colenbrander a6d28bcc52 d3d9: Relax color matching in bumpmap test. 2009-01-02 11:53:56 +01:00
Henri Verbeet 007c648c20 d3d: Correct some debug levels. 2008-12-30 11:36:50 +01:00
Henri Verbeet 8da71ca6a6 d3d9: Use separate codepaths for failure and NULL return values in GetVertexShader() / GetPixelShader(). 2008-12-30 11:36:42 +01:00
Henri Verbeet 1d9c8a2df7 d3d9: Use a HAL device for the stateblock tests. 2008-12-29 12:16:47 +01:00
Henri Verbeet de494ffe3c wined3d: The initial value for D3DRS_POINTSIZE_MAX depends on the pointsize limit. 2008-12-29 12:16:42 +01:00
Henri Verbeet 664b58dc6f d3d: Make sure the device is properly released when exiting the tests. 2008-12-29 12:16:35 +01:00
Henri Verbeet a394dbec13 d3d9: Release the vertex declaration once we're done with it. 2008-12-29 12:16:27 +01:00
Chris Robinson 0bdab5f80c d3d9: Use the correct size for D3DFVF_XYZW. 2008-12-29 11:49:54 +01:00
Henri Verbeet 0fb3cb9314 d3d9: Don't crash in GetFVF() if a NULL vertex declaration is set. 2008-12-24 19:57:51 +01:00
Vincent Pelletier defe641725 d3d9: Set IDirect3DDevice9Impl_GetVertexShader return value to NULL on error. 2008-12-23 20:14:59 +01:00
Rico Schüller bf5912208f d3d9/tests: Don't create a Null-shader in d3d9, it will crash. 2008-12-22 14:14:52 +01:00
Henri Verbeet c889bab8e6 d3d9: Add a test for shader constant application through IDirect3DStateBlock9_Apply().
We already behave correctly here, the test just verifies it.
2008-12-18 13:16:38 +01:00
Henri Verbeet 42036ab6f5 d3d9: Fix a trace. 2008-12-18 13:16:28 +01:00
Henri Verbeet 1e1cf78073 d3d9: Fix the shader constant test.
Using the same values for the test data and the default data masks
potential failures.
2008-12-17 14:02:17 +01:00
Henri Verbeet 4adb342327 wined3d: Remove GetFVF() and SetFVF() from IWineD3DDevice. 2008-12-17 14:02:03 +01:00
Henri Verbeet 46572f682c wined3d: Refuse to create shaders with a NULL function. 2008-12-16 12:51:49 +01:00
Francois Gouget 287dee6e78 d3d9/tests: Make some functions static. 2008-12-12 11:41:53 +01:00
Huw Davies 12b9d37120 d3d9/tests: Skip tests if we can't create the D3D9 object. 2008-12-04 12:51:20 +01:00
Alexandre Julliard 8eccb01a47 d3d9: Make some functions static. 2008-12-04 12:47:04 +01:00
Stefan Dösinger e04556bb16 wined3d: Fix D3DFMT_R32F, R16F, G16R16F, ... in the pixel shader.
This allows us to drop the load time conversion and the clear
readback hack and replaces it with a color fixup in the fixed
function pipeline replacement.
2008-12-04 12:00:15 +01:00
Henri Verbeet a6917b143d wined3d: Use IDL to generate wined3d.h. 2008-11-25 13:37:22 +01:00
Francois Gouget 1c87e4664f d3d9: Remove WINAPI on static functions where not needed. 2008-11-24 14:33:06 +01:00
Francois Gouget 001288ecae d3d9: Remove IDirect3DDevice9Impl_GetFrontBuffer() as it is unused. 2008-11-24 14:33:02 +01:00
Stefan Dösinger cd011661e6 d3d9: Test psize_min vs psize_max vs psize behavior.
Add a test that checks what happens if D3DRS_POINTSIZE, D3DRS_POINTSIZE_MIN
and POINTSIZE_MAX have conflicting values. D3DRS_POINTSIZE_MAX trumps
D3DRS_POINTSIZE_MIN, and both MIN and MAX clamp the D3DRS_POINTSIZE value if it is
outside of their range.
2008-11-20 12:17:18 +01:00
Stefan Dösinger 40c06ea296 d3d9: Add a test for GetTexture with no texture set. 2008-11-04 11:41:20 +01:00
Stefan Dösinger a8497a5545 wined3d: Fix the num blend values -> type match. 2008-11-04 11:40:37 +01:00
Stefan Dösinger 123a3f44d9 d3d9: WINED3DSURFACE_DESC::MultiSampleType is not a DWORD. 2008-11-04 11:40:29 +01:00
Stefan Dösinger 3d96f97ee1 d3d9: Use the correct AddRef and Release macros. 2008-11-04 11:40:23 +01:00
Michael Stefaniuc 4f199a10ad Remove the remaining casts of NULL. 2008-11-03 13:42:09 +01:00
Stefan Dösinger 93af8d3631 d3d: Do not restore the display mode in ddraw. 2008-11-03 13:34:13 +01:00
Stefan Dösinger 561ebb355f d3d9: Test the effect of lighting on the result alpha. 2008-11-03 13:34:13 +01:00
Henri Verbeet eb0c0b3f25 d3d9: Don't ignore the GetCursorInfo() return value (LLVM/Clang). 2008-11-03 11:49:31 +01:00
Henri Verbeet 092b51e82a wined3d: Rename CreateAdditionalSwapChain to CreateSwapChain. 2008-10-28 12:46:46 +01:00
Henri Verbeet 7142754820 wined3d: Remove the SDKVersion parameter to WineDirect3DCreate(). 2008-10-24 14:24:59 +02:00
Alexandre Julliard 90fd6a2f4d d3d9: Convert source files to utf-8. 2008-10-18 19:19:23 +02:00
Detlef Riekenberg 7cfaf4aca0 d3d9/tests: Fix test for old gfx-card. 2008-10-13 12:03:43 +02:00
Detlef Riekenberg c27b37a77e d3d9/tests: Fix test on win9x. 2008-10-13 12:03:38 +02:00
Francois Gouget 0f38a60dd3 Assorted spelling fixes. 2008-10-10 14:14:05 +02:00
Michael Stefaniuc 6a908eb149 d3d9/tests: Use FAILED instead of !SUCCEEDED. 2008-10-08 13:42:25 +02:00
Henri Verbeet 5780b9b56d d3d9: Use more reasonable texture dimensions.
caps.MaxTextureWidth / caps.MaxTextureHeight can potentially be very
large, which could cause a driver to run out of memory. Arguably the
driver shouldn't report such large limits, but there's no reason for
us to create a texture larger than 1024x1024 either.
2008-10-07 12:11:40 +02:00
Rob Shearman 0f236745a9 d3d8/9: Use WINED3D_OK instead of D3D_OK in vertexshader.c. 2008-10-06 13:07:02 +02:00
Rob Shearman a4b2a2c380 d3d9: Fix incorrect ordering of brackets in IDirect3DVertexShader9Impl_GetDevice.
The comparison should be (D3D_OK == hr && myDevice), not (D3D_OK == (hr && myDevice)).
(Found with PreFast.)
2008-09-30 10:20:22 -05:00
Rob Shearman f6813e55c5 d3d9: Fix type used to store return value in IDirect3DDevice9Impl_GetNPatchMode.
It should be a float, not an HRESULT.
2008-09-15 13:23:30 +02:00
Stefan Dösinger 631f751fe1 wined3d: Add a test for zenable=false, zwriteenable=false.
I suspected that in this situation d3d writes to the z buffer, but the
test shows that I was mistaken
2008-09-11 11:43:42 +02:00
Henri Verbeet 3783c5c029 d3d9: Add a test for auto depth stencil reset. 2008-09-10 12:05:41 +02:00
Henri Verbeet 8a77aa03e0 d3d9: Only run the reset test once. 2008-09-10 12:05:36 +02:00
Henri Verbeet c0d770de9e d3d9: GetDepthStencilSurface returns D3DERR_NOTFOUND when no depth stencil is present. 2008-09-10 12:03:55 +02:00
Rico Schüller 525e30e6b7 wined3d/d3d9: Set the initial scissorrect to the dimesions of the backbuffer from the first swapchain of the device. 2008-09-04 12:26:59 +02:00
Stefan Dösinger d5f05c59c7 ddraw: Beware of the surface type when checking for format support. 2008-09-02 14:56:26 +02:00
Stefan Dösinger 8b1727ae62 wined3d: Report incorrect filtering settings in ValidateDevice. 2008-09-02 14:56:06 +02:00
Stefan Dösinger b294e43206 wined3d: D3DTOP_DOTPRODUCT3 colorop overrides the alphaop.
Note that the fix is only implemented in the arbfp and atifs fragment
pipeline. Unfortunately nvrc doesn't support dot3 as alpha operation.
2008-08-27 13:21:24 +02:00
Stefan Dösinger 4767be8cde wined3d: The final luminance factor is clamped. 2008-08-26 12:07:41 +02:00
Stefan Dösinger 6c6a6a2e61 wined3d: Implement D3DTA_ALPHAREPLICATE in arbfp and atifs.
Also adds a simple test for this. In the fixed function and nvrc/nvts
code this already works properly.
2008-08-26 12:07:41 +02:00
Stefan Dösinger 6c12b81552 wined3d: Implement D3DTOP_BUMPENVMAPLUMINANCE. 2008-08-26 12:07:41 +02:00
Stefan Dösinger e8b9f167d6 wined3d: Fix the texcoord size mask.
There is room for 8 texture coordinates, not just 4.
2008-08-26 12:07:41 +02:00
David Adam acaeb92042 d3d8/d3d9: Remove unconsistent tests for SetMaterial. 2008-08-22 11:32:09 +02:00
Stefan Dösinger b692e86104 wined3d: De-pickify the texbem test. 2008-08-21 13:34:06 +02:00
Stefan Dösinger a901f0966d d3d9: Make the bumpmap test less picky. 2008-08-21 13:33:58 +02:00
Stefan Dösinger bbf313e76a d3d9: Test for fixed function value clamping. 2008-08-21 13:27:58 +02:00
Stefan Dösinger 6a24b28b75 wined3d: Support YUV formats with GL_APPLE_ycbcr_422. 2008-08-20 12:25:00 +02:00
Stefan Dösinger e178ddd9e1 wined3d: Use a swapchain for GDI surfaces.
This is a long-needed cleanup aimed at removing the ddraw_primary,
ddraw_window, ddraw_width and ddraw_height members from
IWineD3DDeviceImpl, which just do not belong there.  Destination
window and screen handling is supposed to be done by swapchains.
2008-08-19 12:21:32 +02:00
Rob Shearman 30cd9b473e d3d9: Remove unneeded local variable in IDirect3DDevice9Impl_SetFVF. 2008-08-18 17:15:57 +02:00
Rob Shearman 320aac97e4 d3d9: Fix variable type in IDirect3DDevice9Impl_GetSoftwareVertexProcessing.
IWineD3DDevice_GetSoftwareVertexProcessing returns a BOOL, not an HRESULT.
2008-08-18 17:15:56 +02:00
Stefan Dösinger ef647c9ad9 d3d9: Skip gracefully if A16R16G16B16 is not supported. 2008-08-04 13:12:20 +02:00
Francois Gouget 2592687321 d3d9: Add an API documentation stub to make winapi_check happy. 2008-08-04 13:04:39 +02:00
Stefan Dösinger b554cdbb5a d3d: D3DDECLTYPE_UNUSED is not valid in vertex declarations. 2008-07-24 11:55:42 +02:00
H. Verbeet d1c835f890 d3d9: Use color_match() in test_vshader_input(). 2008-07-24 11:55:27 +02:00
Gerald Pfeifer 971a1e66f4 d3d9: Fix type of loop variable in stream_test() and texop_test(). 2008-07-21 15:06:35 +02:00
Stefan Dösinger 3a224fe289 d3d9: Unset the vertex shader in the compare_instructions test. 2008-07-18 11:40:26 +02:00
H. Verbeet c876c929a2 d3d9: Correct some shader comments. 2008-07-18 11:11:53 +02:00
H. Verbeet 0bebad66f7 d3d9: Replace color_near() with color_match(). 2008-07-18 11:11:49 +02:00
H. Verbeet f902b044d3 d3d9: Use color_match() in vshader_version_varying_test().
Also fixes the range on the test, 0x19 plus 1 equals 0x1a, and
0x003c0000 should've been 0x004c0000.
2008-07-17 11:36:51 +02:00
Tobias Jakobi fb0fbc4b85 d3d9: Remove faulty comment from CreateOffscreenPlainSurface. 2008-07-08 21:08:53 +02:00
Alexandre Julliard a08bb2f04c d3d9: Don't depend on the dxerr9 static library in the tests. 2008-07-08 17:51:46 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins 7d22101e6b d3d9: Fix a failing test for broken drivers. 2008-07-08 10:48:10 +02:00
Stefan Dösinger c4eae160d7 wined3d: RENDERTARGET | AUTOGENMIPMAP are compatible.
The test used D3DPOOL_MANAGED which is mutually exclusive with
RENDERTARGET usage, thus the call failed.
2008-07-02 12:24:12 +02:00
James Hawkins 74bb01f4a9 d3d9: Fix a test that fails with broken drivers. 2008-07-02 12:16:44 +02:00
H. Verbeet 674b3b84e9 d3d9: Unset the pixel shader at the end of cnd_test().
This prevents failures in subsequent tests when no PS2.0 support is present.
2008-06-25 20:29:12 +02:00
H. Verbeet 873c0afb82 d3d: Allow more imprecision in the texop test. 2008-06-25 20:29:05 +02:00
H. Verbeet 079686b707 d3d9: Use color_match() in fog_with_shader_test(). 2008-06-25 10:43:13 +02:00
H. Verbeet 60b5581e1c d3d9: Use color_match() in alpha_test().
Also fixes some of the messages.
2008-06-24 11:48:38 +02:00
Alexandre Julliard 15a5da9790 d3d9/tests: Test for Direct3DCreate9 failure. 2008-06-24 11:09:47 +02:00
Alexandre Julliard a6e0c9cbf3 d3d9: Make Direct3DCreate9 fail if we can't initialize wined3d. 2008-06-24 11:07:53 +02:00
Paul Vriens 189603a995 d3d9/tests: Fix a few typos. 2008-06-11 12:55:43 +02:00
Dmitry Timoshkov 1c8994247e d3d9: Avoid a not needed address-of operator. 2008-06-06 10:29:18 +02:00
Michael Karcher a6e515af83 d3d9/tests: Keep swapchain while its backbuffer is in use. 2008-06-03 11:11:20 +02:00
Maarten Lankhorst 06f65e65d0 d3d9: Add a test to see whether offscreen surfaces can be locked while a reset occurs. 2008-05-29 12:08:20 +02:00
H. Verbeet 8c79f13663 d3d9: Test our texop implementation. 2008-05-27 12:04:33 +02:00
H. Verbeet 14b13d0687 d3d: Use an alpha capable backbuffer format in the visual tests. 2008-05-27 12:04:05 +02:00
Dan Kegel 83da377494 d3d9/tests: Another wee bit of slop. 2008-05-21 11:38:14 +02:00
Dan Kegel 480297336b d3d9/tests: Add missing skip(). 2008-05-19 13:35:31 +02:00
Dan Kegel 7d989b7f71 d3d9: shademode_test: Increase slop in color comparison. 2008-05-13 11:24:47 +02:00
Francois Gouget 58665f5db7 d3d9/tests: Fix compilation on systems that don't support nameless unions. 2008-05-06 16:10:07 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
James Hawkins 7b385fb60c d3d9: Fix a few test failures in win2k3. 2008-04-28 13:27:51 +02:00
Stefan Dösinger dc684c060f d3d9: Dump the device information in the visual tests. 2008-04-24 22:10:01 +02:00
Stefan Dösinger 97d64396eb d3d9: Check textures for srgb writing, not surfaces. 2008-04-24 22:09:55 +02:00
Stefan Dösinger 27a29a2f6a d3d9: Make the offscreen format test a bit more tolerant. 2008-04-24 22:09:15 +02:00
Stefan Dösinger 5d49dea373 d3d9: Add a test for NP2 stretchrect. 2008-04-24 11:43:18 +02:00
David Adam 7df193676e wined3d: Fix a possible null dereference. 2008-04-21 16:54:00 +02:00
Marcus Meissner c59f18121f d3d9: Initialized 2 variables with NULL. 2008-04-15 14:34:46 +02:00
Chris Robinson fd823fc2d2 wined3d: Check for NULL vertex declarations. 2008-04-09 12:17:35 +02:00
Stefan Dösinger 3e5899b38d d3d9: Some Windows drivers set undefined attributes to 0.0. 2008-04-09 11:55:22 +02:00
Stefan Dösinger 1c3e725d63 d3d9: Accept erros in the fvp->3.0 pixel shader varying test.
Some cards/drivers like ATI and the Geforce 8 driver return an error in
this case, make the test accept that. This lifts some constraints we
have to care for in WineD3D and removes one of the requirement for the
packing shader. We still need the packing shader for vs_1_1 -> ps_3_0
mapping and for indirect pixel shader varying addressing though.
2008-04-09 11:54:09 +02:00
Stefan Dösinger 9cd1d505bd d3d9: Make the srgb reading test less strict. 2008-04-09 11:53:52 +02:00
Rico Schüller 54d23c9669 d3d9: Add stream_test with instancing. 2008-04-07 21:20:59 +02:00
Rico Schüller 29713df8d9 d3d9: fix two copy and paste mistakes. 2008-04-07 12:05:13 +02:00
Rico Schüller 82521353f5 d3d9: Make the shader test more precision tolerant. 2008-04-07 12:05:06 +02:00
Stefan Dösinger c65020646c d3d9: Run the visual test with hardware vertex processing. 2008-04-07 11:49:39 +02:00
Stefan Dösinger 5b7ad3ad61 d3d9: Fix a few ok conditions in the visual tests. 2008-04-07 11:49:27 +02:00
Stefan Dösinger b245c37ce6 d3d9: Accept nvidia hardware vp garbage.
Apparently nvidia cards do not like 3.0 vshader + fixed function fragment
processing, so accept their result. This has no implementation implications
for Wine because we need the code to support the 3.0+ffp combination to
handle 3.0+1.x and 3.0+2.0 shader combinations too
2008-04-07 11:49:20 +02:00
Stefan Dösinger 3ec49a32f2 d3d9: Read from a slightly different spot in a test. 2008-04-07 11:48:46 +02:00
Stefan Dösinger b094c95d85 d3d9: Remove some test trace lines. 2008-04-07 11:48:33 +02:00
Stefan Dösinger cd7d2dc136 d3d9: Enforce ColorFill restrictions. 2008-04-07 11:48:26 +02:00
Stefan Dösinger de5a8db58b d3d9: Improve an ok line. 2008-04-03 12:01:39 +02:00
Austin English b4f52938e4 Spelling fixes. 2008-04-02 23:18:21 +02:00
Stefan Dösinger 685d14818c d3d9: Make the shading test even more precision tolerant.
This is needed on both windows and wine, seems to be a hardware thing.
2008-04-02 20:28:47 +02:00
Stefan Dösinger 20a2afe6aa d3d9: Add a test for temporary results. 2008-04-02 20:06:50 +02:00
Stefan Dösinger ab86a4e963 wined3d: Catch D3DUSAGE_AUTOGENMIPMAP and D3DUSAGE_RENDERTARGET combos. 2008-04-01 20:31:59 +02:00
Jason Green 4f5cb4fb76 d3d9: Add some visual tests for Direct3DDevice9_StretchRect(). 2008-04-01 13:41:49 +02:00
Jason Green 9625d76b5e d3d9: Add a visual test for the DP2ADD shader instruction. 2008-04-01 13:41:45 +02:00
Roderick Colenbrander 76014205de wined3d: Fix a postpixelshader_blending bug. 2008-03-31 12:14:33 +02:00
Roderick Colenbrander 61f7dc006a d3d9: Test post pixelshader blending. 2008-03-28 15:49:52 +01:00
Stefan Dösinger 82d25338aa d3d9: Add a basic test for multiple rendertargets. 2008-03-27 11:18:59 +01:00
Austin English 4777f26d61 Spelling fixes. 2008-03-27 11:10:07 +01:00
Alexander Dorofeyev 7bb58929b7 d3d9/tests: Test that GOURAUD and PHONG modes are equal. 2008-03-27 11:09:11 +01:00
Dmitry Timoshkov 5c93f092c8 d3d9: Make the visual test pass on GeForce Go 7600. 2008-03-26 11:18:33 +01:00
Stefan Dösinger aaced1f5ba d3d9: Add a projected texture test. 2008-03-25 19:39:34 +01:00
Stefan Dösinger 8869c0f147 d3d: De-pointerize the WINED3DCAPS structure. 2008-03-25 19:36:38 +01:00
Jason Green 740b56e87b d3d9: Allow for driver precision differences in some visual tests. 2008-03-22 13:10:12 +01:00
Jason Green 1a933d6b44 d3d9: Add visual test for D3DRS_SHADEMODE states. 2008-03-22 13:10:08 +01:00
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