Commit Graph

248 Commits

Author SHA1 Message Date
Michael Stefaniuc 3808a6f371 d3d10core: COM cleanup for the ID3D10InputLayout iface. 2011-07-12 13:25:43 +02:00
Michael Stefaniuc 6c866e06bf d3d10core: Use unsafe_impl_from_ID3D10InputLayout for an app provided iface. 2011-07-12 13:25:40 +02:00
Michael Stefaniuc dc3ee8b947 d3d10core: COM cleanup for the ID3D10RenderTargetView iface. 2011-07-12 13:25:37 +02:00
Michael Stefaniuc 0b78866a0f d3d10core: Use unsafe_impl_from_ID3D10RenderTargetView for app provided ifaces. 2011-07-12 13:25:34 +02:00
Michael Stefaniuc f196050f28 d3d10core: COM cleanup for the ID3D10PixelShader iface. 2011-07-12 11:37:01 +02:00
Michael Stefaniuc 887a4ff3cc d3d10core: Use unsafe_impl_from_ID3D10PixelShader for an app provided iface. 2011-07-12 11:36:57 +02:00
Michael Stefaniuc cc0cc6a80f d3d10core: COM cleanup for the ID3D10VertexShader iface. 2011-07-12 11:36:53 +02:00
Michael Stefaniuc ec415eaf3c d3d10core: Use unsafe_impl_from_ID3D10VertexShader for an app provided iface. 2011-07-12 11:36:49 +02:00
Michael Stefaniuc eeacb8f2c9 d3d10core: COM cleanup for the ID3D10Device iface. 2011-07-11 18:32:23 +02:00
Michael Stefaniuc 2f76274df9 d3d10core: COM cleanup for the ID3D10Query iface. 2011-06-02 16:24:07 +02:00
Michael Stefaniuc db9823e02a d3d10core: COM cleanup for the ID3D10SamplerState iface. 2011-06-02 16:24:03 +02:00
Michael Stefaniuc 54ac05a871 d3d10core: COM cleanup for the ID3D10RasterizerState iface. 2011-06-02 16:24:00 +02:00
Michael Stefaniuc 815470e68b d3d10core: COM cleanup for the ID3D10DepthStencilState iface. 2011-06-02 16:23:54 +02:00
Michael Stefaniuc a4a4a420f8 d3d10core: COM cleanup for the ID3D10BlendState iface. 2011-06-01 15:16:36 +02:00
Michael Stefaniuc 2b1001907f d3d10core: COM cleanup for the ID3D10GeometryShader iface. 2011-06-01 15:16:32 +02:00
Michael Stefaniuc 36de21b3a1 d3d10core: COM cleanup for the ID3D10ShaderResourceView iface. 2011-06-01 15:16:29 +02:00
Michael Stefaniuc 7aff686ea1 d3d10core: COM cleanup for the ID3D10DepthStencilView iface. 2011-06-01 15:16:23 +02:00
Michael Stefaniuc a8712d5522 d3d10core: COM cleanup for the ID3D10Texture3D iface. 2011-06-01 15:16:19 +02:00
Michael Stefaniuc 7d295ddfa4 d3d10core: COM cleanup for the ID3D10Texture2D iface. 2011-06-01 15:15:57 +02:00
Henri Verbeet 3032b40c80 wined3d: Get rid of the IWineD3DDeviceParent interface. 2011-05-19 10:06:21 +02:00
Frédéric Delanoy 32f79acc1f d3d10core: dxgi_format_from_wined3dformat should return DXGI_FORMAT enum values in all cases. 2011-05-18 17:07:19 +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
Marcus Meissner cb58f81a38 d3d10core: Mark a struct as static. 2011-05-16 16:35:33 +02:00
Henri Verbeet 00a5f38595 wined3d: Remove object creation methods from the IWineD3DDevice interface. 2011-05-11 14:56:48 +02:00
Henri Verbeet 1c1de920e3 wined3d: Remove COM from the surface implementation. 2011-04-29 16:52:13 +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 2ab5b833d7 wined3d: Remove COM from the rendertarget view implementation. 2011-04-06 12:05:07 +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 9ea2ee5f4e wined3d: Get rid of IWineD3DGeometryShader. 2011-03-30 12:17:56 +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 ed0037854a wined3d: Get rid of IWineD3DVolumeTexture. 2011-03-16 14:14:21 +01:00
Henri Verbeet e409b83bcb wined3d: Get rid of IWineD3DVolumeTexture::Unmap(). 2011-03-15 17:14:06 +01:00
Henri Verbeet 4c3d55f10e wined3d: Get rid of IWineD3DVolumeTexture::Map(). 2011-03-15 17:14:06 +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 bbc7b5ac20 d3d10core: Try to create a software adapter when no regular adapters are found as well. 2010-10-25 14:29:42 +02:00
Henri Verbeet 4a626fda42 d3d10core: Implement ID3D10Texture3D::Map(). 2010-10-20 18:37:07 +02:00
Henri Verbeet 292c8c36de d3d10core: Implement ID3D10Texture3D::Unmap(). 2010-10-20 18:37:07 +02:00
Henri Verbeet 8ebc180055 d3d10core: Implement ID3D10Buffer::Map(). 2010-10-15 16:20:02 +02:00
Henri Verbeet 0749d139b4 d3d10core: Implement ID3D10Buffer::Unmap(). 2010-10-15 16:19:58 +02:00
Henri Verbeet 0d4e0bc9ba d3d10core: Add a stub ID3D10Texture3D implementation. 2010-10-14 17:54:52 +02:00
Henri Verbeet 81c3f289a3 d3d10core: Rename texture2d.c to texture.c. 2010-10-14 17:54:52 +02:00
Henri Verbeet 07ace95fcd d3d10core: Implement device_parent_CreateVolume(). 2010-10-14 17:54:52 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +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 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 cc5271d1b7 wined3d: Rename WINED3DFORMAT to wined3d_format_id. 2010-08-24 12:25:01 +02:00
Henri Verbeet b93a9b37fa wined3d: Pass a WINED3DCOLORVALUE structure to IWineD3DDeviceImpl_ClearRendertargetView().
The structure is nicer to work with than the array.
2010-08-23 12:05:24 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Paul Vriens 7cc429312e d3d10core/tests: Fix a test failure when no adapters are present. 2010-02-01 12:49:37 +01:00
Henri Verbeet 73c6355d75 d3d10core: Add a wined3d geoemtry shader to struct d3d10_geometry_shader. 2010-01-04 11:41:28 +01:00
Henri Verbeet e4e1c27987 d3d10core: Add a stub ID3D10Query implementation. 2009-12-14 12:04:05 +01:00
Henri Verbeet efbd38ae84 dxgi: The "unknown0" parameter to DXGID3D10CreateDevice() is a pointer.
Fixes stack corruption in the 64-bit tests. Thanks to Paul Vriens for debugging this.
2009-12-08 12:33:43 +01:00
Henri Verbeet 03f61decc9 d3d10core: Allow a NULL vertex buffer to be set in IASetVertexBuffers(). 2009-12-02 13:06:07 +01:00
Henri Verbeet ee396dda28 d3d10core: Allow a NULL input layout to be set in IASetInputLayout(). 2009-12-02 13:06:07 +01:00
Henri Verbeet ccbcf8f291 d3d10core: Add a separate function for device initialization. 2009-11-19 12:22:04 +01:00
Henri Verbeet e3ac26d58c d3d10core: Add a stub ID3D10BlendState implementation. 2009-11-04 13:07:56 +01:00
Henri Verbeet 6d6d8eb1d8 d3d10core: Add a stub ID3D10SamplerState implementation. 2009-11-03 21:17:07 +01:00
Henri Verbeet 4b341c252c d3d10core: Add a stub ID3D10RasterizerState implementation. 2009-11-03 21:17:03 +01:00
Henri Verbeet d7589589a9 d3d10core: Add a stub ID3D10DepthStencilState implementation. 2009-11-03 21:17:00 +01:00
Henri Verbeet 6075f57168 d3d10core: Add a stub ID3D10ShaderResourceView implementation. 2009-11-03 21:16:23 +01:00
Henri Verbeet 4bb4bad11a d3d10core: Add a stub ID3D10DepthStencilView implementation. 2009-11-03 21:16:17 +01:00
Henri Verbeet c214022eca d3d10core: Fix a small whitespace error. 2009-10-30 11:29:18 +01:00
Henri Verbeet 3333b12487 d3d10core: Add a separate function for d3d10_rendertarget_view initialization. 2009-10-30 11:29:11 +01:00
Henri Verbeet 39d6f64885 d3d10core: Add a separate function for d3d10_geometry_shader initialization. 2009-10-30 11:29:01 +01:00
Henri Verbeet 60e32659a7 wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer(). 2009-09-25 15:14:44 +02:00
Henri Verbeet 789372afa8 wined3d: Don't free D3D pixel shaders until the wined3d pixel shader is destroyed. 2009-09-24 13:24:53 +02:00
Henri Verbeet dde50a4748 d3d10core: Add a separate function for d3d10_pixel_shader initialization. 2009-09-24 13:24:34 +02:00
Henri Verbeet ca05ef5dd0 wined3d: Don't free D3D vertex shaders until the wined3d vertex shader is destroyed. 2009-09-24 13:24:19 +02:00
Henri Verbeet 0a72acc7f4 d3d10core: Add a separate function for d3d10_vertex_shader initialization. 2009-09-24 13:23:58 +02:00
Henri Verbeet 66a7236590 wined3d: Don't free D3D vertex declarations until the wined3d vertex declaration is destroyed. 2009-09-23 12:36:28 +02:00
Henri Verbeet cc68900d86 d3d10core: Add a separate function for d3d10_input_layout initialization. 2009-09-23 12:34:53 +02:00
Henri Verbeet 802674e078 d3d10core: Mark internal symbols hidden. 2009-09-22 16:17:44 +02:00
Henri Verbeet 93b0600829 wined3d: Don't free D3D buffers until the wined3d buffer is destroyed. 2009-09-18 08:55:25 -05:00
Henri Verbeet c2a240e8c0 d3d10core: Add a separate function for d3d10_buffer initialization. 2009-09-18 08:54:52 -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 57b196b2e4 d3d10core: Add a separate function for d3d10_texture2d initialization. 2009-09-15 14:32:17 -05:00
Henri Verbeet fa07d93730 d3d10core: Implement ID3D10Device::DrawIndexed(). 2009-09-11 12:09:27 +02:00
Henri Verbeet 956e800c81 d3d10core: Add an initial implementation of ID3D10Device::IASetIndexBuffer(). 2009-09-11 12:09:20 +02:00
Henri Verbeet 1ba006037c d3d10core: Use debugstr_a()/debugstr_an() to trace external strings. 2009-09-10 10:49:53 +02:00
Francois Gouget 3c80cf5210 d3d10core: Fix compilation on systems that don't support nameless unions. 2009-08-31 12:49:21 +02:00
Francois Gouget 64e419ab6c d3d10core/tests: Fix compilation on systems that don't support nameless unions. 2009-08-31 12:41:37 +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 71382b5cbb d3d10core: Don't complain as much about setting a NULL geometry shader.
Setting a NULL geometry shader doesn't hurt much, and it reduces console spam
a bit.
2009-05-28 12:42:18 +02:00
Henri Verbeet 057513cf66 d3d10core: Implement ID3D10Device::VSSetShader(). 2009-05-28 12:42:18 +02:00
Henri Verbeet fcee1b709c d3d10core: Implement ID3D10Device::CreateVertexShader(). 2009-05-26 13:50:01 +02:00
Henri Verbeet 32eb698612 d3d10core: Implement ID3D10Device::PSSetShader(). 2009-05-11 12:43:25 +02:00
Henri Verbeet cc4d5dc97f d3d10core: Release the wined3d shader when the d3d10 pixel shader is destroyed. 2009-05-11 12:43:20 +02:00
Henri Verbeet bb3b5a7305 d3d10core: Parse pixelshader output signatures and pass them to CreatePixelShader(). 2009-05-11 12:43:15 +02:00
Henri Verbeet d6fa27f5a1 d3d10core: Improve the shader input/output signature parsing code.
Make a copy of the string data, and move the function to shader.c.
2009-05-11 12:43:08 +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
Henri Verbeet f1023815ce wined3d: Add a wined3d pixel shader to struct d3d10_pixel_shader. 2009-04-27 13:25:32 +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
Henri Verbeet 4ccbc948a1 d3d10core: Set the initial buffer data, when present. 2009-03-31 12:42:07 +02:00
Henri Verbeet 9ef184c168 d3d10core: Implement ID3D10Device::IASetVertexBuffers(). 2009-03-31 12:41:54 +02:00
Henri Verbeet de7749b3fb d3d10core: Implement ID3D10Device::IASetInputLayout(). 2009-03-31 12:41:49 +02:00
Henri Verbeet ec0370a2d2 d3d10core: Create a vertex declaration from the input layout. 2009-03-30 15:11:46 +02:00
Henri Verbeet 7c3fa5d76d d3d10core: Add a DXBC parser.
We may want to push this into either wined3d or our future shader compiler
dll. It's not a whole lot of code though.
2009-03-30 15:11:38 +02:00
Henri Verbeet 27a6bb5f08 d3d10core: Only destroy the device when it doesn't have any references left. 2009-03-23 14:08:03 +01:00
Henri Verbeet 18300b8351 d3d10core: Implement ID3D10Device::Draw(). 2009-03-05 16:16:25 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 53239a9aa2 d3d10core: Add a stub ID3D10PixelShader implementation. 2009-03-04 12:07:20 +01:00
Henri Verbeet 972221f5ea d3d10core: Add a stub ID3D10GeometryShader implementation. 2009-03-04 12:07:20 +01:00
Henri Verbeet 7eb634976d d3d10core: Add a stub ID3D10VertexShader implementation. 2009-03-04 12:07:20 +01:00
Henri Verbeet 03fae2179f d3d10core: Add a stub ID3D10InputLayout implementation. 2009-03-04 12:07:20 +01:00
Henri Verbeet 1622f89ce9 d3d10core: Adjust a couple of FIXMEs. 2009-02-25 12:37:06 +01:00
Henri Verbeet 444de4aa12 d3d10core: Don't pass 1 for multisample type to wined3d.
It has a different meaning there.
2009-02-25 12:37:06 +01:00
Henri Verbeet 7facc6906d wined3d: Implement IWineD3DDeviceImpl_ClearRendertargetView(). 2009-02-25 12:37:06 +01:00
Henri Verbeet eda929d010 dxgi: Create a wined3d swapchain. 2009-02-24 16:57:29 +01:00
Henri Verbeet 91e4ec57cc d3d10core: Add a wined3d rendertarget view to the d3d10 rendertarget view. 2009-02-24 16:57:29 +01:00
Henri Verbeet 399d992a07 wined3d: Add IWineD3DBuffer, use it in d3d10core. 2009-02-23 12:20:45 +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 d28e5a0551 d3d10core: Convert between DXGI_FORMAT and WINED3DFORMAT values. 2009-02-20 11:11:01 +01:00
Francois Gouget 191eeef0e4 d3d10core: Make some device_parent_*() functions static. 2009-01-26 15:13:24 +01:00
Henri Verbeet 7742fe283a d3d10core: Add a small test for CreateRenderTargetView(). 2009-01-26 14:57:22 +01:00
Henri Verbeet 2953d81463 d3d10core: Handle a NULL view desc in CreateRenderTargetView(). 2009-01-26 14:57:18 +01:00
Henri Verbeet 9c1abc908a d3d10core: Implement ID3D10Buffer::GetType(). 2009-01-26 14:57:13 +01:00
Henri Verbeet 04e4abf677 d3d10core: Implement ID3D10Texture2D::GetType(). 2009-01-26 14:57:08 +01:00
Henri Verbeet 1fa7fea8a0 d3d10core: Implement ID3D10Texture2D::GetDesc(). 2009-01-26 14:57:02 +01:00
Henri Verbeet 6d2d5318c4 d3d10core: Add a stub ID3D10Buffer implementation. 2009-01-23 13:13:24 +01:00
Henri Verbeet b279d6574a d3d10core: Add a stub ID3D10RenderTargetView implementation. 2009-01-23 13:13:13 +01:00
Henri Verbeet 3dbe0f9a82 d3d10core: Remove a superfluous pointer cast. 2009-01-20 12:34:09 +01:00
Henri Verbeet c9f116a56f dxgi: Implement IDXGIDevice::CreateSurface(). 2009-01-19 13:36:25 +01:00
Henri Verbeet bb0e940e16 d3d10core: Implement device_parent_CreateDepthStencilSurface(). 2009-01-19 13:36:25 +01:00
Henri Verbeet 57242b848f d3d10core: Implement device_parent_CreateRenderTarget(). 2009-01-19 13:36:25 +01:00
Henri Verbeet 43f469ec6a d3d10core: Implement device_parent_CreateSurface(). 2009-01-19 13:36:25 +01:00
Henri Verbeet 558cc750c4 d3d10core: Add a small test for CreateTexture2D(). 2009-01-16 13:29:44 +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 e398a779f7 d3d10core: Add a stub ID3D10Texture2D implementation. 2009-01-15 12:43:23 +01:00
Huw Davies 180f74afcd d3d10core/tests: Skip the tests if we can't create a DXGI factory. 2008-12-04 12:51:48 +01:00
Henri Verbeet 1dad75955d d3d10core: Add a test for D3D10CoreCreateDevice(). 2008-11-18 11:54:31 +01:00
Francois Gouget 13a279ef0a d3d10core: Fix spelling of 'unknown'. 2008-11-17 15:56:48 +01:00
Henri Verbeet 53b395f3b9 d3d10core: Add a trace for D3D10CoreCreateDevice(). 2008-11-17 14:33:58 +01:00
Henri Verbeet 81e92fc81c d3d10: Implement D3D10CreateDevice() on top of D3D10CoreCreateDevice(). 2008-11-14 14:32:41 +01:00
Henri Verbeet 3505b5cf17 d3d10core: Implement D3D10CoreCreateDevice(). 2008-11-14 14:28:48 +01:00
Henri Verbeet 4ba8261a93 d3d10core: Implement D3D10CoreRegisterLayers. 2008-11-13 12:05:03 +01:00
Henri Verbeet ed418dc815 d3d10core: Allow ID3D10Device to be aggregated. 2008-11-13 12:04:43 +01:00
Henri Verbeet ccf48fff33 d3d10core: Implement ID3D10Device in d3d10core instead of d3d10. 2008-11-13 12:04:35 +01:00
Henri Verbeet 078fc191f8 d3d10core: Add a d3d10core dll. 2008-11-12 13:11:13 +01:00