OpenGL ES, как вы визуализируете PVR текстуры? - PullRequest
0 голосов
/ 26 августа 2010

Редактировать: хорошо, извините, у меня была простая ошибка программирования, есть ли способ удалить этот вопрос?

У меня есть несколько сжатых текстур, которые являются файлами PVR, но я не могу нарисовать их в моемПриложение для iPad, использующее OpenGL ES.

Я могу отлично рисовать файлы PNG, я знаю, что файлы PVR загружаются правильно.Существуют ли какие-то специальные функции рисования OpenGL, которые мне нужно вызывать для рисования файлов PVR?

Редактировать: Все, что я получаю, - это белое изображение.

Любая информация приветствуется.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2011

После загрузки PVR-текстуры ничем не отличаются от других форматов. Вы забыли пропустить заголовок во время загрузки данных или использовали неверные параметры для glCompressedTexImage2D? Возможно даже, что инструмент сжатия не смог преобразовать изображения из-за неправильного размера или цветового формата.

0 голосов
/ 22 сентября 2010

Рисование текстур PVRTC должно быть точно таким же, как и у любого другого формата текстур - скорее всего, проблема заключается в загрузочном коде. Сообщается ли об ошибках GL во время загрузки?

Основное отличие от загрузки несжатых текстур в строке:

glCompressedTexImage2D(GL_TEXTURE_2D, level, GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG, width, height, 0, size, data);

или

glCompressedTexImage2D(GL_TEXTURE_2D, level, GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG, width, height, 0, size, data);

Убедитесь, что вы не устанавливаете режим фильтра GL для использования MIP-карт, если они также не находятся в текстуре.

Поиск PVRTC в документах Apple приводит к приличному обзору того, как использовать эти текстуры.

...