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