Надеюсь, это поможет!
ал некоторое время с OpenGL на Android на различных устройствах. И если я не ошибаюсь, рендеринг по умолчанию всегда выполняется с пиксельным форматом RGB565.
Однако я хотел бы сделать более точные цвета, используя RGB888.
GLSurfaceView В документации упоминаются два метода, которые относятся к форматам пикселей:
SetFormat () метод выставленSurfaceHolderкак возвращеноSurfaceView.getHolder ()GLSurfaceView.setEGLConfigChooser () семейство методовЕсли я не ошибаюсь, я думаю, что мне нужно использовать только позже. Или используетSurfaceHolder.setFormat()
здесь уместно?
ДокументацияEGLConfigChooser класс упоминаетEGL10.eglChooseConfig (), чтобы узнать, какие конфигурации доступны.
В моем случае можно вернуться к RGB565, если RGB888 недоступен, но я бы предпочел, чтобы это было довольно редко.
Итак, возможно ли использовать RGB888 на большинстве устройств?
Есть ли проблемы с совместимостью или странные ошибки с этим?
У вас есть пример правильного и надежного способа настройки GLSurfaceView для рендеринга RGB888?