Stefan Dösinger
c1663c5583
ddraw: Device2 and Device3 do not have a lighting render state.
2013-06-20 22:14:36 +02:00
Stefan Dösinger
669611b4be
ddraw: Send device2_Draw* through device3_Draw*.
2013-06-20 22:14:36 +02:00
Stefan Dösinger
05de3f8cee
ddraw: SPECULARENABLE defaults to true in IDirect3DDevice2.
2013-06-20 22:14:36 +02:00
Henri Verbeet
29c43e2efc
ddraw: Rename PixelFormat_WineD3DtoDD() to ddrawformat_from_wined3dformat().
2013-06-07 11:58:29 +02:00
Henri Verbeet
e4816996c3
ddraw: Handle the "DirectDrawRenderer" registry key in wined3d.
2013-05-30 10:57:08 +02:00
Stefan Dösinger
57ab0363f5
ddraw: Don't check for NULL in GetCurrentViewport.
2013-01-29 11:48:13 +01:00
Stefan Dösinger
06ff1c710e
ddraw: Unset the viewport if the current vp is deleted.
2013-01-29 11:48:05 +01:00
Stefan Dösinger
0209b0a96c
ddraw: AddViewport holds a reference to the viewport.
2013-01-29 11:48:00 +01:00
Stefan Dösinger
351730e2d6
ddraw: Check for NULL pointers in SetCurrentViewport.
2013-01-29 11:47:55 +01:00
Stefan Dösinger
8e6e420a9d
ddraw: Check for NULL pointers in DeleteViewport.
2013-01-29 11:47:47 +01:00
Stefan Dösinger
b822c259fd
ddraw: Delete viewports when destroying the device.
2013-01-29 11:47:43 +01:00
Stefan Dösinger
9a0b2a5100
ddraw: device::GetCurrentViewport returns an error if no viewport is set.
2013-01-29 11:47:37 +01:00
Stefan Dösinger
d7e5189cc2
ddraw: Implement DrawIndexedPrimitiveStrided with regular draws.
2013-01-25 11:29:28 +01:00
Stefan Dösinger
7e62acc62e
ddraw: Implement DrawPrimitiveStrided with regular draws.
2013-01-25 11:29:24 +01:00
Henri Verbeet
1249976eb6
wined3d: Get rid of the surface_type parameter to wined3d_check_device_format().
2013-01-17 12:22:01 +01:00
Stefan Dösinger
d3520ef465
ddraw: Don't discard buffers that haven't been used in draws.
2013-01-10 16:05:34 +01:00
Stefan Dösinger
3b197749f9
ddraw: Align user vertex data.
2012-12-18 12:37:00 +01:00
Stefan Dösinger
09d44a1967
ddraw: Handle DrawIndexedPrimitive via dynamic buffers.
2012-12-18 12:36:54 +01:00
Stefan Dösinger
94388ed6c2
ddraw: Handle DrawPrimitive with a dynamic vertex buffer.
2012-12-18 12:36:47 +01:00
Stefan Dösinger
6deaa02fda
ddraw: Move the index buffer growing code to a separate function.
2012-12-18 12:36:40 +01:00
Stefan Dösinger
a61f68fc5a
ddraw: Properly use the index buffer as a dynamic buffer.
2012-11-28 20:14:58 +01:00
Stefan Dösinger
108fcb691c
ddraw: Make the index buffer write only.
2012-11-28 20:14:58 +01:00
Stefan Dösinger
4b95487bdd
ddraw: Don't create a wastefully large index buffer.
2012-11-28 20:14:57 +01:00
Henri Verbeet
8e24dbb60a
wined3d: wined3d_stateblock_apply() never fails.
2012-10-08 11:28:37 +02:00
Henri Verbeet
b69545c7da
wined3d: wined3d_stateblock_capture() never fails.
2012-10-08 11:28:32 +02:00
Henri Verbeet
f9d494294a
wined3d: Just return the texture from wined3d_device_get_texture().
2012-09-27 13:10:43 +02:00
Henri Verbeet
c0a83b1d96
wined3d: wined3d_device_get_texture_stage_state() never fails.
2012-09-26 14:40:35 +02:00
Henri Verbeet
26c0714009
wined3d: wined3d_device_set_texture_stage_state() never fails.
2012-09-26 14:40:33 +02:00
Henri Verbeet
01918d05ed
wined3d: wined3d_device_set_vertex_declaration() never fails.
2012-09-21 10:53:06 +02:00
Henri Verbeet
62670c7ba5
wined3d: wined3d_device_get_sampler_state() never fails.
2012-09-19 13:04:52 +02:00
Henri Verbeet
0d96be2c20
wined3d: wined3d_device_set_sampler_state() never fails.
2012-09-19 13:04:48 +02:00
Henri Verbeet
343974e2fd
wined3d: wined3d_device_get_material() never fails.
2012-09-18 10:18:51 +02:00
Henri Verbeet
2669feeb8c
wined3d: wined3d_device_set_material() never fails.
2012-09-18 10:18:42 +02:00
Henri Verbeet
90bd04c6b6
wined3d: wined3d_device_multiply_transform() never fails.
2012-09-14 15:43:20 +02:00
Henri Verbeet
706ece827b
wined3d: wined3d_device_get_transform() never fails.
2012-09-12 12:46:12 +02:00
Henri Verbeet
f79bbc767d
wined3d: wined3d_device_set_transform() never fails.
2012-09-12 12:46:07 +02:00
Henri Verbeet
d601a0dede
wined3d: wined3d_device_get_render_state() never fails.
2012-09-11 18:03:57 +02:00
Henri Verbeet
75cec973d5
wined3d: wined3d_device_set_render_state() never fails.
2012-09-11 18:03:53 +02:00
Henri Verbeet
3569b6ccd2
wined3d: wined3d_device_get_viewport() never fails.
2012-09-10 11:40:19 +02:00
Henri Verbeet
64aae8cf02
wined3d: wined3d_device_set_viewport() never fails.
2012-09-10 11:40:14 +02:00
Henri Verbeet
a3e28f6ce5
wined3d: wined3d_device_set_index_buffer() never fails.
2012-09-06 15:45:32 +02:00
Henri Verbeet
2c8834dffd
d3d9: Implement d3d9_GetAdapterDisplayModeEx().
2012-06-28 01:39:27 +02:00
Henri Verbeet
220a55c36c
ddraw: Use wined3d_get_adapter_display_mode() in d3d_device2_EnumTextureFormats().
2012-06-21 19:52:33 +02:00
Henri Verbeet
339ef6c252
ddraw: Use wined3d_get_adapter_display_mode() in d3d_device7_EnumTextureFormats().
2012-06-21 19:52:29 +02:00
Henri Verbeet
4905773baf
ddraw: Only initially enable color keying for version 1 devices.
2012-05-24 20:08:48 +02:00
Henri Verbeet
e3ecfa5974
wined3d: Store user clip planes as 4-component float vectors.
2012-05-22 18:07:02 +02:00
Henri Verbeet
fae3a6430d
ddraw: Get rid of IDirect3DVertexBufferImpl.
2012-04-12 20:36:53 +02:00
Henri Verbeet
4d1a659c3a
ddraw: Get rid of IDirect3DExecuteBufferImpl.
2012-04-11 18:14:41 +02:00
Henri Verbeet
daedd0077d
ddraw: Get rid of IDirect3DDeviceImpl.
2012-04-10 16:21:25 +02:00
Henri Verbeet
96fa113513
ddraw: Properly retrieve an interface pointer in IDirect3DDeviceImpl_7_GetTexture().
2012-04-10 16:21:25 +02:00
Henri Verbeet
cf30899f1a
ddraw: Version 1 devices are aggregated by the surface that created them.
2012-04-06 20:11:17 +02:00
Henri Verbeet
e13de0adf8
ddraw: Fix querying device interfaces in IDirect3DDeviceImpl_7_QueryInterface().
...
Version 7 devices can only return the version 7 interface. The other versions
can only return earlier interfaces.
2012-04-06 20:11:13 +02:00
Henri Verbeet
1a98c339ca
ddraw: Remove some interfaces from IDirect3DDeviceImpl_7_QueryInterface().
2012-04-04 17:22:30 +02:00
Henri Verbeet
cd8508a915
ddraw: Replace an ERR in IDirect3DDeviceImpl_7_QueryInterface() with a WARN.
2012-04-04 17:22:23 +02:00
Henri Verbeet
4f91eb3fe1
ddraw: Keep track of the ddraw version used to create a device.
...
This also obsoletes the "from_surface" device field.
2012-04-04 17:22:19 +02:00
Henri Verbeet
fefb5a943d
ddraw: Get rid of IDirect3DMaterialImpl.
2012-03-16 11:09:07 +01:00
Henri Verbeet
0c11c316bb
ddraw: Get rid of IDirect3DViewportImpl.
2012-03-15 19:52:05 +01:00
Henri Verbeet
9157006fc1
ddraw: Don't return a pointer to the implementation in IDirect3DDeviceImpl_7_QueryInterface().
2012-03-14 11:48:32 +01:00
Henri Verbeet
5f43cd2631
ddraw: Get rid of IDirectDrawSurfaceImpl.
2012-03-12 10:44:01 +01:00
Henri Verbeet
1cee1891fd
ddraw: Get rid of IDirectDrawImpl.
2012-03-09 11:32:35 +01:00
Henri Verbeet
3769afa33d
wined3d: Get rid of the WINED3DSURFTYPE typedef.
2012-01-20 13:31:33 +01:00
Henri Verbeet
e53a277305
wined3d: Get rid of the WINED3DPOOL typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
6a5a098b23
wined3d: Get rid of the WINED3DRESOURCETYPE typedef.
2012-01-18 12:37:38 +01:00
Henri Verbeet
cf636cc3b3
ddraw: Allow querying the surface interface if a device was created from a surface.
2012-01-18 12:37:38 +01:00
Henri Verbeet
e70990041b
wined3d: Get rid of the WINED3DTEXTUREFILTERTYPE typedef.
2012-01-13 17:34:31 +01:00
Henri Verbeet
f38e94af7c
wined3d: Get rid of the WINED3DTRANSFORMSTATETYPE typedef.
2012-01-12 12:37:18 +01:00
Henri Verbeet
b6431d9493
wined3d: Get rid of the WINED3DTEXTUREOP typedef.
2012-01-11 17:47:22 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
08545dc739
wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef.
2012-01-09 12:22:12 +01:00
Henri Verbeet
00096c82fd
wined3d: Get rid of the WINED3DZBUFFERTYPE typedef.
2011-12-22 10:08:48 +01:00
Henri Verbeet
4a30db74b1
ddraw: Handle the Direct3D clipspace transformation.
...
Direct3D3 and earlier have an extra transformation to scale clipspace. It's
controlled by the extra viewport parameters in those versions.
2011-12-22 10:07:59 +01:00
Henri Verbeet
3082c1a9de
wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef.
2011-12-20 10:11:47 +01:00
Henri Verbeet
67bca436ee
wined3d: Get rid of the WINED3DDEVTYPE typedef.
2011-12-13 18:58:58 +01:00
Henri Verbeet
52231bc467
wined3d: Get rid of the WineDirect3DVertexStridedData typedef.
2011-12-08 10:27:50 +01:00
Henri Verbeet
4c3dfa1bca
wined3d: Get rid of the WineDirect3DStridedData typedef.
2011-12-07 17:49:56 +01:00
Stefan Dösinger
d4f504c698
ddraw/tests: Add a IDirect3DDevice7 GetCaps test.
2011-12-05 17:40:11 +01:00
Stefan Dösinger
cc06d182fb
ddraw: Size handling fixes for IDirect3DDevice::GetCaps.
2011-12-05 17:40:04 +01:00
Henri Verbeet
22d41e2c3f
ddraw: Rename the wineD3D field in IDirectDrawImpl to wined3d.
2011-11-29 13:23:00 +01:00
Henri Verbeet
0f10ac9358
ddraw: Create the wined3d swapchain when setting the cooperative level.
2011-11-29 13:22:54 +01:00
Henri Verbeet
21bd722c46
ddraw: Set the render target to the wined3d frontbuffer on D3D device cleanup.
...
We don't need any specific render target here, since without a D3D device we
can't do any rendering anyway. We just want to avoid pointing to something
that was free'd.
2011-11-24 17:09:48 +01:00
Matteo Bruni
ca83e14aba
ddraw: Reorder formats in EnumTextureFormats.
2011-11-23 09:13:28 +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
a2963b662c
ddraw: Use wined3d_mutex_lock() / wined3d_mutex_unlock() for locking.
2011-11-14 15:25:21 +01:00
Henri Verbeet
5193f6704c
ddraw: Implement copy_mipmap_chain() on top of wined3d_surface_blt().
2011-10-31 16:46:19 +01:00
Ričardas Barkauskas
472a8f7a67
ddraw: COM cleanup for IDirect3DDevice7 interface.
2011-10-17 18:24:58 +02:00
Ričardas Barkauskas
7dc08745d1
ddraw: Use impl_from_IDirect3DDevice7 for application provided interfaces.
2011-10-17 18:24:42 +02:00
Ričardas Barkauskas
31cf68dd95
ddraw: Use unsafe_impl_from_IDirect3DDevice7 for application provided interfaces.
2011-10-17 18:24:30 +02:00
Ričardas Barkauskas
6b7e3e77d0
ddraw: COM cleanup for IDirect3DDevice3 interface.
2011-10-17 18:24:21 +02:00
Ričardas Barkauskas
bd530d3aba
ddraw: Rename device_from_device3 to impl_from_IDirect3DDevice3.
2011-10-17 18:24:10 +02:00
Ričardas Barkauskas
a90b2ad002
ddraw: Use unsafe_impl_from_IDirect3DDevice3 for application provided interfaces.
2011-10-17 18:23:51 +02:00
Ričardas Barkauskas
d32df839ac
ddraw: COM cleanup for IDirect3DDevice2 interface.
2011-10-17 18:23:42 +02:00
Ričardas Barkauskas
1c045cbb28
ddraw: Rename device_from_device2 to impl_from_IDirect3DDevice2.
2011-10-17 18:23:33 +02:00
Ričardas Barkauskas
a870753dba
ddraw: Use unsafe_impl_from_IDirect3DDevice2 for application provided interfaces.
2011-10-17 18:23:18 +02:00
Ričardas Barkauskas
d5912c533f
ddraw: COM cleanup for IDirect3DDevice interface.
2011-10-17 18:23:09 +02:00
Ričardas Barkauskas
a0c9ab7894
ddraw: Rename device_from_device1 to impl_from_IDirect3DDevice.
2011-10-17 18:22:56 +02:00
Ričardas Barkauskas
d19e416dee
ddraw: Use unsafe_impl_from_IDirect3DDevice for application provided interfaces.
2011-10-17 18:22:44 +02:00
Ričardas Barkauskas
38982ddf11
ddraw: Use unsafe_impl_from_IDirect3DViewport2 for application provided interfaces.
2011-10-04 15:25:31 -05:00
Ričardas Barkauskas
25bf0e914c
ddraw: Use unsafe_impl_from_IDirect3DViewport for application provided interfaces.
2011-10-04 15:25:25 -05:00
Ričardas Barkauskas
6253d319cb
ddraw: COM cleanup for IDirect3DViewport3 interface.
2011-10-04 15:25:20 -05:00
Ričardas Barkauskas
f44734b724
ddraw: Use unsafe_impl_from_IDirect3DViewport3 for application provided interfaces.
2011-10-04 15:25:00 -05:00
Ričardas Barkauskas
c1aaacd58c
ddraw: Change IDirect3DTexture2_vtbl to IDirect3DTexture2_iface.
2011-07-29 19:19:32 +02:00
Ričardas Barkauskas
15f16e8f5e
ddraw: Use unsafe_impl_from_IDirect3DTexture2 for application provided interfaces.
2011-07-29 19:19:11 +02:00
Ričardas Barkauskas
0a3582865e
ddraw: Use unsafe_impl_from_IDirect3DTexture() for application provided interfaces.
2011-07-29 19:18:59 +02:00
Ričardas Barkauskas
f5c46b01f4
ddraw: Do not increase wined3d texture refcount in IDirect3DDevice7_GetTexture.
2011-07-29 18:47:18 +02:00
Michael Stefaniuc
faa269c42a
ddraw: Use unsafe_impl_from_IDirect3DExecuteBuffer for an app provided iface.
2011-07-08 14:45:23 +02:00
Michael Stefaniuc
663483e16e
ddraw: COM cleanup for the IDirect3DExecuteBuffer iface.
2011-07-08 14:45:19 +02:00
Henri Verbeet
ddc29c40e6
wined3d: Make D3DRS_ZBIAS work.
...
D3DRS_ZBIAS is poorly defined, but it makes sense that the bias should be
format independent. Looking at application behaviour, it seems to include a
slope scale factor as well. This fixes a couple of regressions introduced by
96b758f7b3
, although it was broken before as
well, just in a different way.
2011-07-05 13:46:07 +02:00
Ričardas Barkauskas
5f6d7021aa
ddraw: Separate IDirectDrawSurface and IDirectDrawSurface7 reference counts.
2011-06-28 11:57:50 -05:00
Ričardas Barkauskas
9190d349d2
ddraw: Separate IDirectDrawSurface4 reference count.
2011-06-28 11:57:50 -05:00
Ričardas Barkauskas
3b50ad82ad
ddraw: Fix SetRenderTarget behaviour on failure.
2011-06-28 11:57:50 -05:00
Michael Stefaniuc
d7768739ec
ddraw: COM cleanup for the IDirect3DVertexBuffer7 iface.
2011-06-15 20:04:39 +02:00
Michael Stefaniuc
8e27274163
ddraw: Use unsafe_impl_from_IDirect3DVertexBuffer() for app provided ifaces.
2011-06-15 20:04:39 +02:00
Ričardas Barkauskas
f3ae1b99f6
ddraw: Separate IDirectDrawSurface vtable.
2011-06-10 15:26:52 +02:00
Ričardas Barkauskas
27063ffeaa
ddraw: Use unsafe_impl_from_IDirectDrawSurface() for application provided interfaces.
2011-06-10 15:26:29 +02:00
Ričardas Barkauskas
bb063b994c
ddraw: Separate IDirectDrawSurface4 vtable.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
4582562f55
ddraw: Use unsafe_impl_from_IDirectDrawSurface4.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
2f02bbb41f
ddraw: Change lpVtbl to IDirectDrawSurface7_iface.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
4074dd7615
ddraw: Avoid IDirectDrawSurfaceX to IDirectDrawSurface7 casts.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
93dfe5afc3
ddraw: Use impl_from_IDirectDrawSurface7() instead of casts.
2011-06-06 21:49:23 +02:00
Ričardas Barkauskas
705548a6ef
ddraw: Separate conversion from IDirectDrawSurface7 iface to object and conversion to other iface.
2011-06-06 21:49:22 +02:00
Ričardas Barkauskas
28ce1c00a7
ddraw: Use unsafe_impl_from_IDirectDrawSurface7() for application provided interfaces.
2011-06-06 21:49:22 +02:00
Ričardas Barkauskas
6d5be5033e
ddraw: Change IDirectDrawSurface3_vtbl to IDirectDrawSurface3_iface.
2011-05-31 19:24:10 +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
00a5f38595
wined3d: Remove object creation methods from the IWineD3DDevice interface.
2011-05-11 14:56:48 +02:00
Stefan Dösinger
a1519e62f4
ddraw: Map ZBIAS values to a smaller depth range.
2011-05-10 14:04:55 +02:00
Marcus Meissner
6d144cf012
ddraw: Added missing break (Coverity).
2011-05-02 12:37:25 +02:00
Henri Verbeet
1c1de920e3
wined3d: Remove COM from the surface implementation.
2011-04-29 16:52:13 +02:00
Stefan Dösinger
96b758f7b3
d3d: Map D3DRS_ZBIAS to WINED3DRS_DEPTHBIAS.
...
ZBIAS was removed in d3d9 and replaced with DEPTHBIAS. Currently
wined3d implements both independently which will cause trouble if we
want to set the depthbias value depending on the depth stencil format.
2011-04-22 17:51:29 +02:00
Henri Verbeet
fd1aac3e75
ddraw: Replace the viewport list with a standard Wine list.
2011-04-20 13:07:00 +02:00
Henri Verbeet
f1de9ad621
ddraw: Unset the viewports active device in IDirect3DDeviceImpl_3_DeleteViewport().
2011-04-20 13:06:49 +02:00
Henri Verbeet
d429aaa9e9
ddraw: Verify the viewport belongs to the device on execute buffer execution.
2011-04-19 13:29:42 +02:00
Henri Verbeet
9edeb22c34
ddraw: Verify the viewport belongs to the device in IDirect3DDeviceImpl_3_SetCurrentViewport().
2011-04-19 13:29:39 +02:00
Henri Verbeet
358f14ee20
ddraw: Fix a typo in a comment.
2011-04-04 11:53:39 +02:00
Henri Verbeet
024b5c2245
ddraw: Do not unset the index buffer on D3D device destruction.
2011-04-04 11:53:35 +02:00
Henri Verbeet
fd8e18bd2b
wined3d: Remove COM from the texture implementation.
2011-03-28 17:08:52 +02:00
Henri Verbeet
adb1e10979
wined3d: Get rid of wined3d_buffer_get_desc().
2011-03-11 11:40:47 +01:00
Henri Verbeet
4fd03150f6
wined3d: Get rid of IWineD3DBaseTexture::GetSubResourceDesc().
2011-03-10 12:53:13 +01:00
Henri Verbeet
63b72d789d
wined3d: Move the GetLevelDesc() functions to the IWineD3DBaseTexture interface.
2011-03-09 12:29:04 +01:00
Henri Verbeet
756fdb7c5a
wined3d: Merge the various resource desc structures.
2011-03-09 12:28:58 +01:00
Henri Verbeet
a27ee75ed2
wined3d: Remove COM from the buffer implementation.
2011-03-04 16:25:58 +01:00
Henri Verbeet
b7c427b483
ddraw: Just pass NULL as index buffer parent.
...
Since the parent is just an opaque pointer instead of a COM object now, it can
just be NULL instead of needing IParent hacks.
2011-03-04 16:25:58 +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
Michael Stefaniuc
4a2ac6c8bd
ddraw: Drop "Thunk_" from the names of the IDirect3DDevice3 methods.
2011-01-20 12:22:16 +01:00