Commit Graph

166 Commits (03c75b9cf652146a44c35d0c4de79bc76629ee80)

Author SHA1 Message Date
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