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
Andrew Nguyen
94785ab4d5
d3d9: Increment the reference count of the IDirect3D9 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
Henri Verbeet
8d4ca1f815
wined3d: Remove COM from the device implementation.
2011-05-17 10:06:18 +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
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
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
Michael Stefaniuc
a159569115
d3d9: COM cleanup for the IDirect3D9Ex iface.
2011-04-11 12:10:47 +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
b8c40f3a7e
wined3d: Get rid of IWineD3DCubeTexture.
2011-03-18 15:59:04 +01:00
Henri Verbeet
f1ec3820d7
wined3d: Get rid of IWineD3DTexture.
2011-03-17 10:40:52 +01:00
Henri Verbeet
ed0037854a
wined3d: Get rid of IWineD3DVolumeTexture.
2011-03-16 14:14:21 +01:00
Henri Verbeet
a27ee75ed2
wined3d: Remove COM from the buffer implementation.
2011-03-04 16:25:58 +01:00
Henri Verbeet
a5fe3610ad
wined3d: Remove COM from the query implementation.
2011-02-04 15:25:32 +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
cd957f5b64
d3d9: Partially implement IDirect3D9Ex::CreateDeviceEx().
2010-10-27 12:12:00 +02:00
Henri Verbeet
2465b4cf01
d3d9: Move device functions to device.c.
2010-09-01 14:01:02 +02:00
Henri Verbeet
cc5271d1b7
wined3d: Rename WINED3DFORMAT to wined3d_format_id.
2010-08-24 12:25:01 +02: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
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
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
b1ede91bfc
d3d9: Mark internal symbols hidden.
2009-09-16 13:05:34 -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
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
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
Stefan Dösinger
cb1c9dcda9
d3d: Remove the format from index buffers.
2009-04-09 16:28:25 +02:00
Stefan Dösinger
77e6dcca02
d3d9: Store the FVF in the d3d9 vertex buffer.
2009-04-09 16:27:52 +02:00
Stefan Dösinger
513a493f00
wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer.
2009-04-08 11:37:29 +02: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
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
61a9efc4b9
d3d9: Explicitly convert between D3DFORMAT and WINED3DFORMAT values.
2009-02-20 11:10:14 +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
Alexandre Julliard
8eccb01a47
d3d9: Make some functions static.
2008-12-04 12:47:04 +01:00
Henri Verbeet
a6917b143d
wined3d: Use IDL to generate wined3d.h.
2008-11-25 13:37:22 +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
Stefan Dösinger
c1a0037b88
d3d9: IDirect3DDevice9Ex stub.
2008-03-03 20:48:50 +01:00
Stefan Dösinger
d9f9725993
d3d9: Add an IDirect3D9Ex stub.
2008-03-03 20:48:05 +01:00
Stefan Dösinger
ef4119029b
d3d9: Implement the device lost state.
2008-02-07 13:05:37 +01:00
Alexandre Julliard
980ee365a0
wined3d: Use unsigned int instead of size_t for element counts.
2008-01-07 17:17:04 +01:00
Stefan Dösinger
01c6c982bb
d3d9: Some caps fixes.
2007-08-21 13:35:35 +02:00
Stefan Dösinger
c4b801b7d1
d3d9: Add a dll global critical section.
2007-06-14 13:23:04 +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
725f4bfeb1
d3d9: Rework the converted vertex declaration management.
...
Instead of creating a converted declaration each time SetFVF is
called, exactly one declaration is created for each FVF(on demand) and
stored for the lifetime of the device. This avoids memory leaks and
makes keeping track of converted declarations easier. Wether a
declaration is converted from a fvf or not is now a static information
inside the declaration. Those declarations are not destroyed in
VertexDeclaration::Release, they stay for the lifetime of the
device. This keeps us free from tracking the declaration through
stateblocks
2007-04-18 13:13:45 +02:00
Stefan Dösinger
725057da47
d3d: Remove dependency on ddraw.h header.
2007-04-16 13:20:15 +02:00
Stefan Dösinger
7f5dccb696
wined3d: Properly release the converted vertex declaration.
2007-02-14 20:46:39 +01:00
H. Verbeet
dea795f7ac
d3d9: Don't store the d3d9 declaration in the wined3d object.
2007-02-14 13:54:42 +01:00
Markus Amsler
d80dc79280
d3d9: Handle volume container in d3d9.
2006-12-18 12:08:08 +01:00
Markus Amsler
467b1dd3ad
d3d9: Handle surface container in d3d9.
2006-12-18 12:08:02 +01:00
Markus Amsler
73b5fb059f
d3d9: Fix implicit swap chain refcounting.
2006-12-18 12:07:38 +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
f9f3ec2f00
d3d9: Fix implicit surface refcounting.
2006-12-18 12:07:09 +01:00
Markus Amsler
63e23995bc
d3d9: Handle volume refcount forwarding in d3d9.
2006-12-18 12:02:06 +01:00
Markus Amsler
04dcffe393
d3d9: Handle surface refcount forwarding in d3d9.
2006-12-18 12:01:58 +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
Alexandre Julliard
46dd467941
d3d9: Include wingdi.h, not gdi.h.
2006-11-17 12:46:15 +01:00
Ivan Gyurdiev
1309844913
wined3d: Implement FVF to DECL9 conversion (with tests).
2006-07-06 16:07:38 +02:00
Alexandre Julliard
7b27b33495
d3d9: Remove dependencies on OpenGL headers and libraries.
2006-06-15 16:52:01 +02:00
Alexandre Julliard
c30d4ecd81
d3d9: Make the virtual table functions static where possible.
2006-06-10 11:51:05 +02:00
Vitaliy Margolen
19d19b2b79
d3d9: Add reference to the parent device for surfaces.
...
Allow some objects to have no parent device.
Tighten refcount tests and test refound decrement on Release.
2006-05-30 12:34:22 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Vitaliy Margolen
6dcae77cc9
d3d9: All objects created by device should keep reference to it.
2006-05-22 11:31:45 +02:00