Я просто застрял в текстурировании своих кубов - я искал веб и понял, что единственный способ дать кубу 6 разных текстур (с glDrawElements) - создать около 24 индексов. Он все же быстрее, чем просто glDrawArrays, но он выглядит довольно нелогично и ужасно медленным. Я понимаю, что цель glDrawElements - иметь дело со сложными моделями, где очень мало индексов имеют разные текстурные коорды. Но, я все еще довольно смущен, потому что glDrawElements дал мне повышение производительности (без каких-либо эффектов, только окраска шейдеров) примерно с 50-67 мс с 10 000 кубов (glDrawArrays), до 25-33 мс с 100 000 кубов.Оказание тысяч текстовых кубов
Мой вопрос: я просто должен принять его, или есть еще какой-то способ преодолеть это?
вместо текстурирования поверхности по поверхности вы можете попробовать текстуру с текстурой Cubemap, что-то вроде [это] (https://www.evl.uic.edu/aej/525/pics/cubemap-diagram.jpg). –
Почему вы ожидаете, что 'glDrawElements' будет медленнее? Это почти никогда не бывает, даже когда никакие вершины не разделяются вообще. – derhass