[Feat] (MG_Util/ShaderCompiler): extract global UBO offset from GL plain uniforms

This commit is contained in:
2025-08-08 13:46:08 +08:00
parent fcd52a9177
commit 916fdf40af
5 changed files with 81 additions and 22 deletions
+17 -2
View File
@@ -287,6 +287,21 @@ TEST_F(ProgramTest, DecompProgram) {
}
}
auto ubo0 = sessions[0].GetShaderInterface(SPVC_RESOURCE_TYPE_UNIFORM_BUFFER);
auto ubo1 = sessions[1].GetShaderInterface(SPVC_RESOURCE_TYPE_UNIFORM_BUFFER);
auto& meta0 = sessions[0].GetMetadata();
auto& meta1 = sessions[1].GetMetadata();
for (auto& [name, offset] : meta0.plainUniformOffsetsInUBO) {
printf("%s: \t%u\n", name.c_str(), offset);
}
printf("\n");
for (auto& [name, offset] : meta1.plainUniformOffsetsInUBO) {
printf("%s: \t%u\n", name.c_str(), offset);
}
EXPECT_EQ(meta0.plainUniformOffsetsInUBO.size(), meta1.plainUniformOffsetsInUBO.size());
for (auto& [name, offset] : meta0.plainUniformOffsetsInUBO) {
EXPECT_EQ(offset, meta1.plainUniformOffsetsInUBO.at(name));
}
}