summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp
diff options
context:
space:
mode:
authorStenzek <stenzek@gmail.com>2016-03-15 22:26:01 +1000
committerStenzek <stenzek@gmail.com>2016-05-08 23:18:59 +1000
commitccf9470241309114bdc46d9dc80bb9b99aed4a41 (patch)
tree81fe92b0101399b9ecf1d935b4f5628cfd67a5b2 /Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp
parentfde7dee652674f3d42d80e2f4a3ae0ff30ecaa06 (diff)
D3D12: Specify read/write ranges when calling Map/Unmap
Diffstat (limited to 'Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp')
-rw-r--r--Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp b/Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp
index 1af9945fea..cfb67209c8 100644
--- a/Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp
+++ b/Source/Core/VideoBackends/D3D12/D3DStreamBuffer.cpp
@@ -29,7 +29,8 @@ D3DStreamBuffer::~D3DStreamBuffer()
{
D3D::command_list_mgr->RemoveQueueFenceCallback(this);
- m_buffer->Unmap(0, nullptr);
+ D3D12_RANGE write_range = { 0, m_buffer_size };
+ m_buffer->Unmap(0, &write_range);
D3D::command_list_mgr->DestroyResourceAfterCurrentCommandListExecuted(m_buffer);
}
@@ -94,7 +95,8 @@ void D3DStreamBuffer::AllocateBuffer(size_t size)
// First, put existing buffer (if it exists) in deferred destruction list.
if (m_buffer)
{
- m_buffer->Unmap(0, nullptr);
+ D3D12_RANGE write_range = { 0, m_buffer_size };
+ m_buffer->Unmap(0, &write_range);
D3D::command_list_mgr->DestroyResourceAfterCurrentCommandListExecuted(m_buffer);
m_buffer = nullptr;
}
@@ -110,7 +112,8 @@ void D3DStreamBuffer::AllocateBuffer(size_t size)
)
);
- CheckHR(m_buffer->Map(0, nullptr, &m_buffer_cpu_address));
+ D3D12_RANGE read_range = {};
+ CheckHR(m_buffer->Map(0, &read_range, &m_buffer_cpu_address));
m_buffer_gpu_address = m_buffer->GetGPUVirtualAddress();
m_buffer_size = size;