Я намагаюся реалізувати графік сцени, і у всіх статтях, до яких я потрапив, йдеться про сортування об'єктів. Отже, ви б сортували свої об'єкти, наприклад, "за матеріалами". Тепер, поки я сів і почав його реалізовувати, я начебто це сприйняв як належне, бо це мало сенс. Але тепер мені цікаво, що насправді змінюється сортування?
У моєму двигуні у мене є менеджер UBO, я використовую ці дані для зберігання даних, які будуть обмінюватися між програмами, на даний момент, що включає лише матриці часу та камери, проекцію та ліхтарі. які об’єкти банкоматів).
Тепер для кожної моделі мені потрібно змінити модель на єдину світову матрицю, сортування не збирається змінити це. Тож чи поганий стрибок від зміни цієї матриці до встановлення матеріалу для кожного об’єкта?
Я туманно пам’ятаю, як десь читав, що кожного разу, коли ви щось змінюєте на конвеєрі, воно повинно розмиватися, і це може спричинити проблеми з продуктивністю. Але для кожного дзвінка на малюнок я все одно налаштовую модель на світову матрицю, тож який сенс має коли-небудь турбуватися про це?
До речі, є будь-яка інформація про те, чи змінювати форму та називати glBufferSubData дорожче (або менше).