La textura de OpenGL ES 2.0 no se muestra en algún dispositivo

Encontré un marco de gráficos 3D para Android llamadoRajawali y estoy aprendiendo a usarlo. Seguí el tutorial más básico que representa un objeto shpere con una imagen jpg de tamaño 1024x512 para la textura. Funcionó bien en Galaxy Nexus, pero no funcionó en el Galaxy Player GB70.

Cuando digo que no funcionó, quiero decir que el objeto aparece pero la textura no está renderizada. Finalmente, cambié algunos parámetros que uso para el marco de Rajawali al crear texturas y lo hice funcionar. Esto es lo que descubrí.

La causa venía de donde elGL_TEXTURE_MIN_FILTER estaba siendo establecido. Entre los siguientes cuatro valores

GLES20.GL_LINEAR_MIPMAP_LINEAR
GLES20.GL_NEAREST_MIPMAP_NEAREST
GLES20.GL_LINEAR
GLES20.GL_NEAREST

la textura solo se renderiza cuandoGL_TEXTURE_MIN_FILTER no se establece en un filtro utilizando mipmap. Así que cuandoGL_TEXTURE_MIN_FILTER Se establece en los dos últimos que funciona.

Ahora aquí está lo que no entiendo y tengo curiosidad acerca de. Cuando reduzco la imagen que estoy usando como textura para dimensionar 512x512 laGL_TEXTURE_MIN_FILTER La configuración no importa. Los cuatro ajustes del filtro min funcionan.

Entonces, mi pregunta es, ¿hay algún requisito para las dimensiones de la imagen cuando se usa el filtro mínimo para la textura? ¿Como que debo usar una imagen que sea cuadrada? ¿Pueden otras cosas, como el estilo de ajuste o la configuración del filtro mag, ser un problema?

¿O parece un error de implementación OpenGL del dispositivo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta