Разрабатываю на Дроиде, версия 2.1-update1. Мои поддерживаемые расширения GL включают GL_OES_point_sprite и GL_OES_point_size_array.
Я не могу получить точечные спрайты для рендеринга. Приведенный ниже код генерирует исключение UnsupportedOperationException из GLWrapperBase при вызове glTexEnvi. Если я отключу текстуры и закомментирую все glTexEnvi, это вызовет то же самое исключение ниже, в glPointSizePointerOES().
Правильно ли поддерживаются точечные спрайты в Android? У кого-нибудь они заработали? Или есть проблема с моим кодом ниже?
// Note that gl is cast to GL11
gl.glEnable(GL11.GL_TEXTURE_2D);
gl.glEnable(GL11.GL_BLEND);
gl.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
gl.glDepthMask(false);
gl.glEnable(GL11.GL_POINT_SPRITE_OES);
gl.glTexEnvi( GL11.GL_POINT_SPRITE_OES, GL11.GL_COORD_REPLACE_OES, GL11.GL_TRUE );
gl.glEnableClientState(GL11.GL_VERTEX_ARRAY);
gl.glVertexPointer(2, GL11.GL_SHORT, 0, .vertBuffer);
gl.glEnableClientState(GL11.GL_POINT_SIZE_ARRAY_OES);
gl.glPointSizePointerOES(GL11.GL_FLOAT, 0, pointSizeBuffer);
Спасибо