Henri Verbeet
1993727ee7
d3d8: Get rid of IDirect3DVertexBuffer8Impl.
2012-05-22 18:07:05 +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
27ca37dbe0
d3d8: Get rid of IDirect3DIndexBuffer8Impl.
2012-05-21 21:31:13 +02:00
Henri Verbeet
9b085a9260
d3d8: Get rid of IDirect3DDevice8Impl.
2012-05-21 21:31:10 +02:00
Henri Verbeet
e103a7a52d
d3d8: Get rid of IDirect3D8Impl.
2012-05-03 23:45:05 +02:00
Henri Verbeet
d9000aeec3
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetStreamSource().
2012-04-24 11:29:33 +02:00
Henri Verbeet
53e9cf8ab4
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetIndices().
2012-04-24 11:29:29 +02:00
Henri Verbeet
dd8ed6f8a9
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetTexture().
2012-04-23 11:44:43 +02:00
Henri Verbeet
7024ffac9a
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetDepthStencilSurface().
2012-04-23 11:44:39 +02:00
Henri Verbeet
17b83cd254
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetRenderTarget().
2012-04-23 11:44:35 +02:00
Henri Verbeet
230c5fc7f9
d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetBackBuffer().
2012-04-20 11:57:47 +02:00
Henri Verbeet
5cc7d0645b
d3d8: Use the surface implementation pointer in reset_enum_callback().
2012-04-20 11:57:43 +02:00
Henri Verbeet
83761d20a8
d3d8: Get rid of IDirect3DBaseTexture8Impl.
2012-04-19 12:01:47 +02:00
Henri Verbeet
98696724b7
d3d8: Get rid of IDirect3DVolumeTexture8Impl.
2012-04-18 13:58:55 +02:00
Henri Verbeet
b8d07a2b44
d3d8: Get rid of IDirect3DCubeTexture8Impl.
2012-04-17 11:47:02 +02:00
Henri Verbeet
7bb17f49e3
d3d8: Get rid of IDirect3DTexture8Impl.
2012-04-17 11:46:59 +02:00
Henri Verbeet
925a791dff
d3d8: Don't return a pointer to the implementation in IDirect3DDevice8Impl_QueryInterface().
2012-03-26 18:15:06 +02:00
Stefan Dösinger
3c1d5f6c5d
d3d8/tests: Port the depth blit test to d3d8.
2012-03-09 11:28:57 +01:00
Henri Verbeet
24d4a52e85
d3d8: Remove COM from the pixel shader implementation.
2012-01-25 11:25:40 +01:00
Henri Verbeet
483b17d410
d3d8: Remove COM from the vertex shader implementation.
2012-01-25 11:25:35 +01:00
Henri Verbeet
f056fe7bb5
d3d8: Remove COM from the vertex declaration implementation.
2012-01-25 11:25:27 +01:00
Henri Verbeet
ed417a6f13
wined3d: Get rid of the WINED3DSTATEBLOCKTYPE typedef.
2012-01-18 12:37:38 +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
e70990041b
wined3d: Get rid of the WINED3DTEXTUREFILTERTYPE typedef.
2012-01-13 17:34:31 +01:00
Henri Verbeet
a44b062aed
wined3d: Get rid of the WINED3DCUBEMAP_FACES typedef.
2012-01-13 17:34:31 +01:00
Henri Verbeet
a206f43648
wined3d: Get rid of wined3d_surface_set_format().
2012-01-13 17:34:30 +01:00
Henri Verbeet
43fcbcb36e
wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef.
2012-01-10 10:47:27 +01:00
Henri Verbeet
9a8491045e
wined3d: Get rid of the WINED3DMULTISAMPLE_TYPE typedef.
2012-01-09 12:22:17 +01:00
Henri Verbeet
08545dc739
wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef.
2012-01-09 12:22:12 +01:00
Henri Verbeet
45f6def784
wined3d: Get rid of the WINED3DBACKBUFFER_TYPE typedef.
2012-01-06 19:24:21 +01:00
Henri Verbeet
3082c1a9de
wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef.
2011-12-20 10:11:47 +01:00
Henri Verbeet
360c1114d6
wined3d: Get rid of the WINED3DRASTER_STATUS typedef.
2011-12-02 11:51:33 +01:00
Henri Verbeet
94c9b0b4fc
wined3d: Get rid of the WINED3DPRESENT_PARAMETERS typedef.
2011-12-02 11:51:29 +01:00
Henri Verbeet
82dd612d50
ddraw: Resize the swapchain window on mode changes in exclusive mode.
2011-11-30 11:50:42 +01:00
Henri Verbeet
d1327bbefe
wined3d: Get rid of the WINED3DDEVICE_CREATION_PARAMETERS typedef.
2011-11-28 16:40:47 +01:00
Henri Verbeet
1c74172a28
wined3d: Get rid of the WINED3DCLIPSTATUS typedef.
2011-11-25 16:21:57 +01:00
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
94fd6dc03d
d3d8: Implement CopyRects() on top of wined3d_surface_blt().
2011-10-31 16:46:19 +01: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
054ec0b42b
d3d8: Remove the palette implementation methods.
2011-10-11 13:37:49 +02:00
Stefan Dösinger
14a245690d
d3d8: Implement FPUSETUP for msvc.
2011-09-26 17:59:45 +02:00
Frédéric Delanoy
f932abf326
dlls: Assorted spelling fixes.
2011-08-01 18:26:27 +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
9ab233ea24
d3d8: COM cleanup for the IDirect3DVertexBuffer8 iface.
2011-07-08 14:45:14 +02:00
Michael Stefaniuc
aa8e4dd81b
d3d8: Use unsafe_impl_from_IDirect3DVertexBuffer8 for app provided ifaces.
2011-07-08 14:45:09 +02:00
Michael Stefaniuc
638cf80c4f
d3d8: COM cleanup for the IDirect3DIndexBuffer8 iface.
2011-07-05 13:47:38 +02:00
Michael Stefaniuc
c1eeeec2d2
d3d8: Use unsafe_impl_from_IDirect3DIndexBuffer8 for an app provided iface.
2011-07-05 13:47:35 +02:00
Michael Stefaniuc
d615be8eea
d3d8: COM cleanup for the IDirect3DSurface8 iface.
2011-07-05 13:47:30 +02:00
Michael Stefaniuc
cce8294f39
d3d8: Use unsafe_impl_from_IDirect3DSurface8 for app provided ifaces.
2011-07-05 13:47:26 +02:00
Michael Stefaniuc
bdd8459a53
d3d8: Avoid an unsafe IDirect3DSurface8 to object cast.
2011-07-05 13:47:22 +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
Henri Verbeet
b296f181dd
wined3d: Explicitly set surface alignment in the client libs.
...
Instead of using dxVersion.
2011-06-24 08:49:42 -05:00
Stefan Dösinger
ae5ca837d5
d3d8: Don't print the ResourceManagerDiscardBytes fixme when Bytes == 0.
2011-06-17 15:37:38 +02:00
Andrew Nguyen
174b03cad8
d3d8: Increment the reference count of the IDirect3D8 parent when creating a device.
2011-06-06 21:49:19 +02:00
Henri Verbeet
3032b40c80
wined3d: Get rid of the IWineD3DDeviceParent interface.
2011-05-19 10:06:21 +02:00
Stefan Dösinger
e55b3bef0f
d3d8: Add a float to DWORD cast.
2011-05-18 16:42:03 +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
7b1e081515
d3d8: Map ZBIAS values to a smaller depth range.
2011-05-10 14:04:55 +02:00
Henri Verbeet
693fb6d56c
d3d8: Check for D3DPOOL_DEFAULT resources before doing a Reset().
2011-05-04 17:26:46 +02:00
Henri Verbeet
1c1de920e3
wined3d: Remove COM from the surface implementation.
2011-04-29 16:52:13 +02:00
Stefan Dösinger
e140077cc7
d3d8: Add more tests for NULL render targets.
2011-04-26 16:17:45 +02:00
Stefan Dösinger
463162b414
d3d8: Don't reapply the old DS if SetDepthStencilSurface failed.
2011-04-26 16:17:43 +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
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
Henri Verbeet
4e56a4fe79
d3d8: Get rid of the implicit swapchain refcounting hacks.
2011-04-11 23:54:13 +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
Michael Stefaniuc
d71d1cf703
d3d8: COM cleanup for the IDirect3DVolumeTexture8 iface.
2011-03-17 17:45:02 +01:00
Michael Stefaniuc
bc6786d0e5
d3d8: COM cleanup in shader.c.
2011-03-15 17:14:07 +01:00
Stefan Dösinger
733f81ef74
d3d8: Disallow z buffers smaller than the color buffer.
2011-03-14 13:10:08 +01:00
Henri Verbeet
2b18192e7a
wined3d: Get rid of IWineD3DSurface::GetDesc().
2011-03-11 11:40:31 +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
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
Michael Stefaniuc
8bf1940c62
d3d8: COM cleanup for the IDirect3DTexture8 iface.
2011-01-31 13:01:09 +01:00
Michael Stefaniuc
8a13f059ea
d3d8: COM cleanup for the IDirect3DCubeTexture8 iface.
2011-01-31 13:01:09 +01:00
Michael Stefaniuc
8ec3238b5e
d3d8: COM cleanup for the IDirect3DSwapChain8 iface.
2011-01-31 13:01:08 +01:00
Michael Stefaniuc
05b6032fb6
d3d8: COM cleanup for the IDirect3DVolume8 iface.
2011-01-31 13:01:08 +01:00
Henri Verbeet
4b109ff1f8
wined3d: Remove COM from the stateblock.
2011-01-31 12:24:58 +01:00
Michael Stefaniuc
7f184144ff
d3d8: COM cleanup for the IWineD3DDeviceParent_iface.
2011-01-28 11:59:45 +01:00
Michael Stefaniuc
54a61ae734
d3d8: Finish the COM cleanup of the IDirect3DDevice8 iface.
2011-01-28 11:59:39 +01:00
Michael Stefaniuc
dec337acac
d3d8: Use impl_from_IDirect3DDevice8() instead of the iface to object cast.
2011-01-28 11:59:34 +01:00
Michael Stefaniuc
bb6ae095d4
d3d8: Pass an object instead of an iface to an internal function.
2011-01-26 15:00:13 +01:00
Henri Verbeet
f024e2372f
d3d8: Fix some return values.
2010-11-16 13:48:54 +01:00
Henri Verbeet
7e3985e1fe
ddraw: Setup the device window in SetCooperativeLevel().
2010-11-08 13:30:54 +01:00
David Adam
743e9b35a1
d3d8: ApplyStateBlock with a zero token returns D3D_OK.
2010-10-25 15:30:46 +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
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
Henri Verbeet
7d5666e084
d3d8: Set the FPU control word on device creation.
2010-05-26 17:36:32 +02:00
Alexandre Julliard
26cc3efb33
d3d8: Avoid using a pointer difference in a trace.
2010-04-09 15:54:54 +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
2e27ab6b67
d3d8: Add a separate function for swapchain initialization.
2009-12-21 15:01:25 +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
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
Stefan Dösinger
8eef221d20
d3d: Handle the pointsize_min default difference in d3d8.
2009-11-03 21:22:12 +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
f8bd01a315
d3d8: Add traces.
2009-10-19 11:45:57 +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
Stefan Dösinger
e80144c403
d3d: Make EndScene calls 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
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
717419da11
d3d8: Add a separate function for pixel shader initialization.
2009-09-24 13:24:47 +02:00
Henri Verbeet
afed6a3f77
d3d8: Add a separate function for vertex shader initialization.
2009-09-24 13:24:11 +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
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
76c61cf536
d3d8: Add a separate function for texture initialization.
2009-09-17 10:10:16 -05:00
Henri Verbeet
b5b58e423d
d3d8: Add a separate function for cube texture initialization.
2009-09-17 10:09:33 -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
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
Stefan Dösinger
6f5a1d9a15
wined3d: Filter WINED3DSTENCILCAPS_TWOSIDED in d3d8.
2009-08-07 14:56:48 +02:00
Henri Verbeet
a25947fa7e
d3d8: Add WINED3DFMT_W11V11U10 <=> D3DFMT_W11V11U10 conversion.
2009-06-19 13:52:42 +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
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
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
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
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
Henri Verbeet
24100cd026
d3d8: Release the d3d8 shader once we're done with it in IDirect3DDevice8Impl_GetPixelShader().
2009-03-13 11:28:35 +01:00
Henri Verbeet
f9d82ed1de
d3d8: Handles aren't supposed to be pointers.
...
This might even make d3d8 a bit more 64-bit safe.
2009-03-10 12:08:58 +01:00
Henri Verbeet
cbc8630019
d3d8: Make the shader handle table a bit more generic.
2009-03-10 12:08:32 +01:00
Henri Verbeet
954c3e22e1
d3d8: Don't call Release() in a while loop.
...
There should only ever be a single reference to these objects, since only
their handle is exposed outside d3d8. Should there be more references than
that, calling Release() in a while loop probably isn't the right approach.
2009-03-10 12:07:59 +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
d575b5fecb
d3d8: Explicitly convert between D3DFORMAT and WINED3DFORMAT values.
2009-02-20 11:09:54 +01:00
Francois Gouget
1f601015cd
d3d8: Make some device_parent_*() functions static.
2009-01-26 15:13:29 +01:00
Henri Verbeet
b5eaca542e
d3d8: Properly test for dynamic usage in device_parent_CreateSurface().
2009-01-16 13:29:52 +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
Michael Stefaniuc
357c3f4a2c
d3d8: Remove superfluous pointer casts.
2009-01-14 13:51:01 +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
007c648c20
d3d: Correct some debug levels.
2008-12-30 11:36:50 +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
Henri Verbeet
0a47e1beb4
d3d8: Use the wined3d declaration to retrieve the d3d8 shader in IDirect3DDevice8Impl_GetVertexShader().
...
This makes it no longer necessary to create a wined3d vertex shader
when the d3d8 vertex shader has a NULL function.
2008-12-15 14:00:46 +01:00
Henri Verbeet
b9468a89fc
d3d8: Create a d3d8 declaration as parent for FVF based declarations.
2008-12-15 14:00:37 +01:00
Francois Gouget
ec7cbc26f5
d3d8: Make D3D8CB_CreateSurface() static.
2008-12-15 12:25:02 +01:00
Alexandre Julliard
00e0d1510b
d3d8: Make a function static.
2008-12-04 12:46:52 +01:00
Francois Gouget
d3c7b2f7cc
d3d8: Remove WINAPI on static functions where not needed.
2008-11-24 14:18:42 +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
Henri Verbeet
092b51e82a
wined3d: Rename CreateAdditionalSwapChain to CreateSwapChain.
2008-10-28 12:46:46 +01:00
Henri Verbeet
43f5d8e5ad
d3d8: Fix IDirect3DDevice8::SetRenderTarget().
...
The render target should be left alone if the render target argument is
NULL. WineD3D calls should be done inside the critical section.
2008-09-10 12:05:25 +02:00
Henri Verbeet
01539fb926
d3d8: GetDepthStencilSurface returns D3DERR_NOTFOUND when no depth stencil is present.
2008-09-10 12:05:10 +02:00
H. Verbeet
898c2c9778
d3d8: Don't store shader_handle's.
...
They're not stable across table resizes.
2008-08-20 10:26:51 +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
Tobias Jakobi
9ba3d03e78
d3d8: Fix IDirect3DDevice8::CreateImageSurface pool type.
2008-07-08 21:08:32 +02:00
Andrew Talbot
c8d495bac1
d3d8: Dangling pointers fix.
2008-05-05 19:46:15 +02:00
Stefan Dösinger
0fa0df7843
d3d8: Reject broken normal declaration types with fixed function.
2008-03-28 14:49:30 +01:00
Austin English
4777f26d61
Spelling fixes.
2008-03-27 11:10:07 +01:00
Stefan Dösinger
8869c0f147
d3d: De-pointerize the WINED3DCAPS structure.
2008-03-25 19:36:38 +01:00
Alexandre Julliard
980ee365a0
wined3d: Use unsigned int instead of size_t for element counts.
2008-01-07 17:17:04 +01:00
Gerald Pfeifer
55e92b9410
d3d8: Fix type of loop variable.
2008-01-04 12:12:31 +01:00
Gerald Pfeifer
21a9c2d2f9
wined3d: Removed dead FIXME checks.
2008-01-03 11:53:29 +01:00
Andrew Talbot
70d82dfbd9
d3d8: Remove unneeded casts.
2008-01-02 12:38:41 +01:00
Andrew Talbot
cd2964483a
d3d8: Remove unneeded casts.
2007-12-05 12:04:39 +01:00
Stefan Dösinger
6cecaa9852
d3d8: Release the vertex declarations array when destroying the device.
2007-11-20 12:53:00 +01:00
Stefan Dösinger
6ec6c941fa
wined3d: BaseVertexIndex can be negative.
2007-08-27 12:00:42 +02:00
Stefan Dösinger
a06e002e93
wined3d: Add a wined3d private WINED3DSBT_RECORDED.
2007-08-15 09:36:20 +02:00
Stefan Dösinger
527295e57f
d3d8: Convert fvfs to vertex declarations.
2007-06-21 13:08:57 +02:00
Stefan Dösinger
09aefe2108
d3d8: Hold the lock in IDirect3DDevice8 methods.
2007-06-11 13:54:33 +02:00
H. Verbeet
6ee356fca0
wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead.
2007-06-07 11:20:48 +02:00
H. Verbeet
785771272a
wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.
2007-06-06 12:10:47 +02:00
Stefan Dösinger
94b3fddec8
d3d: Pass the cube face to Create*Texture's surface creation callback.
2007-05-01 11:42:25 +02:00
Stefan Dösinger
725057da47
d3d: Remove dependency on ddraw.h header.
2007-04-16 13:20:15 +02:00
Andrew Talbot
fb367f813a
d3d8: Void functions should not return a value.
2007-04-09 12:15:28 +02:00
Felix Nawothnig
ea0d7f17ca
d3d8: Add missing relay trace.
2007-04-07 11:01:26 +02:00
H. Verbeet
b68c72faef
d3d8: Implement IDirect3DDevice8_GetVertexShaderDeclaration.
2007-03-08 11:58:41 +01:00
H. Verbeet
138826b8cc
d3d8: Save the d3d8 vertex declaration.
2007-03-08 11:58:23 +01:00
Stefan Dösinger
ef68e32b03
wined3d/d3d8: Move todo about sw vp usage to d3d8.
2007-02-20 11:45:56 +01:00
H. Verbeet
a4bc52a89c
wined3d: Fix WINED3DPRESENT_PARAMETERS and use it instead of D3DPRESENT_PARAMETERS.
2007-02-16 12:31:03 +01:00
Stefan Dösinger
d74712690c
d3d8: Set WINED3DPRESENT_PARAMETERS.MultiSampleQuality to a valid pointer.
2007-02-15 17:22:35 +01:00
H. Verbeet
157205c085
d3d8: Don't store the d3d8 declaration in the wined3d object.
2007-02-14 13:56:50 +01:00
H. Verbeet
efed9aea1f
d3d8: Move loading local d3d8 vertex shader constants from wined3d to d3d8.
2007-02-14 13:54:55 +01:00
H. Verbeet
dea795f7ac
d3d9: Don't store the d3d9 declaration in the wined3d object.
2007-02-14 13:54:42 +01:00
H. Verbeet
32e5cac2be
wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl.
2007-02-14 13:54:29 +01:00
H. Verbeet
5ad6766c85
d3d8: Store the d3d8 vertex declaration in the d3d8 vertex shader.
2007-02-14 13:54:17 +01:00
Stefan Dösinger
00aa8ab08c
d3d8: Deleting bound shaders unbinds them.
2007-02-13 12:07:46 +01:00
H. Verbeet
d73e5d6fc8
d3d8: IDirect3DDevice8Impl_GetVertexShaderDeclaration gets passed a handle instead of a pointer.
2007-01-08 11:46:05 +01:00
H. Verbeet
6e3b732ffb
d3d8: IDirect3DDevice8Impl_GetVertexShaderFunction gets passed a handle instead of a pointer.
2007-01-08 11:46:05 +01:00
H. Verbeet
cae630f92e
d3d8: IDirect3DDevice8Impl_GetPixelShaderFunction gets passed a handle instead of a pointer.
2007-01-08 11:46:05 +01:00
Stefan Dösinger
71631f7638
wined3d: Use the baseVertexIndex in the stateblock.
2007-01-03 11:02:51 +01:00
Chris Robinson
b66a52856c
d3d8: Don't report Shader Model 2.0 or higher.
2006-12-29 12:49:41 +01:00
Chris Robinson
b7b9d4e3c7
d3d: GetStreamSource on a stream with NULL data isn't an error.
2006-12-26 12:52:54 +01:00
Markus Amsler
0531858146
d3d8: Handle surface container in d3d8.
2006-12-18 12:07:46 +01:00
Markus Amsler
5e0fc62135
d3d: Callback infrastructure for implicit swap chain destruction in IWineD3DDevice.
2006-12-18 12:07:26 +01:00
Markus Amsler
4745618487
d3d8: Fix implicit surface refcounting.
2006-12-06 12:41:27 +01:00
Markus Amsler
0d725490d6
d3d8: Handle surface refcount forwarding in d3d8.
2006-12-06 12:40:12 +01:00
Markus Amsler
3fd04308ab
d3d: Callback infrastructure for implicit depth stencil surface destruction in IWineD3DDevice.
2006-12-06 12:39:30 +01:00
Markus Amsler
a60d4b2d2f
d3d: Pass the superior creating object down to the callback functions.
2006-12-04 12:40:38 +01:00
Markus Amsler
44e6c6b67a
d3d8: Use correct COM macros.
2006-12-01 12:27:17 +01:00
Markus Amsler
bd072332e1
Revert "d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.".
...
This reverts commit 167b83c28a
.
2006-11-30 16:04:00 +01:00
Markus Amsler
f8e7ddd798
Revert "d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.".
...
This reverts commit 478a414e58
.
2006-11-30 16:04:00 +01:00
Markus Amsler
b657cd5f58
Revert "d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.".
...
This reverts commit a7518f6f54
.
2006-11-30 16:04:00 +01:00
Markus Amsler
f5204b8afe
Revert "d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.".
...
This reverts commit 18546a65e6
.
2006-11-30 16:04:00 +01:00
Markus Amsler
5bec2f57a1
Revert "d3d: Remove AddRef from IWineD3DDevice_GetTexture.".
...
This reverts commit 274df6ef88
.
2006-11-30 16:04:00 +01:00
Markus Amsler
3a270375d7
Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".
...
This reverts commit 16b1e046d8
.
2006-11-30 16:03:59 +01:00