В настоящее время я работаю над реализацией виртуальной текстуры.Уровни mipmap используются в качестве структуры управления уровнем детализации.(Каждый тексель в виртуальной текстуре относится к блоку данных в «реальной» текстуре.)
Данные существуют на нескольких уровнях детализации, что приводит к разному количеству блоков в виртуальной текстуре.
Пример:
level size of data number of blocks
0 60 4
1 30 2
2 15 1
Моя идея состояла в том, чтобы вызывать glTexImage для каждого уровня детализации в виртуальной текстуре для создания различных уровней mipmap.
Проблема заключается в том, что при создании не возникает ошибокили обновление / загрузка я не могу получить какие-либо данные из текстуры.Создание только базового уровня и вызов glGenerateMipmap работает нормально, но приводит к неправильным размерам для некоторых базовых размеров.(технически они верны, но не в моем случае)
Я где-то читал, что размеры уровня mipmap должны делиться на два (или на два и этаж).
Вопросы:
- Можно ли загрузить «пользовательские» уровни mipmap?
- Существуют ли ограничения на размеры уровней mipmap?