ГЛ: Автогенерация некоторых, но не всех уровней mipmap? - PullRequest
2 голосов
/ 20 июня 2010

У меня есть текстура, которой я хотел бы иметь относительно хороший контроль над двумя или тремя самыми большими уровнями mipmap, но при меньших размерах я рад, что GL сгенерировал для меня mipmaps на основе самого маленького Я загрузил, вплоть до 1x1. Это возможно? FWIW, я на iPhone OS с GL ES 1.1 с этим.

Я пытался включить GL_GENERATE_MIPMAP при загрузке 128x128, а затем 64x64, но это, кажется, приводит к бестолковым цветам (белым квадратам) всех размеров.

Есть ли способ сделать это? Или я должен предварительно сгенерировать все уровни, если собираюсь предоставить более одного?

Спасибо.

1 Ответ

1 голос
/ 22 июня 2010

Согласно справочным страницам GL ES, то, что вы делаете, должно работать:

GL_GENERATE_MIPMAP Устанавливает параметр автоматической генерации mipmap. Если установлено значение GL_TRUE, внесение любых изменений во внутренние тексели базового массива уровня мип-карты также будет вычислять полный набор массивов мип-карт, полученных из модифицированного базового массива уровня. Уровни уровней массива от + 1 до p заменяются производными массивами независимо от их предыдущего содержимого. Все остальные массивы mipmap, включая базовый массив уровней, остаются без изменений в этом вычислении.

Извлечено из Справочных страниц GL ES 1.1: glTexParameter

Вы уверены, что ваш код правильный? Это также может быть ошибкой в ​​вашей реализации GL ES.

...