1
0
mirror of https://github.com/godotengine/godot.git synced 2025-12-02 16:48:55 +00:00

Fix buffer creation on old D3D12 runtimes.

This commit is contained in:
Skyth
2025-11-18 15:33:30 +03:00
parent 3f5b871666
commit 92d3fc302a

View File

@@ -1059,6 +1059,11 @@ RDD::BufferID RenderingDeviceDriverD3D12::buffer_create(uint64_t p_size, BitFiel
if (p_usage.has_flag(BUFFER_USAGE_DYNAMIC_PERSISTENT_BIT)) {
allocation_desc.HeapType = dynamic_persistent_upload_heap;
// D3D12_HEAP_TYPE_UPLOAD mandates D3D12_RESOURCE_STATE_GENERIC_READ.
if (dynamic_persistent_upload_heap == D3D12_HEAP_TYPE_UPLOAD) {
initial_state = D3D12_RESOURCE_STATE_GENERIC_READ;
}
// We can't use STORAGE for write access, just for read.
resource_desc.Flags = resource_desc.Flags & ~D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS;
}