mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-01-18 20:52:10 +01:00
[d3d11] Implement barrier control extension
This commit is contained in:
parent
04bef3c67a
commit
9e57b03e64
@ -76,7 +76,15 @@ namespace dxvk {
|
||||
|
||||
void STDMETHODCALLTYPE D3D11DeviceContextExt::SetBarrierControl(
|
||||
UINT ControlFlags) {
|
||||
D3D10DeviceLock lock = m_ctx->LockContext();
|
||||
DxvkBarrierControlFlags flags;
|
||||
|
||||
if (ControlFlags & D3D11_VK_BARRIER_CONTROL_IGNORE_WRITE_AFTER_WRITE)
|
||||
flags.set(DxvkBarrierControl::IgnoreWriteAfterWrite);
|
||||
|
||||
m_ctx->EmitCs([cFlags = flags] (DxvkContext* ctx) {
|
||||
ctx->setBarrierControl(cFlags);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1772,7 +1772,13 @@ namespace dxvk {
|
||||
|
||||
BOOL STDMETHODCALLTYPE D3D11DeviceExt::GetExtensionSupport(
|
||||
D3D11_VK_EXTENSION Extension) {
|
||||
return FALSE;
|
||||
switch (Extension) {
|
||||
case D3D11_VK_EXT_BARRIER_CONTROL:
|
||||
return true;
|
||||
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user