Henri Verbeet
2fb21e0a2e
wined3d: Get rid of the WINED3DTRIPATCH_INFO typedef.
2011-11-24 17:10:06 +01:00
Henri Verbeet
2ecbe2aa0f
wined3d: Get rid of the WINED3DRECTPATCH_INFO typedef.
2011-11-23 09:13:58 +01:00
Henri Verbeet
2e1c0d83c1
wined3d: Get rid of the WINED3DGAMMARAMP typedef.
2011-11-22 10:52:45 +01:00
Henri Verbeet
be8917cd91
wined3d: Get rid of the WINED3DVIEWPORT typedef.
2011-11-22 10:52:40 +01:00
Henri Verbeet
02bb70fc3b
wined3d: Get rid of the WINED3DMATERIAL typedef.
2011-11-21 11:01:02 +01:00
Henri Verbeet
f597359727
wined3d: Get rid of the WINED3DLIGHT typedef.
2011-11-21 11:00:57 +01:00
Henri Verbeet
37a0f7ad65
wined3d: Get rid of the WINED3DMATRIX typedef.
2011-11-18 14:26:16 +01:00
Henri Verbeet
18a7653c78
wined3d: Get rid of the WINED3DDISPLAYMODE typedef.
2011-11-17 11:37:26 +01:00
Henri Verbeet
e0a0d611af
wined3d: Pass a wined3d_color struct to wined3d_device_clear().
2011-11-16 09:41:53 +01:00
Henri Verbeet
7459180a51
wined3d: Get rid of the WINED3DCOLORVALUE typedef.
2011-11-16 09:41:50 +01:00
Henri Verbeet
6e8273177a
wined3d: Reject multisampled readbacks in wined3d_surface_get_render_target_data().
2011-10-24 11:16:33 +02:00
Henri Verbeet
d607586d62
wined3d: Make the present_parameters parameter to wined3d_device_reset() const.
2011-10-19 12:24:36 +02:00
Stefan Dösinger
4365d2905c
d3d9: Remove the palette implementation methods.
2011-10-11 13:37:49 +02:00
Henri Verbeet
739a9d9805
wined3d: Return WINED3DERR_NOTFOUND if the render target is NULL in wined3d_device_get_render_target().
...
This is similar to how wined3d_device_get_depth_stencil() works.
2011-10-10 13:39:39 +02:00
Stefan Dösinger
e1d92059ea
d3d9: Implement FPUSETUP for msvc.
2011-09-26 17:59:41 +02:00
Henri Verbeet
7e3ecd683c
wined3d: Move rectangle validation from surface_cpu_blt() to wined3d_surface_blt().
...
This fixes some tests because these were getting skipped for the BltOverride() path.
2011-08-04 09:04:39 +02:00
Henri Verbeet
2256a7e804
wined3d: wined3d_device_evict_managed_resources() doesn't need a return value.
2011-07-29 12:09:39 +02:00
Henri Verbeet
44e109debe
wined3d: Unbind resources inside wined3d_device_reset().
2011-07-25 21:25:15 +02:00
Henri Verbeet
0739cae273
wined3d: Pass "reset_enum_callback" directly to wined3d_device_reset().
...
It would have been nice if we could do all of this inside wined3d, but we need
to determine what resources are in use by d3d8/d3d9, not wined3d. This is
mostly an issue for "implicit" resources like swapchain render targets and the
depth / stencil surface. The fact that we're having this problem probably
means we're doing it wrong. Since these implicit resources should only be
referenced by wined3d, we could probably just destroy and recreate the
swapchain, instead of the little updateSurfaceDesc() dance we currently do.
2011-07-25 21:25:01 +02:00
Michael Stefaniuc
4e31d28cff
d3d9: COM cleanup for the IDirect3DSurface9 iface.
2011-07-07 12:32:19 +02:00
Michael Stefaniuc
a7530e7892
d3d9: Use unsafe_impl_from_IDirect3DSurface9 for app provided ifaces.
2011-07-07 12:32:16 +02:00
Michael Stefaniuc
17eccaffbf
d3d9: COM cleanup for the IDirect3DVertexBuffer9 iface.
2011-07-06 16:49:10 +02:00
Michael Stefaniuc
2b3a364e9a
d3d9: Use unsafe_impl_from_IDirect3DVertexBuffer9 for app provided ifaces.
2011-07-06 16:49:04 +02:00
Michael Stefaniuc
bb4f750592
d3d9: COM cleanup for the IDirect3DVertexShader9 iface.
2011-07-06 16:49:00 +02:00
Michael Stefaniuc
f12cbfb509
d3d9: Use unsafe_impl_from_IDirect3DVertexShader9 for an app provided iface.
2011-07-06 16:48:56 +02:00
Michael Stefaniuc
b09078b016
d3d9: COM cleanup for the IDirect3DPixelShader9 iface.
2011-07-05 14:30:42 +02:00
Michael Stefaniuc
704f0efe0c
d3d9: Use unsafe_impl_from_IDirect3DPixelShader9 for an app provided iface.
2011-07-05 14:30:38 +02:00
Michael Stefaniuc
db1dd90225
d3d9: COM cleanup for the IDirect3DIndexBuffer9 iface.
2011-07-05 14:30:33 +02:00
Michael Stefaniuc
875d6900c6
d3d9: Use unsafe_impl_from_IDirect3DIndexBuffer9 for an app provided iface.
2011-07-05 14:30:31 +02:00
Henri Verbeet
b296f181dd
wined3d: Explicitly set surface alignment in the client libs.
...
Instead of using dxVersion.
2011-06-24 08:49:42 -05:00
Andrew Nguyen
94785ab4d5
d3d9: Increment the reference count of the IDirect3D9 parent when creating a device.
2011-06-06 21:49:19 +02:00
Andrew Nguyen
c4a6c25378
d3d9: Drop a superfluous cast in IDirect3DDevice9Impl_CreateOffscreenPlainSurface.
2011-05-31 18:32:59 +02:00
Henri Verbeet
3032b40c80
wined3d: Get rid of the IWineD3DDeviceParent interface.
2011-05-19 10:06:21 +02:00
Henri Verbeet
8d4ca1f815
wined3d: Remove COM from the device implementation.
2011-05-17 10:06:18 +02:00
Henri Verbeet
979e3744f7
wined3d: Remove state management methods from the IWineD3DDevice interface.
2011-05-17 10:06:15 +02:00
Henri Verbeet
99092e8a0a
d3d9: Simplify reset_enum_callback().
...
Note that the existing code wouldn't work for volumes, since volumes aren't
proper resources in d3d9.
2011-05-05 11:45:10 +02:00
Henri Verbeet
1c1de920e3
wined3d: Remove COM from the surface implementation.
2011-04-29 16:52:13 +02:00
Michael Stefaniuc
d5739cd2c3
d3d9: Finish the COM cleanup of the IDirect3DDevice9Ex iface.
2011-04-25 11:40:35 +02:00
Michael Stefaniuc
5f57cc1451
d3d9: Pass an object instead of an iface to IDirect3DDevice9Impl_CreateSurface().
2011-04-25 11:40:32 +02:00
Michael Stefaniuc
e798c72cf4
d3d9: Use impl_from_IDirect3DDevice9Ex instead of casting iface to object.
2011-04-25 11:40:30 +02:00
Michael Stefaniuc
a3e77bfe59
d3d9: COM cleanup for the IDirect3DVolumeTexture9 iface.
2011-04-20 16:34:01 +02:00
Michael Stefaniuc
aab2d427e3
d3d9: COM cleanup for the IDirect3DVolume9 iface.
2011-04-20 16:33:55 +02:00
Michael Stefaniuc
31bea55ef4
d3d9: COM cleanup for the IDirect3DTexture9 iface.
2011-04-20 16:33:42 +02:00
Henri Verbeet
2c450571e5
wined3d: Remove COM from the volume implementation.
2011-04-15 10:07:57 +02:00
Henri Verbeet
3ec19590d5
wined3d: Remove COM from the swapchain implementation.
2011-04-14 17:13:57 +02:00
Henri Verbeet
d2e665230a
wined3d: Get rid of the swapchain destroy callback.
2011-04-13 14:13:51 +02:00
Michael Stefaniuc
29116e2400
d3d9: COM cleanup for the IDirect3DCubeTexture9 iface.
2011-04-12 12:50:44 +02:00
Michael Stefaniuc
a991b6708b
d3d9: COM cleanup for the IDirect3DStateBlock9 iface.
2011-04-12 12:50:37 +02:00
Michael Stefaniuc
78ea105b85
d3d9: COM cleanup for the IDirect3DQuery9 iface.
2011-04-12 12:50:30 +02:00
Henri Verbeet
3c07f7a68e
d3d9: Get rid of the implicit swapchain refcounting hacks.
2011-04-11 23:54:18 +02:00
Henri Verbeet
f8f83ff2f7
wined3d: Remove COM from the shader implementation.
2011-03-31 12:37:46 +02:00
Henri Verbeet
3d4fe0b750
wined3d: Get rid of IWineD3DPixelShader.
2011-03-30 12:18:03 +02:00
Henri Verbeet
49725ba583
wined3d: Get rid of IWineD3DVertexShader.
2011-03-30 12:17:51 +02:00
Henri Verbeet
fd8e18bd2b
wined3d: Remove COM from the texture implementation.
2011-03-28 17:08:52 +02:00
Henri Verbeet
2b18192e7a
wined3d: Get rid of IWineD3DSurface::GetDesc().
2011-03-11 11:40:31 +01:00
Henri Verbeet
ab8a9f27f9
d3d9: Surfaces always have resource type WINED3DRTYPE_SURFACE.
2011-03-09 12:29:23 +01:00
Henri Verbeet
756fdb7c5a
wined3d: Merge the various resource desc structures.
2011-03-09 12:28:58 +01:00
Henri Verbeet
b9fae5e9a8
wined3d: Don't require container parents for IWineD3DDeviceParent methods to be COM objects.
2011-03-08 12:27:41 +01:00
Henri Verbeet
a27ee75ed2
wined3d: Remove COM from the buffer implementation.
2011-03-04 16:25:58 +01:00
Henri Verbeet
1de6adfbae
wined3d: Make IWineD3DResourceImpl an independent structure.
2011-03-01 13:21:59 +01:00
Henri Verbeet
5765632d9f
wined3d: Remove COM from the vertex declaration.
2011-02-03 13:15:17 +01:00
Henri Verbeet
36d4268e3c
wined3d: Remove COM from IWineD3D.
2011-02-02 12:22:42 +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
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
7e3985e1fe
ddraw: Setup the device window in SetCooperativeLevel().
2010-11-08 13:30:54 +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
cd957f5b64
d3d9: Partially implement IDirect3D9Ex::CreateDeviceEx().
2010-10-27 12:12:00 +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
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
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
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
0df144164b
wined3d: Pass floating point colors to IWineD3DDeviceImpl_ColorFill().
2010-08-24 12:24: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
914c8cb8ea
ddraw: Acquire/release the focus window from the correct location.
2010-03-18 10:24:15 +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
Henri Verbeet
76804fa711
d3d9: Add a separate function for swapchain initialization.
2009-12-21 15:01:25 +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
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
4dbf1c4900
d3d9: Add traces.
2009-10-20 14:00:36 +02:00
Henri Verbeet
44aead2e1c
d3d9: Fix some IDirect3DDevice9Ex methods.
2009-10-19 11:45:25 +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
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
7f1c802b9f
d3d9: Add a separate function for pixel shader initialization.
2009-09-24 13:24:40 +02:00
Henri Verbeet
cdb741274a
d3d9: Add a separate function for vertex shader initialization.
2009-09-24 13:24:04 +02:00
Henri Verbeet
0241fefa94
d3d9: Add a separate function for vertex declaration initialization.
2009-09-23 12:35:00 +02:00
Henri Verbeet
359acf2461
d3d9: Limit "NumSimultaneousRTs" to 4.
2009-09-22 16:17:30 +02: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
75f005ebf9
d3d9: Add a separate function for texture initialization.
2009-09-17 10:10:10 -05:00
Henri Verbeet
c51fbe9293
d3d9: Add a separate function for cube texture initialization.
2009-09-17 10:09:28 -05:00
Henri Verbeet
5b7b4f59d2
d3d9: Add a separate function for volume texture initialization.
2009-09-16 13:05:51 -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
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
Gerald Pfeifer
b44596ffff
d3d9: Fix variable type in reset_enum_callback().
2009-06-26 12:02:59 +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
Henri Verbeet
59268f7924
d3d9: Having a NULL rendertarget isn't a failure.
2009-05-29 11:26:50 +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
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
513a493f00
wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer.
2009-04-08 11:37:29 +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
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
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
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
Michael Stefaniuc
bca813a5a6
d3d9: Remove superfluous pointer casts.
2009-01-29 14:06:18 +01:00
Marcus Meissner
ace65a527f
d3d9: Initialize hr (Coverity).
2009-01-28 12:10:28 +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
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
a394dbec13
d3d9: Release the vertex declaration once we're done with it.
2008-12-29 12:16:27 +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
Henri Verbeet
4adb342327
wined3d: Remove GetFVF() and SetFVF() from IWineD3DDevice.
2008-12-17 14:02:03 +01:00
Alexandre Julliard
8eccb01a47
d3d9: Make some functions static.
2008-12-04 12:47:04 +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
40c06ea296
d3d9: Add a test for GetTexture with no texture set.
2008-11-04 11:41:20 +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
Stefan Dösinger
93af8d3631
d3d: Do not restore the display mode in ddraw.
2008-11-03 13:34:13 +01:00