mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-08 17:18:53 +00:00
D3D12: Specify read/write ranges when calling Map/Unmap
This commit is contained in:
parent
fde7dee652
commit
ccf9470241
10 changed files with 51 additions and 26 deletions
|
@ -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;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue