From ecd46c84220fcad79e237f30fb1182d484f2a118 Mon Sep 17 00:00:00 2001 From: Florian-Simon-RedArtGames Date: Fri, 30 May 2025 16:28:38 +0200 Subject: [PATCH] Fix incorrect calculations of row pitch in d3d12 implementation --- PluginSource/source/RenderAPI_D3D12.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PluginSource/source/RenderAPI_D3D12.cpp b/PluginSource/source/RenderAPI_D3D12.cpp index 135b651..dee6b34 100644 --- a/PluginSource/source/RenderAPI_D3D12.cpp +++ b/PluginSource/source/RenderAPI_D3D12.cpp @@ -1368,7 +1368,7 @@ void* RenderAPI_D3D12::BeginModifyTexture(void* textureHandle, int textureWidth, // Fill data // Clamp to minimum rowPitch of RGBA32 - *outRowPitch = static_cast(max(align_pow2(textureWidth * 4), 256)); + *outRowPitch = (textureWidth * 4 + D3D12_TEXTURE_DATA_PITCH_ALIGNMENT - 1) & ~(D3D12_TEXTURE_DATA_PITCH_ALIGNMENT - 1); const UINT64 kDataSize = get_aligned_size(textureWidth, textureHeight, 4, *outRowPitch); if (!get_upload_resource(&s_upload_texture, kDataSize, D3D12_UPLOAD_HEAP_TEXTURE_BUFFER_NAME)) return NULL;