Какое разрешение текстуры использовать (360/720/1080) при рендеринге каждого кадра в OpenGL ES (Android) и Metal (iOS)?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Какое разрешение текстуры использовать (360/720/1080) при рендеринге каждого кадра в OpenGL ES (Android) и Metal (iOS)?

Сообщение Anonymous »

Я создаю мобильное приложение, которое визуализирует контент пользовательского интерфейса с помощью специального средства визуализации:
  • Android: OpenGL ES
  • iOS: Metal
Я непрерывно визуализирую текстурированные четырехугольники на поверхности (с ориентировкой ~60 кадров в секунду, поэтому цикл прорисовки каждые ~16 мс).
Мой макет определен в виртуальные пиксели:
  • Виртуальная область просмотра: 360 × 360
  • Кадровый буфер устройства (реальные пиксели): 1080 × 1080 (эффективный масштаб ~3×)
Для данного изображения я могу загрузить три предварительно обработанных варианта с сайта мой сервер:
  • 360 × 360
  • 720 × 720
  • 1080 × 1080
Изображение (фотография) может отображаться в прокручиваемом списке (поле прокрутки), поэтому можно просматривать и обновлять несколько изображений каждое кадр.
Вопрос:
Какой вариант мне обычно следует загружать/загружать в качестве текстуры графического процессора для лучшей общей производительности и плавной прокрутки?
  • Всегда загружайте 1080×1080, поскольку он соответствует реальному размеру пикселей (наилучшее качество, но текстуры большего размера)?
  • Предпочитаю 360×360 (или 720×720) и позволить графическому процессору масштабировать его до конечного размера на экране (меньше памяти/пропускной способности, но потенциально более размыто)?
  • Существует ли стандартное практическое правило (основанное на размере пикселей на экране) для выбора размера текстуры в сценарии пользовательского интерфейса в реальном времени?
Дополнительные сведения:
  • Текстура загружается один раз и используется повторно (не загружается повторно в каждом кадре).
  • При выборке используется линейная фильтрация.
  • При необходимости я могу генерировать MIP-карты.
  • Основная задача — избежать дрожания во время прокрутки (постоянное время кадра), а не только пикового значения. FPS.
Как выбрать оптимальный вариант (и нужно ли использовать динамическое переключение LOD)?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ame-in-ope
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»