Прокрутка текста / подписи в OpenGL ES 2.0 (через FBO) - PullRequest
0 голосов
/ 04 мая 2020

Я работаю над заголовком-презентацией (субтитрами), где возможна прокрутка заголовка.

Например,

Some caption, line - 1
Some caption, line - 2
Some caption, line - 3

После прокрутки это будет выглядеть: (Обратите внимание, строка 1 удаляется и добавляется строка 4.)

Some caption, line - 2
Some caption, line - 3
Some caption, line - 4

Я реализовал прокрутку путем рендеринга непосредственно в кадровый буфер по умолчанию. Тем не менее, я отображаю все шрифты на новой позиции каждый раз, когда поступает запрос прокрутки. Но я считаю, что это накладные расходы. Теперь я перешел в FBO и могу отображать не прокручивающиеся заголовки.

Для обработки прокрутки в FBO : (я думал об этом для простоты обработки в заголовке строки)

  • Я планирую иметь одну текстуру на линию. Всякий раз, когда запрашивается прокрутка, я нахожу новую позицию текстур (на строку) на дисплее и рендеринг.
  • Текстура, которая пересекает область заголовка (например, строка № 1), будет отброшена / отброшена .
  • В последней текстуре (например, строка № 4) я буду обновлять новые тексты до тех пор, пока не будет запрошена новая строка.

У меня также может быть одна текстура (для целых данных) в FBO и дополнительно для построчных текстур. или просто иметь текстуру для каждой строки и рендерить на фреймбуфер дисплея. Хотя реализация того, что удобно, я бы go за это.

Это хорошая стратегия? Пожалуйста, предложите любые лучшие решения, если это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...