Я уже знаю, что для многих аппаратных средств требуются текстуры со степенью двойки. Но обязательны ли квадратные размеры изображения? Я имею в виду 32x32 64x64 512x512. Могу ли я использовать текстуру размером 512x256 на каждом оборудовании?
Размер текстуры Android OpenGL ES в степени 2
Ответы (2)
Да, текстура может быть не квадратной, это не проблема. Пока вы сохраняете ширину и высоту в два раза.
person
Mārtiņš Možeiko
schedule
16.07.2012
Нет, это должно быть 2base. Однако вы можете обойти это, добавив черные полосы вверху и/или внизу вашего изображения, а затем используя массив координат текстуры, чтобы ограничить, где текстура будет отображаться на вашем изображении. Например, предположим, что у вас есть текстура размером 13 x 16 пикселей. Вы можете добавить 3 пикселя черного цвета справа, а затем сделать следующее:
static const GLfloat texCoords[] = {
0.0, 0.0,
0.0, 13.0/16.0,
1.0, 0.0,
1.0, 13.0/16.0
};
так что вы можете иметь любой размер сейчас
person
Community
schedule
17.07.2012