You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against 784b617ae936f97118e18624da85cc9de900e3a7
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
From 06cf41da9e0aeb09d3753132262d1b0e1207cd7f Mon Sep 17 00:00:00 2001
|
||||
From 3755d929ed2c1ceb101bf0741e78888624fbcf44 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Thu, 19 Jan 2017 16:54:42 +0100
|
||||
Subject: wined3d: Add wined3d_resource_map_info function.
|
||||
Subject: [PATCH] wined3d: Add wined3d_resource_map_info function.
|
||||
|
||||
---
|
||||
dlls/wined3d/buffer.c | 19 +++++++++++++++++++
|
||||
@@ -13,10 +13,10 @@ Subject: wined3d: Add wined3d_resource_map_info function.
|
||||
6 files changed, 70 insertions(+)
|
||||
|
||||
diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c
|
||||
index 6883b4010a0..1924752a421 100644
|
||||
index 3f4552f..2350661 100644
|
||||
--- a/dlls/wined3d/buffer.c
|
||||
+++ b/dlls/wined3d/buffer.c
|
||||
@@ -1405,6 +1405,24 @@ static HRESULT buffer_resource_sub_resource_map(struct wined3d_resource *resourc
|
||||
@@ -1275,6 +1275,24 @@ static HRESULT buffer_resource_sub_resource_map(struct wined3d_resource *resourc
|
||||
return wined3d_buffer_map(buffer, offset, size, (BYTE **)&map_desc->data, flags);
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@ index 6883b4010a0..1924752a421 100644
|
||||
static HRESULT buffer_resource_sub_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
|
||||
{
|
||||
if (sub_resource_idx)
|
||||
@@ -1424,6 +1442,7 @@ static const struct wined3d_resource_ops buffer_resource_ops =
|
||||
@@ -1294,6 +1312,7 @@ static const struct wined3d_resource_ops buffer_resource_ops =
|
||||
buffer_resource_preload,
|
||||
buffer_unload,
|
||||
buffer_resource_sub_resource_map,
|
||||
@@ -50,10 +50,10 @@ index 6883b4010a0..1924752a421 100644
|
||||
};
|
||||
|
||||
diff --git a/dlls/wined3d/resource.c b/dlls/wined3d/resource.c
|
||||
index ab64de07f41..51da49077ed 100644
|
||||
index b5dcdf0..28581a1 100644
|
||||
--- a/dlls/wined3d/resource.c
|
||||
+++ b/dlls/wined3d/resource.c
|
||||
@@ -359,6 +359,14 @@ HRESULT CDECL wined3d_resource_map(struct wined3d_resource *resource, unsigned i
|
||||
@@ -358,6 +358,14 @@ HRESULT CDECL wined3d_resource_map(struct wined3d_resource *resource, unsigned i
|
||||
return wined3d_cs_map(resource->device->cs, resource, sub_resource_idx, map_desc, box, flags);
|
||||
}
|
||||
|
||||
@@ -69,10 +69,10 @@ index ab64de07f41..51da49077ed 100644
|
||||
{
|
||||
TRACE("resource %p, sub_resource_idx %u.\n", resource, sub_resource_idx);
|
||||
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
|
||||
index 8d5e37a4949..be301420858 100644
|
||||
index dadcd03..ed63158 100644
|
||||
--- a/dlls/wined3d/texture.c
|
||||
+++ b/dlls/wined3d/texture.c
|
||||
@@ -2194,6 +2194,36 @@ static HRESULT texture_resource_sub_resource_map(struct wined3d_resource *resour
|
||||
@@ -2345,6 +2345,36 @@ static HRESULT texture_resource_sub_resource_map(struct wined3d_resource *resour
|
||||
return WINED3D_OK;
|
||||
}
|
||||
|
||||
@@ -109,7 +109,7 @@ index 8d5e37a4949..be301420858 100644
|
||||
static HRESULT texture_resource_sub_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
|
||||
{
|
||||
struct wined3d_texture_sub_resource *sub_resource;
|
||||
@@ -2253,6 +2283,7 @@ static const struct wined3d_resource_ops texture_resource_ops =
|
||||
@@ -2396,6 +2426,7 @@ static const struct wined3d_resource_ops texture_resource_ops =
|
||||
texture_resource_preload,
|
||||
wined3d_texture_unload,
|
||||
texture_resource_sub_resource_map,
|
||||
@@ -118,10 +118,10 @@ index 8d5e37a4949..be301420858 100644
|
||||
};
|
||||
|
||||
diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec
|
||||
index 05df9f3db7e..e51380304b1 100644
|
||||
index bf29e20..58dc0a9 100644
|
||||
--- a/dlls/wined3d/wined3d.spec
|
||||
+++ b/dlls/wined3d/wined3d.spec
|
||||
@@ -187,6 +187,7 @@
|
||||
@@ -229,6 +229,7 @@
|
||||
@ cdecl wined3d_resource_get_parent(ptr)
|
||||
@ cdecl wined3d_resource_get_priority(ptr)
|
||||
@ cdecl wined3d_resource_map(ptr long ptr ptr long)
|
||||
@@ -130,10 +130,10 @@ index 05df9f3db7e..e51380304b1 100644
|
||||
@ cdecl wined3d_resource_set_parent(ptr ptr)
|
||||
@ cdecl wined3d_resource_set_priority(ptr long)
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index ff61d9d872b..65f95004b44 100644
|
||||
index b297799..ed08c4b 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2639,6 +2639,8 @@ struct wined3d_resource_ops
|
||||
@@ -3030,6 +3030,8 @@ struct wined3d_resource_ops
|
||||
void (*resource_unload)(struct wined3d_resource *resource);
|
||||
HRESULT (*resource_sub_resource_map)(struct wined3d_resource *resource, unsigned int sub_resource_idx,
|
||||
struct wined3d_map_desc *map_desc, const struct wined3d_box *box, DWORD flags);
|
||||
@@ -143,10 +143,10 @@ index ff61d9d872b..65f95004b44 100644
|
||||
};
|
||||
|
||||
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
|
||||
index 8c8fbcbe7e5..fff39e2fa0f 100644
|
||||
index 15e14e5..fa929e5 100644
|
||||
--- a/include/wine/wined3d.h
|
||||
+++ b/include/wine/wined3d.h
|
||||
@@ -1746,6 +1746,13 @@ struct wined3d_map_desc
|
||||
@@ -1806,6 +1806,13 @@ struct wined3d_map_desc
|
||||
void *data;
|
||||
};
|
||||
|
||||
@@ -160,7 +160,7 @@ index 8c8fbcbe7e5..fff39e2fa0f 100644
|
||||
struct wined3d_sub_resource_data
|
||||
{
|
||||
const void *data;
|
||||
@@ -2431,6 +2438,8 @@ void * __cdecl wined3d_resource_get_parent(const struct wined3d_resource *resour
|
||||
@@ -2584,6 +2591,8 @@ void * __cdecl wined3d_resource_get_parent(const struct wined3d_resource *resour
|
||||
DWORD __cdecl wined3d_resource_get_priority(const struct wined3d_resource *resource);
|
||||
HRESULT __cdecl wined3d_resource_map(struct wined3d_resource *resource, unsigned int sub_resource_idx,
|
||||
struct wined3d_map_desc *map_desc, const struct wined3d_box *box, DWORD flags);
|
||||
@@ -170,5 +170,5 @@ index 8c8fbcbe7e5..fff39e2fa0f 100644
|
||||
void __cdecl wined3d_resource_set_parent(struct wined3d_resource *resource, void *parent);
|
||||
DWORD __cdecl wined3d_resource_set_priority(struct wined3d_resource *resource, DWORD priority);
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 05ef8f7024651411d386a6e60e9353feba472cd9 Mon Sep 17 00:00:00 2001
|
||||
From dc8d14d3b434e87777d0c1665602a0425197afc6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Thu, 19 Jan 2017 16:56:56 +0100
|
||||
Subject: d3d11: Initial implementation for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Initial implementation for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 1071 +++++++++++++++++++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 1040 insertions(+), 31 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 59b1bc864b..ec02ce6f20 100644
|
||||
index 9f5c4ff..2f13e85 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -19,12 +19,181 @@
|
||||
@@ -427,7 +427,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *commands)
|
||||
+static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *commands)
|
||||
+{
|
||||
+ struct deferred_call *call;
|
||||
+
|
||||
@@ -437,133 +437,133 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
+ {
|
||||
+ case DEFERRED_IASETVERTEXBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_IASetVertexBuffers(iface, call->vbuffer_info.start_slot,
|
||||
+ ID3D11DeviceContext1_IASetVertexBuffers(iface, call->vbuffer_info.start_slot,
|
||||
+ call->vbuffer_info.num_buffers, call->vbuffer_info.buffers,
|
||||
+ call->vbuffer_info.strides, call->vbuffer_info.offsets);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_IASETPRIMITIVETOPOLOGY:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_IASetPrimitiveTopology(iface, call->topology_info.topology);
|
||||
+ ID3D11DeviceContext1_IASetPrimitiveTopology(iface, call->topology_info.topology);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_IASETINDEXBUFFER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_IASetIndexBuffer(iface, call->index_buffer_info.buffer,
|
||||
+ ID3D11DeviceContext1_IASetIndexBuffer(iface, call->index_buffer_info.buffer,
|
||||
+ call->index_buffer_info.format, call->index_buffer_info.offset);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_IASETINPUTLAYOUT:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_IASetInputLayout(iface, call->input_layout_info.layout);
|
||||
+ ID3D11DeviceContext1_IASetInputLayout(iface, call->input_layout_info.layout);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_RSSETSTATE:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_RSSetState(iface, call->rstate_info.state);
|
||||
+ ID3D11DeviceContext1_RSSetState(iface, call->rstate_info.state);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_RSSETVIEWPORTS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_RSSetViewports(iface, call->viewport_info.num_viewports,
|
||||
+ ID3D11DeviceContext1_RSSetViewports(iface, call->viewport_info.num_viewports,
|
||||
+ call->viewport_info.viewports);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_OMSETDEPTHSTENCILSTATE:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_OMSetDepthStencilState(iface, call->stencil_state_info.state,
|
||||
+ ID3D11DeviceContext1_OMSetDepthStencilState(iface, call->stencil_state_info.state,
|
||||
+ call->stencil_state_info.stencil_ref);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_OMSETBLENDSTATE:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_OMSetBlendState(iface, call->blend_state_info.state,
|
||||
+ ID3D11DeviceContext1_OMSetBlendState(iface, call->blend_state_info.state,
|
||||
+ call->blend_state_info.factor, call->blend_state_info.mask);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_OMSETRENDERTARGETS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_OMSetRenderTargets(iface, call->render_target_info.num_views,
|
||||
+ ID3D11DeviceContext1_OMSetRenderTargets(iface, call->render_target_info.num_views,
|
||||
+ call->render_target_info.render_targets, call->render_target_info.depth_stencil);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_HSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_HSSetShader(iface, call->hs_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_HSSetShader(iface, call->hs_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_PSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_PSSetShader(iface, call->ps_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_PSSetShader(iface, call->ps_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_VSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_VSSetShader(iface, call->vs_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_VSSetShader(iface, call->vs_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_DSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_PSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_PSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_DSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_HSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_HSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_HSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_PSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_PSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_PSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_VSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_VSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_VSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DRAWINDEXED:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
+ ID3D11DeviceContext1_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
+ call->draw_indexed_info.start_index, call->draw_indexed_info.base_vertex);
|
||||
+ break;
|
||||
+ }
|
||||
+ case DEFERRED_DRAWINDEXEDINSTANCED:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_DrawIndexedInstanced(iface, call->draw_indexed_inst_info.count_per_instance,
|
||||
+ ID3D11DeviceContext1_DrawIndexedInstanced(iface, call->draw_indexed_inst_info.count_per_instance,
|
||||
+ call->draw_indexed_inst_info.instance_count, call->draw_indexed_inst_info.start_index,
|
||||
+ call->draw_indexed_inst_info.base_vertex, call->draw_indexed_inst_info.start_instance);
|
||||
+ break;
|
||||
@@ -573,12 +573,12 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
+ D3D11_MAPPED_SUBRESOURCE mapped;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ hr = ID3D11DeviceContext_Map(iface, call->map_info.resource, call->map_info.subresource_idx,
|
||||
+ hr = ID3D11DeviceContext1_Map(iface, call->map_info.resource, call->map_info.subresource_idx,
|
||||
+ call->map_info.map_type, call->map_info.map_flags, &mapped);
|
||||
+ if (SUCCEEDED(hr))
|
||||
+ {
|
||||
+ memcpy(mapped.pData, call->map_info.buffer, call->map_info.size);
|
||||
+ ID3D11DeviceContext_Unmap(iface, call->map_info.resource, call->map_info.subresource_idx);
|
||||
+ ID3D11DeviceContext1_Unmap(iface, call->map_info.resource, call->map_info.subresource_idx);
|
||||
+ }
|
||||
+ else
|
||||
+ FIXME("Failed to map subresource!\n");
|
||||
@@ -587,7 +587,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
+ }
|
||||
+ case DEFERRED_CLEARSTATE:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_ClearState(iface);
|
||||
+ ID3D11DeviceContext1_ClearState(iface);
|
||||
+ break;
|
||||
+ }
|
||||
+ default:
|
||||
@@ -725,8 +725,8 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
static void STDMETHODCALLTYPE d3d_null_wined3d_object_destroyed(void *parent) {}
|
||||
|
||||
static const struct wined3d_parent_ops d3d_null_wined3d_parent_ops =
|
||||
@@ -1133,7 +1824,20 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_ResolveSubresource(ID3D11D
|
||||
static void STDMETHODCALLTYPE d3d11_immediate_context_ExecuteCommandList(ID3D11DeviceContext *iface,
|
||||
@@ -1210,7 +1901,20 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_ResolveSubresource(ID3D11D
|
||||
static void STDMETHODCALLTYPE d3d11_immediate_context_ExecuteCommandList(ID3D11DeviceContext1 *iface,
|
||||
ID3D11CommandList *command_list, BOOL restore_state)
|
||||
{
|
||||
- FIXME("iface %p, command_list %p, restore_state %#x stub!\n", iface, command_list, restore_state);
|
||||
@@ -742,12 +742,12 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
+
|
||||
+ wined3d_mutex_lock();
|
||||
+ exec_deferred_calls(iface, &cmdlist->commands);
|
||||
+ ID3D11DeviceContext_ClearState(iface);
|
||||
+ ID3D11DeviceContext1_ClearState(iface);
|
||||
+ wined3d_mutex_unlock();
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_immediate_context_HSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
@@ -2693,6 +3397,7 @@ static ULONG STDMETHODCALLTYPE d3d11_deferred_context_Release(ID3D11DeviceContex
|
||||
static void STDMETHODCALLTYPE d3d11_immediate_context_HSSetShaderResources(ID3D11DeviceContext1 *iface,
|
||||
@@ -2941,6 +3645,7 @@ static ULONG STDMETHODCALLTYPE d3d11_deferred_context_Release(ID3D11DeviceContex
|
||||
|
||||
if (!refcount)
|
||||
{
|
||||
@@ -755,7 +755,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
wined3d_private_store_cleanup(&context->private_store);
|
||||
ID3D11Device_Release(context->device);
|
||||
HeapFree(GetProcessHeap(), 0, context);
|
||||
@@ -2744,43 +3449,86 @@ static HRESULT STDMETHODCALLTYPE d3d11_deferred_context_SetPrivateDataInterface(
|
||||
@@ -2992,43 +3697,86 @@ static HRESULT STDMETHODCALLTYPE d3d11_deferred_context_SetPrivateDataInterface(
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
|
||||
{
|
||||
@@ -848,7 +848,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_Draw(ID3D11DeviceContext *iface,
|
||||
@@ -2793,53 +3541,169 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_Draw(ID3D11DeviceContext *i
|
||||
@@ -3041,53 +3789,169 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_Draw(ID3D11DeviceContext *i
|
||||
static HRESULT STDMETHODCALLTYPE d3d11_deferred_context_Map(ID3D11DeviceContext *iface, ID3D11Resource *resource,
|
||||
UINT subresource_idx, D3D11_MAP map_type, UINT map_flags, D3D11_MAPPED_SUBRESOURCE *mapped_subresource)
|
||||
{
|
||||
@@ -1027,7 +1027,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstanced(ID3D11DeviceContext *iface,
|
||||
@@ -2868,7 +3732,16 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShader(ID3D11DeviceCon
|
||||
@@ -3116,7 +3980,16 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShader(ID3D11DeviceCon
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_IASetPrimitiveTopology(ID3D11DeviceContext *iface,
|
||||
D3D11_PRIMITIVE_TOPOLOGY topology)
|
||||
{
|
||||
@@ -1045,7 +1045,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
@@ -2928,8 +3801,28 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargets(ID3D11De
|
||||
@@ -3176,8 +4049,28 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargets(ID3D11De
|
||||
UINT render_target_view_count, ID3D11RenderTargetView *const *render_target_views,
|
||||
ID3D11DepthStencilView *depth_stencil_view)
|
||||
{
|
||||
@@ -1075,7 +1075,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargetsAndUnorderedAccessViews(
|
||||
@@ -2949,15 +3842,44 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargetsAndUnorde
|
||||
@@ -3197,15 +4090,44 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargetsAndUnorde
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetBlendState(ID3D11DeviceContext *iface,
|
||||
ID3D11BlendState *blend_state, const float blend_factor[4], UINT sample_mask)
|
||||
{
|
||||
@@ -1122,7 +1122,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_SOSetTargets(ID3D11DeviceContext *iface, UINT buffer_count,
|
||||
@@ -2999,13 +3921,34 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DispatchIndirect(ID3D11Devi
|
||||
@@ -3247,13 +4169,34 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DispatchIndirect(ID3D11Devi
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_RSSetState(ID3D11DeviceContext *iface,
|
||||
ID3D11RasterizerState *rasterizer_state)
|
||||
{
|
||||
@@ -1159,7 +1159,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_RSSetScissorRects(ID3D11DeviceContext *iface,
|
||||
@@ -3120,8 +4063,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShaderResources(ID3D11
|
||||
@@ -3368,8 +4311,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShaderResources(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShader(ID3D11DeviceContext *iface,
|
||||
ID3D11HullShader *shader, ID3D11ClassInstance *const *class_instances, UINT class_instance_count)
|
||||
{
|
||||
@@ -1179,7 +1179,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetSamplers(ID3D11DeviceContext *iface,
|
||||
@@ -3134,36 +4087,62 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetSamplers(ID3D11DeviceC
|
||||
@@ -3382,36 +4335,62 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetSamplers(ID3D11DeviceC
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
|
||||
{
|
||||
@@ -1247,7 +1247,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
@@ -3464,7 +4443,15 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSGetConstantBuffers(ID3D11
|
||||
@@ -3712,7 +4691,15 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSGetConstantBuffers(ID3D11
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_ClearState(ID3D11DeviceContext *iface)
|
||||
{
|
||||
@@ -1264,7 +1264,7 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_Flush(ID3D11DeviceContext *iface)
|
||||
@@ -3489,9 +4476,29 @@ static UINT STDMETHODCALLTYPE d3d11_deferred_context_GetContextFlags(ID3D11Devic
|
||||
@@ -3737,9 +4724,29 @@ static UINT STDMETHODCALLTYPE d3d11_deferred_context_GetContextFlags(ID3D11Devic
|
||||
static HRESULT STDMETHODCALLTYPE d3d11_deferred_context_FinishCommandList(ID3D11DeviceContext *iface,
|
||||
BOOL restore, ID3D11CommandList **command_list)
|
||||
{
|
||||
@@ -1296,15 +1296,15 @@ index 59b1bc864b..ec02ce6f20 100644
|
||||
}
|
||||
|
||||
static const struct ID3D11DeviceContextVtbl d3d11_deferred_context_vtbl =
|
||||
@@ -4280,6 +5287,8 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateDeferredContext(ID3D11Device
|
||||
object->device = iface;
|
||||
@@ -4355,6 +5362,8 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateDeferredContext(ID3D11Device
|
||||
object->device = (ID3D11Device*)&device->ID3D11Device1_iface;
|
||||
object->refcount = 1;
|
||||
|
||||
+ list_init(&object->commands);
|
||||
+
|
||||
ID3D11Device_AddRef(iface);
|
||||
ID3D11Device_AddRef(object->device);
|
||||
wined3d_private_store_init(&object->private_store);
|
||||
|
||||
--
|
||||
2.12.2
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From d9227039538ab84f28787ab5ca7fa74a8755740f Mon Sep 17 00:00:00 2001
|
||||
From fc3937794343611ef4bedefc4829ed06ceee8f64 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 04:10:12 +0100
|
||||
Subject: d3d11: Implement CSSetShader for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement CSSetShader for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 29 ++++++++++++++++++++++++++++-
|
||||
1 file changed, 28 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 4ee9d500802..0bb973e3933 100644
|
||||
index 2f13e85..e54ccaf 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -40,6 +40,7 @@ enum deferred_cmd
|
||||
@@ -44,19 +44,19 @@ index 4ee9d500802..0bb973e3933 100644
|
||||
case DEFERRED_DSSETSHADER:
|
||||
{
|
||||
if (call->ds_info.shader)
|
||||
@@ -491,6 +503,11 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -491,6 +503,11 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->render_target_info.render_targets, call->render_target_info.depth_stencil);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_CSSetShader(iface, call->cs_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_CSSetShader(iface, call->cs_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DSSETSHADER:
|
||||
{
|
||||
ID3D11DeviceContext_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
@@ -3636,8 +3653,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(I
|
||||
ID3D11DeviceContext1_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
@@ -4410,8 +4427,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(I
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceContext *iface,
|
||||
ID3D11ComputeShader *shader, ID3D11ClassInstance *const *class_instances, UINT class_instance_count)
|
||||
{
|
||||
@@ -77,5 +77,5 @@ index 4ee9d500802..0bb973e3933 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 56e9fa8ef7ccfd0d98e29bfac9ee44c08bb8e891 Mon Sep 17 00:00:00 2001
|
||||
From ac4e13da593e8d6fcd868e95414eb6395fb28e44 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 04:21:47 +0100
|
||||
Subject: d3d11: Implement CSSetConstantBuffers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement CSSetConstantBuffers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 0bb973e3933..38b407b22ee 100644
|
||||
index e54ccaf..8fee8cd 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -52,6 +52,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index 0bb973e3933..38b407b22ee 100644
|
||||
case DEFERRED_DSSETCONSTANTBUFFERS:
|
||||
case DEFERRED_HSSETCONSTANTBUFFERS:
|
||||
case DEFERRED_PSSETCONSTANTBUFFERS:
|
||||
@@ -552,6 +554,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -552,6 +554,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_CSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_CSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DSSETCONSTANTBUFFERS:
|
||||
{
|
||||
ID3D11DeviceContext_DSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -3677,8 +3685,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceC
|
||||
ID3D11DeviceContext1_DSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -4451,8 +4459,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceC
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index 0bb973e3933..38b407b22ee 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSGetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From aab89808ea9387070c3ac1a1be56ac498538c80e Mon Sep 17 00:00:00 2001
|
||||
From 300aab481c30eddac58cbf7c9a418d3c0f7bb4e8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 04:29:10 +0100
|
||||
Subject: d3d11: Implement Dispatch for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement Dispatch for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 30 +++++++++++++++++++++++++++++-
|
||||
1 file changed, 29 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 38b407b22ee..644728f178a 100644
|
||||
index 8fee8cd..b1f148a 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -62,6 +62,7 @@ enum deferred_cmd
|
||||
@@ -43,20 +43,20 @@ index 38b407b22ee..644728f178a 100644
|
||||
case DEFERRED_CLEARSTATE:
|
||||
{
|
||||
break; /* nothing to do */
|
||||
@@ -614,6 +625,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -614,6 +625,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_DISPATCH:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_Dispatch(iface, call->dispatch_info.count_x,
|
||||
+ ID3D11DeviceContext1_Dispatch(iface, call->dispatch_info.count_x,
|
||||
+ call->dispatch_info.count_y, call->dispatch_info.count_z);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_CLEARSTATE:
|
||||
{
|
||||
ID3D11DeviceContext_ClearState(iface);
|
||||
@@ -3407,8 +3424,19 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstancedIndirect(ID3D1
|
||||
ID3D11DeviceContext1_ClearState(iface);
|
||||
@@ -4181,8 +4198,19 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstancedIndirect(ID3D1
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_Dispatch(ID3D11DeviceContext *iface,
|
||||
UINT thread_group_count_x, UINT thread_group_count_y, UINT thread_group_count_z)
|
||||
{
|
||||
@@ -78,5 +78,5 @@ index 38b407b22ee..644728f178a 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_DispatchIndirect(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,15 @@
|
||||
From a36710e9b8b7c3bef157b29baac3911c633f8e38 Mon Sep 17 00:00:00 2001
|
||||
From 116636717ee333aff38b77530fbcb885ad46f0a1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 04:48:56 +0100
|
||||
Subject: d3d11: Implement CSSetUnorderedAccessViews for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement CSSetUnorderedAccessViews for deferred
|
||||
contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 45 ++++++++++++++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 44 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 644728f178a..8dd19910b7c 100644
|
||||
index b1f148a..3c475e7 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -58,6 +58,8 @@ enum deferred_cmd
|
||||
@@ -50,20 +51,20 @@ index 644728f178a..8dd19910b7c 100644
|
||||
case DEFERRED_DRAWINDEXED:
|
||||
case DEFERRED_DRAWINDEXEDINSTANCED:
|
||||
{
|
||||
@@ -595,6 +613,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -595,6 +613,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CSSETUNORDEREDACCESSVIEWS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_CSSetUnorderedAccessViews(iface, call->unordered_view.start_slot,
|
||||
+ ID3D11DeviceContext1_CSSetUnorderedAccessViews(iface, call->unordered_view.start_slot,
|
||||
+ call->unordered_view.num_views, call->unordered_view.views, call->unordered_view.initial_counts);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DRAWINDEXED:
|
||||
{
|
||||
ID3D11DeviceContext_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
@@ -3682,8 +3706,27 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShaderResources(ID3D11
|
||||
ID3D11DeviceContext1_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
@@ -4456,8 +4480,27 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShaderResources(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT view_count, ID3D11UnorderedAccessView *const *views, const UINT *initial_counts)
|
||||
{
|
||||
@@ -93,5 +94,5 @@ index 644728f178a..8dd19910b7c 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 8adc88c6d9ab48d4014486775fcff6d869ae44ed Mon Sep 17 00:00:00 2001
|
||||
From 27ae92005a2782ab4465f1d90cecc8c328a27bc7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 05:06:12 +0100
|
||||
Subject: d3d11: Implement ClearRenderTargetView for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement ClearRenderTargetView for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 33 ++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 32 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 8dd19910b7c..46dddbd4d6c 100644
|
||||
index 3c475e7..3c41fc3 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -67,6 +67,7 @@ enum deferred_cmd
|
||||
@@ -44,20 +44,20 @@ index 8dd19910b7c..46dddbd4d6c 100644
|
||||
default:
|
||||
{
|
||||
FIXME("Unimplemented command type %u\n", call->cmd);
|
||||
@@ -660,6 +672,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
ID3D11DeviceContext_ClearState(iface);
|
||||
@@ -660,6 +672,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
ID3D11DeviceContext1_ClearState(iface);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CLEARRENDERTARGETVIEW:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_ClearRenderTargetView(iface, call->clear_rtv_info.rtv,
|
||||
+ ID3D11DeviceContext1_ClearRenderTargetView(iface, call->clear_rtv_info.rtv,
|
||||
+ call->clear_rtv_info.color);
|
||||
+ break;
|
||||
+ }
|
||||
default:
|
||||
{
|
||||
FIXME("Unimplemented command type %u\n", call->cmd);
|
||||
@@ -3542,8 +3560,21 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CopyStructureCount(ID3D11De
|
||||
@@ -4316,8 +4334,21 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CopyStructureCount(ID3D11De
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_ClearRenderTargetView(ID3D11DeviceContext *iface,
|
||||
ID3D11RenderTargetView *render_target_view, const float color_rgba[4])
|
||||
{
|
||||
@@ -81,5 +81,5 @@ index 8dd19910b7c..46dddbd4d6c 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_ClearUnorderedAccessViewUint(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From de1e3912b0b481e70ab6a4f739e8b2441f741be7 Mon Sep 17 00:00:00 2001
|
||||
From c47799ef188ff3e15573bfb8811193918afffea1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 05:13:46 +0100
|
||||
Subject: d3d11: Implement Draw for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement Draw for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 24 +++++++++++++++++++++++-
|
||||
1 file changed, 23 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 46dddbd4d6c..1dfd6de7bde 100644
|
||||
index 3c41fc3..1bf9caf 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -60,6 +60,7 @@ enum deferred_cmd
|
||||
@@ -39,19 +39,19 @@ index 46dddbd4d6c..1dfd6de7bde 100644
|
||||
case DEFERRED_DRAWINDEXED:
|
||||
case DEFERRED_DRAWINDEXEDINSTANCED:
|
||||
{
|
||||
@@ -631,6 +638,11 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -631,6 +638,11 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->unordered_view.num_views, call->unordered_view.views, call->unordered_view.initial_counts);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_DRAW:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_Draw(iface, call->draw_info.count, call->draw_info.start);
|
||||
+ ID3D11DeviceContext1_Draw(iface, call->draw_info.count, call->draw_info.start);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DRAWINDEXED:
|
||||
{
|
||||
ID3D11DeviceContext_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
@@ -3090,8 +3102,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawIndexed(ID3D11DeviceCon
|
||||
ID3D11DeviceContext1_DrawIndexed(iface, call->draw_indexed_info.count,
|
||||
@@ -3866,8 +3878,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawIndexed(ID3D11DeviceCon
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_Draw(ID3D11DeviceContext *iface,
|
||||
UINT vertex_count, UINT start_vertex_location)
|
||||
{
|
||||
@@ -72,5 +72,5 @@ index 46dddbd4d6c..1dfd6de7bde 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE d3d11_deferred_context_Map(ID3D11DeviceContext *iface, ID3D11Resource *resource,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From da527f6e90d4f3725882e7501199b0645e52685c Mon Sep 17 00:00:00 2001
|
||||
From b871fc2d2705efd89415626b9334a508f3ba97b4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Tue, 24 Jan 2017 05:29:10 +0100
|
||||
Subject: d3d11: Implement ClearDepthStencilView for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement ClearDepthStencilView for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 36 +++++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 35 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 1dfd6de7bde..83d97665ed5 100644
|
||||
index 1bf9caf..7f84cd4 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -69,6 +69,7 @@ enum deferred_cmd
|
||||
@@ -46,7 +46,7 @@ index 1dfd6de7bde..83d97665ed5 100644
|
||||
default:
|
||||
{
|
||||
FIXME("Unimplemented command type %u\n", call->cmd);
|
||||
@@ -690,6 +704,13 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -690,6 +704,13 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->clear_rtv_info.color);
|
||||
break;
|
||||
}
|
||||
@@ -60,7 +60,7 @@ index 1dfd6de7bde..83d97665ed5 100644
|
||||
default:
|
||||
{
|
||||
FIXME("Unimplemented command type %u\n", call->cmd);
|
||||
@@ -3616,8 +3637,21 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_ClearUnorderedAccessViewFlo
|
||||
@@ -4390,8 +4411,21 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_ClearUnorderedAccessViewFlo
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_ClearDepthStencilView(ID3D11DeviceContext *iface,
|
||||
ID3D11DepthStencilView *depth_stencil_view, UINT flags, FLOAT depth, UINT8 stencil)
|
||||
{
|
||||
@@ -84,5 +84,5 @@ index 1dfd6de7bde..83d97665ed5 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GenerateMips(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.11.0
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 848ac26c5b1e6551639fbef1a03e93ca14d934a2 Mon Sep 17 00:00:00 2001
|
||||
From acca9a7bb557d405c74dbaf1153c3d0642780d03 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:01:07 +0300
|
||||
Subject: d3d11: Implement GSSetShader for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement GSSetShader for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 29 ++++++++++++++++++++++++++++-
|
||||
1 file changed, 28 insertions(+), 1 deletion(-)
|
||||
dlls/d3d11/device.c | 31 +++++++++++++++++++++++++++++--
|
||||
1 file changed, 29 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 8642bf50fb1..98aa5ef6a77 100644
|
||||
index 7f84cd4..64480f4 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -42,6 +42,7 @@ enum deferred_cmd
|
||||
@@ -44,19 +44,28 @@ index 8642bf50fb1..98aa5ef6a77 100644
|
||||
case DEFERRED_HSSETSHADER:
|
||||
{
|
||||
if (call->hs_info.shader)
|
||||
@@ -577,6 +589,11 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
ID3D11DeviceContext_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
@@ -577,6 +589,11 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
ID3D11DeviceContext1_DSSetShader(iface, call->ds_info.shader, NULL, 0);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_GSSETSHADER:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_GSSetShader(iface, call->gs_info.shader, NULL, 0);
|
||||
+ ID3D11DeviceContext1_GSSetShader(iface, call->gs_info.shader, NULL, 0);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_HSSETSHADER:
|
||||
{
|
||||
ID3D11DeviceContext_HSSetShader(iface, call->hs_info.shader, NULL, 0);
|
||||
@@ -3875,8 +3892,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetConstantBuffers(ID3D11
|
||||
ID3D11DeviceContext1_HSSetShader(iface, call->hs_info.shader, NULL, 0);
|
||||
@@ -706,7 +723,7 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
}
|
||||
case DEFERRED_CLEARDEPTHSTENCILVIEW:
|
||||
{
|
||||
- ID3D11DeviceContext_ClearDepthStencilView(iface, call->clear_depth_info.view,
|
||||
+ ID3D11DeviceContext1_ClearDepthStencilView(iface, call->clear_depth_info.view,
|
||||
call->clear_depth_info.flags, call->clear_depth_info.depth,
|
||||
call->clear_depth_info.stencil);
|
||||
break;
|
||||
@@ -4100,8 +4117,18 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetConstantBuffers(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShader(ID3D11DeviceContext *iface,
|
||||
ID3D11GeometryShader *shader, ID3D11ClassInstance *const *class_instances, UINT class_instance_count)
|
||||
{
|
||||
@@ -77,5 +86,5 @@ index 8642bf50fb1..98aa5ef6a77 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_IASetPrimitiveTopology(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 4e7076c5cc9806ce0e0218588ea587cfe3db8951 Mon Sep 17 00:00:00 2001
|
||||
From 9a1f120b818e4368554b751ee02749220dfa8e4e Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:04:41 +0300
|
||||
Subject: d3d11: Implement GSSetConstantBuffers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement GSSetConstantBuffers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 18 +++++++++++++++---
|
||||
1 file changed, 15 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 98aa5ef6a77..014f39f74c1 100644
|
||||
index 64480f4..87c2466 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -55,6 +55,7 @@ enum deferred_cmd
|
||||
@@ -38,20 +38,20 @@ index 98aa5ef6a77..014f39f74c1 100644
|
||||
case DEFERRED_HSSETCONSTANTBUFFERS:
|
||||
case DEFERRED_PSSETCONSTANTBUFFERS:
|
||||
case DEFERRED_VSSETCONSTANTBUFFERS:
|
||||
@@ -645,6 +647,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -645,6 +647,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_GSSETCONSTANTBUFFERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_GSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_GSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
+ call->constant_buffers_info.num_buffers, call->constant_buffers_info.buffers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_HSSETCONSTANTBUFFERS:
|
||||
{
|
||||
ID3D11DeviceContext_HSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -3885,8 +3893,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstanced(ID3D11DeviceC
|
||||
ID3D11DeviceContext1_HSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -4110,8 +4118,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DrawInstanced(ID3D11DeviceC
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT buffer_count, ID3D11Buffer *const *buffers)
|
||||
{
|
||||
@@ -66,5 +66,5 @@ index 98aa5ef6a77..014f39f74c1 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShader(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From bde4fe1e674ff4dc32e9417b3ef020eb96cf6700 Mon Sep 17 00:00:00 2001
|
||||
From f62f3e2af2ecced548978d05144736dc4f40a158 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:07:15 +0300
|
||||
Subject: d3d11: Implement CSSetShaderResources for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement CSSetShaderResources for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 014f39f74c1..ae92b190de5 100644
|
||||
index 87c2466..d0e9ebb 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -47,6 +47,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index 014f39f74c1..ae92b190de5 100644
|
||||
case DEFERRED_DSSETSHADERRESOURCES:
|
||||
case DEFERRED_PSSETSHADERRESOURCES:
|
||||
{
|
||||
@@ -611,6 +613,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
ID3D11DeviceContext_VSSetShader(iface, call->vs_info.shader, NULL, 0);
|
||||
@@ -611,6 +613,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
ID3D11DeviceContext1_VSSetShader(iface, call->vs_info.shader, NULL, 0);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_CSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_CSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DSSETSHADERRESOURCES:
|
||||
{
|
||||
ID3D11DeviceContext_DSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -4374,8 +4382,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DSSetConstantBuffers(ID3D11
|
||||
ID3D11DeviceContext1_DSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -4599,8 +4607,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_DSSetConstantBuffers(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT view_count, ID3D11ShaderResourceView *const *views)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index 014f39f74c1..ae92b190de5 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetUnorderedAccessViews(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From d55adbf05b349aa1cd3b6134cd5d9b4c211ff6db Mon Sep 17 00:00:00 2001
|
||||
From 9e12a69e96e45dc449463ef94d7747f68c821303 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:09:57 +0300
|
||||
Subject: d3d11: Implement GSSetShaderResources for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement GSSetShaderResources for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 18 ++++++++++++++++--
|
||||
1 file changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index ae92b190de5..917101d055c 100644
|
||||
index d0e9ebb..7f835e8 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -49,6 +49,7 @@ enum deferred_cmd
|
||||
@@ -37,20 +37,20 @@ index ae92b190de5..917101d055c 100644
|
||||
case DEFERRED_PSSETSHADERRESOURCES:
|
||||
{
|
||||
for (i = 0; i < call->res_info.num_views; i++)
|
||||
@@ -625,6 +628,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -625,6 +628,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->res_info.num_views, call->res_info.views);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_GSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_GSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_GSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_PSSETSHADERRESOURCES:
|
||||
{
|
||||
ID3D11DeviceContext_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -3984,7 +3993,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_SetPredication(ID3D11Device
|
||||
ID3D11DeviceContext1_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -4209,7 +4218,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_SetPredication(ID3D11Device
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT view_count, ID3D11ShaderResourceView *const *views)
|
||||
{
|
||||
@@ -65,5 +65,5 @@ index ae92b190de5..917101d055c 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetSamplers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 47adec4e3c5117ac8c2a9c5c48659298aff77003 Mon Sep 17 00:00:00 2001
|
||||
From 7f97c88879938cc72d3e8372ba74ff40b3371815 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:11:41 +0300
|
||||
Subject: d3d11: Implement HSSetShaderResources for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement HSSetShaderResources for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 917101d055c..f2ed01bf532 100644
|
||||
index 7f835e8..2bdaa67 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -50,6 +50,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index 917101d055c..f2ed01bf532 100644
|
||||
case DEFERRED_PSSETSHADERRESOURCES:
|
||||
{
|
||||
for (i = 0; i < call->res_info.num_views; i++)
|
||||
@@ -634,6 +636,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -634,6 +636,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->res_info.num_views, call->res_info.views);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_HSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_HSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_HSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_PSSETSHADERRESOURCES:
|
||||
{
|
||||
ID3D11DeviceContext_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -4304,8 +4312,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_ExecuteCommandList(ID3D11De
|
||||
ID3D11DeviceContext1_PSSetShaderResources(iface, call->res_info.start_slot,
|
||||
@@ -4529,8 +4537,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_ExecuteCommandList(ID3D11De
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT view_count, ID3D11ShaderResourceView *const *views)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index 917101d055c..f2ed01bf532 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShader(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 5fb7380f08a868c176d6c369e9390ff64274aa6e Mon Sep 17 00:00:00 2001
|
||||
From 3e7cd344b0e07391ed7f859ed47c362e8f69128a Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:13:47 +0300
|
||||
Subject: d3d11: Implement VSSetShaderResources for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement VSSetShaderResources for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index f2ed01bf532..c4cef99ba26 100644
|
||||
index 2bdaa67..dfafdcd 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -52,6 +52,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index f2ed01bf532..c4cef99ba26 100644
|
||||
{
|
||||
for (i = 0; i < call->res_info.num_views; i++)
|
||||
{
|
||||
@@ -648,6 +650,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -648,6 +650,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->res_info.num_views, call->res_info.views);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_VSSETSHADERRESOURCES:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_VSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ ID3D11DeviceContext1_VSSetShaderResources(iface, call->res_info.start_slot,
|
||||
+ call->res_info.num_views, call->res_info.views);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DSSETSAMPLERS:
|
||||
{
|
||||
ID3D11DeviceContext_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -3961,7 +3969,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_IASetPrimitiveTopology(ID3D
|
||||
ID3D11DeviceContext1_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4186,7 +4194,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_IASetPrimitiveTopology(ID3D
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetShaderResources(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT view_count, ID3D11ShaderResourceView *const *views)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index f2ed01bf532..c4cef99ba26 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetSamplers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From ebe0004e3acb6b89d649756bc27b32b92ee3d540 Mon Sep 17 00:00:00 2001
|
||||
From 207460a669131fc04d9aec1575080b7fb1e820a9 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:15:31 +0300
|
||||
Subject: d3d11: Implement CSSetSamplers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement CSSetSamplers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index c4cef99ba26..1fe04efa5c3 100644
|
||||
index dfafdcd..7e5f191 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -54,6 +54,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index c4cef99ba26..1fe04efa5c3 100644
|
||||
case DEFERRED_DSSETSAMPLERS:
|
||||
case DEFERRED_PSSETSAMPLERS:
|
||||
{
|
||||
@@ -656,6 +658,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -656,6 +658,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->res_info.num_views, call->res_info.views);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_CSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_CSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_CSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_DSSETSAMPLERS:
|
||||
{
|
||||
ID3D11DeviceContext_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4475,8 +4483,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceCon
|
||||
ID3D11DeviceContext1_DSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4700,8 +4708,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetShader(ID3D11DeviceCon
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetSamplers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT sampler_count, ID3D11SamplerState *const *samplers)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index c4cef99ba26..1fe04efa5c3 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_CSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 68c90b8a153575c328197c9d18dfee3a8f88fb37 Mon Sep 17 00:00:00 2001
|
||||
From e9225859dd9b134f1f3ac75555ba2912cacfade5 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:19:27 +0300
|
||||
Subject: d3d11: Implement GSSetSamplers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement GSSetSamplers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 1fe04efa5c3..1af93c4a99a 100644
|
||||
index 7e5f191..aabbe38 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -56,6 +56,7 @@ enum deferred_cmd
|
||||
@@ -37,20 +37,20 @@ index 1fe04efa5c3..1af93c4a99a 100644
|
||||
case DEFERRED_PSSETSAMPLERS:
|
||||
{
|
||||
for (i = 0; i < call->samplers_info.num_samplers; i++)
|
||||
@@ -670,6 +673,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -670,6 +673,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_GSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_GSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_GSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_PSSETSAMPLERS:
|
||||
{
|
||||
ID3D11DeviceContext_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4033,8 +4042,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShaderResources(ID3D11
|
||||
ID3D11DeviceContext1_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4258,8 +4267,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetShaderResources(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_GSSetSamplers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT sampler_count, ID3D11SamplerState *const *samplers)
|
||||
{
|
||||
@@ -65,5 +65,5 @@ index 1fe04efa5c3..1af93c4a99a 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargets(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 31741559091edb33262d99539c25c8083ec9da7a Mon Sep 17 00:00:00 2001
|
||||
From d67655d6733fdf62a10f330d9292ced0aa99f809 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:21:32 +0300
|
||||
Subject: d3d11: Implement HSSetSamplers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement HSSetSamplers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 18 +++++++++++++++---
|
||||
1 file changed, 15 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 1af93c4a99a..1408cf9450b 100644
|
||||
index aabbe38..2d03464 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -57,6 +57,7 @@ enum deferred_cmd
|
||||
@@ -38,20 +38,20 @@ index 1af93c4a99a..1408cf9450b 100644
|
||||
case DEFERRED_PSSETSAMPLERS:
|
||||
{
|
||||
for (i = 0; i < call->samplers_info.num_samplers; i++)
|
||||
@@ -679,6 +681,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -679,6 +681,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_HSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_HSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_HSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_PSSETSAMPLERS:
|
||||
{
|
||||
ID3D11DeviceContext_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4374,8 +4382,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShader(ID3D11DeviceCon
|
||||
ID3D11DeviceContext1_PSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
@@ -4599,8 +4607,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetShader(ID3D11DeviceCon
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetSamplers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT sampler_count, ID3D11SamplerState *const *samplers)
|
||||
{
|
||||
@@ -66,5 +66,5 @@ index 1af93c4a99a..1408cf9450b 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_HSSetConstantBuffers(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
From 1b768487e7175cc29e2574c4334ee91d0333ce26 Mon Sep 17 00:00:00 2001
|
||||
From ae628cd9b5dcb81d43dbae1c7db76844658556a8 Mon Sep 17 00:00:00 2001
|
||||
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 11:23:51 +0300
|
||||
Subject: d3d11: Implement VSSetSamplers for deferred contexts.
|
||||
Subject: [PATCH] d3d11: Implement VSSetSamplers for deferred contexts.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 1408cf9450b..4327bc2bdbf 100644
|
||||
index 2d03464..178cd7f 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -59,6 +59,7 @@ enum deferred_cmd
|
||||
@@ -36,20 +36,20 @@ index 1408cf9450b..4327bc2bdbf 100644
|
||||
{
|
||||
for (i = 0; i < call->samplers_info.num_samplers; i++)
|
||||
{
|
||||
@@ -693,6 +695,12 @@ static void exec_deferred_calls(ID3D11DeviceContext *iface, struct list *command
|
||||
@@ -693,6 +695,12 @@ static void exec_deferred_calls(ID3D11DeviceContext1 *iface, struct list *comman
|
||||
call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
break;
|
||||
}
|
||||
+ case DEFERRED_VSSETSAMPLERS:
|
||||
+ {
|
||||
+ ID3D11DeviceContext_VSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ ID3D11DeviceContext1_VSSetSamplers(iface, call->samplers_info.start_slot,
|
||||
+ call->samplers_info.num_samplers, call->samplers_info.samplers);
|
||||
+ break;
|
||||
+ }
|
||||
case DEFERRED_CSSETCONSTANTBUFFERS:
|
||||
{
|
||||
ID3D11DeviceContext_CSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -4005,8 +4013,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetShaderResources(ID3D11
|
||||
ID3D11DeviceContext1_CSSetConstantBuffers(iface, call->constant_buffers_info.start_slot,
|
||||
@@ -4230,8 +4238,12 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetShaderResources(ID3D11
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_VSSetSamplers(ID3D11DeviceContext *iface,
|
||||
UINT start_slot, UINT sampler_count, ID3D11SamplerState *const *samplers)
|
||||
{
|
||||
@@ -64,5 +64,5 @@ index 1408cf9450b..4327bc2bdbf 100644
|
||||
|
||||
static void STDMETHODCALLTYPE d3d11_deferred_context_Begin(ID3D11DeviceContext *iface,
|
||||
--
|
||||
2.13.1
|
||||
1.9.1
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user