Как избежать правила POT для текстур Opengl? - PullRequest
0 голосов
/ 07 октября 2011

Мне нужно загрузить не POT-растровые изображения в мое приложение opengl es для Android.

Что мне нужно, так это наложить мое не-POT-растровое изображение на другое растровое изображение с размером POT.Мне нужно перекрывать растровое изображение без POT в центре растрового изображения POT.

Как я могу это сделать?

Я пытался создать createScaledBitmap, но он растягивает изображение, и я этого не хочу.

Спасибо

1 Ответ

1 голос
/ 06 ноября 2011

Способ сделать это - не проецировать NPOT на POT, а загрузить POT и соответственно манипулировать UV-координатами в буфере координат текстуры. Прямо сейчас у вас, вероятно, есть что-то вроде этого:

private float textureCoords[] = {
        0.0f, 1.0f,
        0.0f, 0.0f,
        1.0f, 1.0f,
        1.0f, 0.0f          
};

Для УФ-наложения текстуры на квад. Изменение значений на значение, отличное от 0,0 или 1,0, будет соответственно обрезано. Убедитесь, что вы правильно выбрали эти значения, иначе в ваше изображение попадет какой-то цвет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...