Henri Verbeet
95469309d6
wined3d: Consistently use Map/Unmap for mapping resources.
2010-10-14 17:54:52 +02:00
Henri Verbeet
4fa4ea7335
d3d8/tests: Add window proc tests for switching between fullscreen and windowed.
2010-10-06 14:42:10 +02:00
Alexandre Julliard
730f01801f
tests: Make some variables static.
2010-10-01 13:41:42 +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
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
95098f1b2a
d3d8: An invalid shader version isn't an internal error.
2010-09-06 16:14:30 +02:00
Henri Verbeet
c9c034fb55
d3d8: Merge vertex and index buffer implementations into a single file.
2010-09-02 11:51:05 +02:00
Henri Verbeet
29ed11e55f
d3d8: Merge vertex and pixel shader implementations into a single file.
2010-09-02 11:50:40 +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
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
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
3ad82a82bb
wined3d: The stateblock doesn't have a parent.
2010-07-30 11:36:03 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Alexandre Julliard
857d8f3675
d3d8/tests: Fix some test failures with the focus messages.
2010-07-02 13:45:25 +02:00
Henri Verbeet
7d5666e084
d3d8: Set the FPU control word on device creation.
2010-05-26 17:36:32 +02:00
Henri Verbeet
fabc7ecd97
d3d8/tests: Add a shadow sampler test.
2010-05-17 13:19:59 +02:00
Henri Verbeet
51ccd69e7c
d3d8/tests: Add some depth buffer tests.
2010-04-12 11:33:24 +02:00
Alexandre Julliard
26cc3efb33
d3d8: Avoid using a pointer difference in a trace.
2010-04-09 15:54:54 +02:00
Henri Verbeet
ae623815ee
d3d8/tests: Clear with colors that are more obviously different from the expected value in test_rcp_rsq().
2010-04-06 11:48:39 +02:00
Henri Verbeet
60a3625328
d3d8/tests: Use color_match() in test_rcp_rsq().
2010-04-06 11:48:35 +02:00
Henri Verbeet
d11185a890
d3d8/tests: Add some message processing to test_wndproc().
...
Disabled testing the focus and foreground windows after creating the device
for the moment.
2010-03-25 10:02:17 +01:00
Paul Vriens
dcb62f265d
d3d8/tests: Fix timeouts on Win9x/WinMe.
2010-03-19 12:26:31 +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
7aa5e90914
d3d8/tests: Extend the window proc / focus window tests.
2010-03-18 10:23:52 +01:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Christian Costa
11a015070c
d3d8: Display FIXME only once in ValidatePixelShader and ValidateVertexShader.
2010-02-22 12:36:05 +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
e2f83db007
d3d8: Test buffer lock flags.
2010-02-02 14:10:27 +01:00
Henri Verbeet
69861cf873
wined3d: Get rid of the depth range hack.
2010-01-27 11:16:07 +01:00
Henri Verbeet
5f68a2407b
d3d8: Add depth clamp tests.
2010-01-27 11:15:54 +01:00
Henri Verbeet
cdb7a94ae2
d3d8: Remove the unused Direct3DResource8_Vtbl.
2010-01-18 14:37:14 +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
d18bbbf09d
d3d8/tests: Add message tests for windowed devices.
2009-12-29 11:05:50 +01:00
Stefan Dösinger
d6b9732497
wined3d: Remove the d3d7 do-not-convert code.
2009-12-29 11:03:36 +01:00
Henri Verbeet
5d2a46d92e
d3d8/tests: Add some tests for focus behaviour.
2009-12-23 14:27:30 +01:00
Henri Verbeet
2e27ab6b67
d3d8: Add a separate function for swapchain initialization.
2009-12-21 15:01:25 +01:00
Henri Verbeet
b796573d68
d3d8: Add a test to show D3D replaces the window proc.
2009-12-15 11:44:14 +01:00
Henri Verbeet
789fed5095
d3d8: Forward the volume's GetDevice() to the texture instead of the wined3d volume.
2009-12-09 13:50:52 +01:00
Alexandre Julliard
6062679b08
d3d8/tests: Fix some pointer cast warnings on 64-bit.
2009-12-09 12:04:22 +01:00
Henri Verbeet
179cee08b0
d3d8: 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 3cedef2ffe
.
2009-12-07 14:34:04 +01:00
Henri Verbeet
3cedef2ffe
d3d8: Simplify GetDevice().
...
We already store "parentDevice", so we might as well use it.
2009-12-04 14:34:59 +01:00
Henri Verbeet
8151963f4e
d3d8: Directly store a wined3d stateblock in the stateblock handle.
...
IDirect3DStateBlock8Impl doesn't actually do anything useful.
2009-12-03 12:09:12 +01:00
Henri Verbeet
212ee15bd7
d3d8: Return D3DERR_INVALIDCALL when trying to delete an invalid pixel shader.
...
It appears this is fixed on Vista/Win7 to be consistent with
DeleteVertexShader(). Match the more consistent behaviour of Vista/Win7 and
mark the previous behaviour as broken.
2009-12-01 13:16:18 +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
2ac74fa511
d3d8: Make convert_to_wined3d_declaration() static.
2009-11-17 15:14:55 +01:00
Henri Verbeet
e0525b663e
d3d8: Move D3D8CB_DestroySwapChain() to device.c.
2009-11-17 15:14:54 +01:00
Henri Verbeet
fea466455b
d3d8: Add a separate function for device initialization.
2009-11-17 15:14:54 +01:00
Henri Verbeet
141b995b8f
d3d8/tests: Don't require dynamic usage for textures in the stateblock tests.
...
Not all cards support dynamic usage textures, and we don't actually need it.
2009-11-12 13:13:33 +01:00
Henri Verbeet
d72c9ffbf5
d3d8/tests: Only run the vertex/pixel shader constant apply tests when the implementation supports them.
2009-11-10 13:10:27 +01:00
Marcus Meissner
6bb2d5d242
d3d8: Removed superflous NULL checks (Coverity).
2009-11-09 20:00:04 +01:00
Stefan Dösinger
e6dcf31b28
d3d8: Run the visual tests in a window.
2009-11-09 19:59:15 +01:00
Stefan Dösinger
18c1d6033a
d3d8: Read the backbuffer in the visual test.
2009-11-09 19:59:07 +01:00
Stefan Dösinger
8eef221d20
d3d: Handle the pointsize_min default difference in d3d8.
2009-11-03 21:22:12 +01:00
Stefan Dösinger
83bca75707
d3d8: Fix device creation error handling.
2009-11-03 21:22:02 +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
50f5c9253e
d3d8/tests: Properly release the first device in test_depth_stencil_reset().
2009-10-23 12:03:03 +02:00
Henri Verbeet
f8bd01a315
d3d8: Add traces.
2009-10-19 11:45:57 +02:00
Henri Verbeet
ec5c417019
d3d8/tests: Check some more return values (LLVM/Clang).
2009-10-16 13:37:05 +02:00
Henri Verbeet
f4005c371f
d3d8: Get rid of some unused variables in IDirect3DDevice8Impl_CopyRects() (LLVM/Clang).
2009-10-16 13:36:55 +02:00
Detlef Riekenberg
7189c58f2f
d3d8/tests: Mark a failure of GetLightEnable on Win9x as broken().
2009-10-16 13:36:11 +02:00
Stefan Dösinger
e80144c403
d3d: Make EndScene calls hookable.
2009-10-14 12:21:06 +02:00
Stefan Dösinger
f54d6c366d
d3d8: Make Direct3DCreate8 hookable.
2009-10-14 12:21:06 +02:00
Henri Verbeet
6bd741e3ce
d3d8: Add some stateblock tests for device resources.
2009-10-13 11:38:28 +02:00
Henri Verbeet
eb9727bbab
d3d8: Cleanup the stateblock test callbacks a bit.
...
This mostly just makes the naming more conistent with what we use in other D3D
code, but also passes the device to the init() and cleanup() callbacks to
allow device resources to be created there. Future tests require this.
2009-10-12 12:35:58 +02:00
Henri Verbeet
1e5c398439
d3d8: Add tests for D3DSBT_PIXELSTATE stateblocks.
2009-10-09 11:50:30 +02:00
Henri Verbeet
aa576b3d35
d3d8: Add tests for D3DSBT_VERTEXSTATE stateblocks.
2009-10-09 11:50:29 +02:00
Henri Verbeet
00e7ec9cd6
d3d8: Add some tests for CreateStateBlock().
2009-10-08 13:53:56 +02:00
Henri Verbeet
a5b2721706
d3d8: Don't test D3DRS_DEBUGMONITORTOKEN in the stateblock tests.
...
It looks like this render state isn't stored in the stateblock but directly in
the device. I doubt a lot of applications depend on that though, so just
disable the test for the moment.
2009-10-08 13:53:34 +02:00
Henri Verbeet
d6f4892722
d3d8: Rename abort_stateblock() to delete_stateblock() in the stateblock tests.
2009-10-07 12:24:25 +02:00
Henri Verbeet
fb5079815d
d3d8: Use separate fields for data to check/apply in the stateblock tests.
2009-10-07 12:24:15 +02:00
Henri Verbeet
17909a0c52
d3d8: Get rid of the unused "return_data_buffer" in the stateblock tests.
2009-10-07 12:24:03 +02:00
Henri Verbeet
6dd6074f60
d3d8: Make the individual stateblock tests responsible for checking data.
2009-10-05 13:46:01 +02:00
Henri Verbeet
d818e4edf6
d3d8: Always pass "struct event_data" to "event_fn" in the stateblock tests.
2009-10-05 13:46:01 +02:00
Allan Tong
6792bb8843
d3d8: Don't release the parent device before destroying its children.
2009-09-29 12:05:53 +02:00
Henri Verbeet
47c84f4f7f
wined3d: Use the DXGI naming convention for all formats.
2009-09-25 15:15:44 +02:00
Henri Verbeet
906071aa9f
d3d8: It's not an error to have a NULL texture bound to a stage.
2009-09-25 15:15:00 +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
27723affc9
d3d8: Set the vertex declaration's shader handle in vertexdeclaration_init().
2009-09-25 15:14:09 +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
717419da11
d3d8: Add a separate function for pixel shader initialization.
2009-09-24 13:24:47 +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
afed6a3f77
d3d8: Add a separate function for vertex shader initialization.
2009-09-24 13:24:11 +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
b6d422446b
d3d8: Add a separate function for vertex declaration initialization from an FVF.
2009-09-23 12:35:42 +02:00
Henri Verbeet
f394dfc0f8
d3d8: Add a separate function for vertex declaration initialization.
2009-09-23 12:35:08 +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
b1bf50d751
d3d8: Add a separate function for vertex buffer initialization.
2009-09-18 08:55:18 -05:00
Henri Verbeet
0201ddf264
d3d8: Add a separate function for index buffer initialization.
2009-09-18 08:55:11 -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
76c61cf536
d3d8: Add a separate function for texture initialization.
2009-09-17 10:10:16 -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
b5b58e423d
d3d8: Add a separate function for cube texture initialization.
2009-09-17 10:09:33 -05:00
Henri Verbeet
d84e2fa747
d3d8: Mark internal symbols hidden.
2009-09-17 10:09:21 -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
eedfc95eef
d3d8: Add a separate function for volume texture initialization.
2009-09-16 13:05:58 -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
ff923245e1
d3d8: Add a separate function for volume initialization.
2009-09-16 13:05:06 -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
e02f7b2062
d3d8: Add a separate function for surface initialization.
2009-09-15 14:32:30 -05:00
Henri Verbeet
2b2fc827ce
wined3d: Remove unused parameters to drawPrimitive().
2009-09-11 12:09:14 +02:00
Henri Verbeet
fecbf7b416
d3d8: Remove trailing spaces.
2009-08-31 12:41:21 +02:00
Michael Stefaniuc
ebe5219c6b
d3d8: Release the lock instead of locking a second time (Smatch).
2009-08-26 12:10:27 +02:00
Henri Verbeet
f9c791f9ca
d3d8: Use a wined3d cs for wined3d locking.
...
We will need this for d3d10, where both dxgi and d3d10core are making wined3d
calls. Right now d3d8/d3d9 also use this to protect their own data, but
eventually we should push this down into wined3d itself and use something a
bit more fine-grained. There's no good reason that doing e.g. a vertex buffer
upload in some thread should block all of wined3d.
2009-08-25 11:12:17 +02:00
Henri Verbeet
4d1379f6a9
d3d8: Remove stray tabs.
2009-08-25 11:09:52 +02:00
Stefan Dösinger
6f5a1d9a15
wined3d: Filter WINED3DSTENCILCAPS_TWOSIDED in d3d8.
2009-08-07 14:56:48 +02:00
Stefan Dösinger
296573caae
d3d: Filter R8G8B8 in d3d8 and d3d9.
2009-08-07 14:56:40 +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
Henri Verbeet
7d3beb6b79
d3d: Add a test for releasing the device after destroying the window.
2009-06-29 12:30:32 +02:00
Henri Verbeet
f0e8307566
d3d8/tests: Make sure the device is released properly.
2009-06-23 11:48:02 +02:00
Henri Verbeet
a25947fa7e
d3d8: Add WINED3DFMT_W11V11U10 <=> D3DFMT_W11V11U10 conversion.
2009-06-19 13:52:42 +02:00
Paul Vriens
91e306579b
d3d8/tests: Fix some tests (logical || with non-zero constant).
2009-06-19 13:52:32 +02:00
Henri Verbeet
7dd5cc8749
d3d8: Add tests for deleting invalid shader handles.
2009-06-16 13:36:59 +02:00
Henri Verbeet
1bbc65b155
d3d8: Deleting an invalid pixel shader handle should return D3D_OK.
2009-06-16 13:36:54 +02:00
Henri Verbeet
dc3958c079
d3d8: Do some more verification on handles.
2009-06-16 13:36:48 +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
Henri Verbeet
621da64245
wined3d: Get rid of the silly pointers in WINED3DVOLUME_DESC.
2009-06-09 17:01:14 +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
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
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
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
458902b5b2
d3d8: Add tests for IDirect3D8Device_Reset.
2009-04-22 12:55:45 +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
ff16f30677
d3d8: Store the fvf in the d3d8 vertex buffer.
2009-04-09 16:27:43 +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
41ea1e1df7
d3d8: Fix some indentation.
2009-03-26 14:47:21 +01:00
Henri Verbeet
c0cefb3501
d3d8: Cleanup the vertexshader handling code a bit.
2009-03-24 12:56:50 +01:00
Henri Verbeet
4131135a9f
d3d8: Cleanup the pixelshader handling code a bit.
...
This mostly just reduces the nesting to something more sane.
2009-03-24 12:56:33 +01:00
Henri Verbeet
3f559f26d6
d3d8: Properly handle unsetting the pixelshader in SetPixelShader().
2009-03-24 12:56:25 +01:00
Henri Verbeet
775ea907a3
d3d8: Fix locking.
2009-03-23 14:08:03 +01:00