[Fix] (MG_State/VertexArray): use array to save attribs to maintain order and optimize performance

This commit is contained in:
2025-06-25 16:22:16 +08:00
parent 0359a4e97f
commit bf8aaaa9c1
6 changed files with 25 additions and 19 deletions
@@ -379,7 +379,9 @@ namespace MG_GL::GL {
auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO();
if (!pVAO) return;
for (const auto& [index, attrib] : pVAO->attribs) {
// for (const auto& [index, attrib] : pVAO->attribs) {
for (uint32_t index = 0; index < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++index) {
const auto& attrib = pVAO->attribs[index];
if (attrib.enabled) {
Diligent::LayoutElement elem;
elem.InputIndex = index;