shader: bound storage buffers by pushed binding sizes instead of OpArrayLength

This commit is contained in:
nmzik committed 2026-10-26 05:32:02 +01:00
1 parent 7524e8f79e
commit ba7f9969ef
7 files changed
+96 -38

No files matched your search

@@ -801,6 +801,8 @@ void RenderExecutor::RebindBuffers(PreparedBindings& prepared) {
prepared.buffers[index] = NativeStorageBuffer(m_context, prepared.buffer_sources[index],
resource, buffer_offset);
pack_memory_offset(index, buffer_offset);
prepared.shader_data[layout.MemorySizeDword() + index] =
static_cast<uint32_t>(prepared.buffers[index].range);
}
if (layout.descriptor_counts[static_cast<size_t>(BindingKind::FlattenedSrt)] != 0) {
prepared.flattened_srt = NativeUpload(m_context, snapshot.flattened_srt);