Я здесь, потому что я работаю над программой OpenGL, и у меня есть некоторые проблемы с производительностью. Я работаю с OpenGL ES 3.0 на iMX6 soc.Open gl es - Как улучшить производительность, визуализировать текстуру, смешать
Вот мой алгоритм:
я получить изображение с камеры, которая непосредственно соединенным с текстурой. Используя FBO, я визуализую текстуру, чтобы отобразить изображение в определенной форме.
Я делаю то же самое (со вторым FBO) для другого изображения, которое отправляется через общую память другим приложением. Этот шаг выполняется только в том случае, если изображение обновлено. Только один раз в секунду.
Я смешиваю эти две текстуры в буфере кадра по умолчанию, чтобы отобразить результат на экране.
Если я выполняю эти три этапа отдельно, он работает хорошо, и экран обновляется на 30FPS. Но когда я включаю три шага в одну программу, рендеринг выполняется очень медленно, и я получаю только 0.5FPS.
Мне интересно, достаточно ли GPU на iMX6, но я думаю, что это не сложный алгоритм. Я думаю, что я делаю что-то не так, но что? Я использую 3 разных буфера кадров, так что это хороший способ или я должен использовать только один?
Может кто-нибудь дать мне ответ, подсказки, все, что может мне помочь? :-)
Размеры моих изображений: 1280x1024 x RGBA. Затем я делаю некоторое преобразование из текстуры с плавающей точкой в целое и обратно в float, это делается для выполнения побитовой операции над пикселями.
«Затем я делаю преобразование из текстуры с плавающей точкой в целое и обратно в float, это делается для выполнения побитовой операции над пикселями». Моей догадкой было бы, что это медленный бит. Что произойдет, если вы сделаете более простую смесь в качестве теста (например, выведите среднее из двух изображений)? – Columbo
Спасибо за ваш ответ, я не могу попробовать это сейчас, но я сделаю это как можно скорее. Лучше ли работать с текстурой с плавающей запятой или целочисленным или даже нормализованным целым числом? (Для лучшей производительности) – Ango742
Некоторый фактический код и шейдеры помогли бы - трудно дать конкретные советы, основанные на довольно пушистом описании ... – solidpixel