Commit f98084ed by Amy Liu Committed by Commit Bot

Fix ShaderStorageBufferReadWriteOffset end2end test

Test: ShaderStorageBufferTest31.ShaderStorageBufferReadWriteOffset. Align kBufferOffset to bufferAlignOffset correctly. Bug: angleproject:4471 Change-Id: I71084839a845138b32d58d8bd2cf6fed2633a9be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2100047 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 273f9c7c
...@@ -444,7 +444,9 @@ void main() ...@@ -444,7 +444,9 @@ void main()
glGetIntegerv(GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT, &bufferAlignOffset); glGetIntegerv(GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT, &bufferAlignOffset);
constexpr int kBufferSize = kElementCount * kArrayStride; constexpr int kBufferSize = kElementCount * kArrayStride;
const int kBufferOffset = kBufferSize + (kBufferSize % bufferAlignOffset); const int unalignedBytes = kBufferSize % bufferAlignOffset;
const int alignCorrection = unalignedBytes == 0 ? 0 : bufferAlignOffset - unalignedBytes;
const int kBufferOffset = kBufferSize + alignCorrection;
glBufferData(GL_SHADER_STORAGE_BUFFER, kBufferOffset + kBufferSize, nullptr, GL_STATIC_DRAW); glBufferData(GL_SHADER_STORAGE_BUFFER, kBufferOffset + kBufferSize, nullptr, GL_STATIC_DRAW);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment