Плотность растрового изображения на текстурах openGL ES (Android) - PullRequest
1 голос
/ 16 ноября 2011

У меня проблемы с загрузкой текстур относительно их разрешения на openGL для Android. Если текстура 256x256, все работает отлично, но если это другое разрешение, программа выдает это исключение при запуске:

android.content.res.Resources $ NotFoundException: идентификатор ресурса # 0x ........

Я нашел в Интернете код, который изменяет плотность растрового изображения следующим образом:

BitmapFactory.Options options = new BitmapFactory.Options();
options.inDensity = 240;

и, делая это, я могу загрузить 512x512 текстур. Но я не могу загрузить, например, 128x128 растровых изображений, потому что я не знаю, какую плотность я должен использовать. Я также не уверен, что это нормальная процедура загрузки текстур, потому что я не нашел много информации в Интернете.

Спасибо за чтение!

Ответы [ 2 ]

0 голосов
/ 17 ноября 2011

Если у кого-то возникла эта проблема, или текстуры оказались испорченными (например, другие или другие странные вещи), я смог решить эту проблему, удалив все элементы в папке «drawable» и вставив их снова.Кажется, указатели на изображения были повреждены или что-то в этом роде.

0 голосов
/ 16 ноября 2011

Вам не нужно указывать плотность, вы просто должны убедиться, что изображение имеет степень 2, что вы, похоже, и сделали. Я бы оставил опцию плотности и просто указал Config.ARGB_8888;

Если это не решит проблему, вы можете показать свой код для загрузки текстуры

...