![]() |
странность скорости отрисовки opengl
Раньше у меня каждый объект хранил 2 vbo, для вершин и индексов. Сделал 2 общих vbo на все объекты, при отрисовки просто буффер оффсетится, так скорость упала на 10-20% что за фигня? Где логика...
|
Ответ: странность скорости отрисовки opengl
на каких платформах наблюдается такое поведение?
|
Ответ: странность скорости отрисовки opengl
А сколько раз делаешь SetBuffer?
|
Ответ: странность скорости отрисовки opengl
Цитата:
вообще по идее техника должна давать буст. может просаживается в каких-то смежных местах. |
Ответ: странность скорости отрисовки opengl
Я как-то на Unity генерил меш из субмешей. Субмеши имели разные материалы. И вот из-за разных материалов в статистике было вершин больше во столько раз, сколько было этих материалов. Т.е. Unity ставила вершинный буфер например 3 раза для трех материалов. В результате вершин было в статистике х 3.
|
Ответ: странность скорости отрисовки opengl
Ну это нормально, любой меш режется по материалам, насколько я знаю нельзя сразу вывести несколько материалов.
|
Ответ: странность скорости отрисовки opengl
просто брать данные для вершин для каждого меша можно либо из отдельного вершинного буфера, либо с общего вершинного буфера, просто указывая начало. техника должна давать буст. она же дает тормоза. мне тоже интересно почему.
Цитата:
суть такова: под каждый набор vertex attribs ставится генерится свой вершинный буфер, чтобы данные в нем располагались как можно плотнее. Но потом меня напугало большое число ВБО, большое число лишней информации и менеджмент ее. Возможно введу такую оптимизацию (ли?) для позиций. Т.е. 2 ВБО - в одном все. Во втором только позиции. Второй нужен для рендеринга в z early pass или для рендеринга в текстуру глубины (для теней например). |
Ответ: странность скорости отрисовки opengl
Цитата:
|
Ответ: странность скорости отрисовки opengl
Цитата:
в общем случае, кроме позиций есть еще нормаль, тангент и пара текстурных координат. весь кусок памяти для такого случая будет в 3 раза больше, чем чисто позиции. мне кажется, что с в три раза меньшего куска моделька отрисуется быстрее. но надо проверять. |
Ответ: странность скорости отрисовки opengl
Цитата:
|
Ответ: странность скорости отрисовки opengl
На телефонах ограничение FPS, на iOS вроде 30, на андроедах 60.
|
Ответ: странность скорости отрисовки opengl
на iOS у всех 60, наверное тока у юнити 30.
|
Ответ: странность скорости отрисовки opengl
Цитата:
|
Ответ: странность скорости отрисовки opengl
нет, мерял аналогичным методом, как и время рендера. Время рендера уменьшается а фпс такой же.. как то в голове не укладывается почему так, гдето читал что это из-за энергосбережения...
|
Ответ: странность скорости отрисовки opengl
Путем ковыряний пришел к выводу, что glbindbuffer ничего не стоит, и нет смысла хранить кучу объектов в одном vbo. разве что для оптимизации дипа.
Очень сильно кушает время дип. gldrawelements. Как тут можно оптимизировать? Если куча разношерстных объектов с разными материалами, получается никак? Впринципе я добился достойного фпс на говеном железе, это поднял с 15 до 51 на adreno 200, но хочется большего. У кого какие соображения?? |
Часовой пояс GMT +4, время: 18:19. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot