В какой-то момент моего приложения (для Android) мне нужно изменить текстуру многоугольника.
Для этого я должен загрузить растровое изображение из папки активов, а затем передать растровое изображение методу loadBitmap моего полигона, который изменяет текстуру.
Работает нормально, но мне нужно переместить код в поток, потому что время загрузки растрового изображения застывает мой полигон opengl при загрузке растрового изображения из папки активов.
Поскольку я реализовал поток, который вызывается для изменения текстуры, но что-то идет не так, потому что моя текстура пуста (белая), когда я использую поток, но он работает, если я не использую поток, это мой код нити:
public class addNextPage extends Thread
{
GL10 gl;
public addNextPage(GL10 gl) {
super();
this.gl = gl;
}
public void run()
{
super.run();
Bitmap bm=loadImage(pages.get(0));
auxSquare.loadBitmap(context, gl, bm);
squares.set(3,auxSquare);
currentPage+=1;
//vuelvo a recolocar los squares
int posCont=-2; //el primer polígono está a la izquierda, no se ve.
for (int i=0;i<squares.size();i++){
if (squares.get(i)!=null)
squares.get(i).setPosition(posCont,0);
posCont+=2;
}
}
}