Как преобразовать файл JPG или PNG в формат RGB_565 и загрузить в opengles 2.0 в Android?

1

Я работаю над приложением для Android с Opengl es 2.0. В настоящее время я загружаю огромный файл размером 2048x2048 для текстуры. У меня в основном много 256x256 изображений, объединенных в этот большой файл, чтобы сэкономить время загрузки в приложение. Я узнал, что, преобразовывая этот файл jpg в RGB_565, я могу сэкономить немного денег и там, загружая быстрее.

Я попытался сделать это в Google, но не нашел прямого способа конвертировать jpg в формат RGB_565 для загрузки в opengl. Когда я пытаюсь загрузить нормальный jpg в opengl, используя расширение как RGB_565, я получаю только черный экран. Пожалуйста, дайте мне знать, как конвертировать простой файл jpg в формат, который может быть загружен быстрее, например формат RGB_565.

Также, пожалуйста, дайте мне знать ваши идеи по обработке текстур с помощью android, чтобы приложение Android могло быстрее загружать вещи и давать хорошие результаты.

Теги:
opengl-es
textures
opengl-es-2.0

1 ответ

0

Обычные JPEG - 24-битные. Если вы хотите текстуру 565, вам придется перекодировать либо во время декодирования, либо после декодирования, но до загрузки текстуры. Если вы испытываете недостаток в декодировании, это не поможет вам; если вы испытываете нехватку времени при загрузке, ожидайте, что это приведет к ускорению на 33%.

Если вы в настоящее время используете JPEG для текстуры, у вас нет альфа-канала, о котором можно беспокоиться. В зависимости от ваших потребностей в области качества использование ETC1- (или сжатие устройства - PVRTC неплохое, если вы используете графический процессор PVR), сжатая текстура будет иметь значительно большее улучшение как времени загрузки, так и времени декодирования.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню