2012-01-31 17 views
9

¿hay un tamaño de textura mínimo que un hardware determinado necesita para ser compatible con la especificación OpenGL-ES 2.0?Tamaño de textura requerido mínimo para el cumplimiento de OpenGL-ES 2.0 en Android?

¿Algo como el valor GL_MAX_TEXTURE_SIZE tiene que ser al menos 1024 o 2048 o algo así?

La razón por la que me gustaría saber esto es porque trabajo en algo que usa sombreadores y, como tal, tiene que ser OpenGL-ES 2.0. Por lo tanto, me gustaría hacer las texturas lo más grandes posible sin tener que considerar todas y cada una de las limitaciones de la textura del hardware (como los teléfonos antiguos con solo 512x512).

Si hubiera un número mínimo (o un cierto valor que admita la mayoría de los dispositivos) eso me ayudaría mucho.

Respuesta

11

Sí, cualquier implementación de GLES2 debe admitir al menos una textura de 64 píxeles de ancho y alto. Puede consultar el tamaño real real de la textura real con la función glGetIntegerv utilizando GL_MAX_TEXTURE_SIZE enum.

Ver la página oficial de especificaciones 141, tabla 6.20.

+2

Gracias, lo revisé y lo encontré en http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.24.pdf pg. 149 tabla 6.17 y realmente dice un mínimo de 64 píxeles. Este es solo un número ridículamente pequeño para mis necesidades y creo que solo tengo que mantener las texturas mínimas de 1024 y espero que sea lo suficientemente bueno. – HardCoder

+0

Sí, es la misma especificación, pero es una versión anterior. Lo último es 2.0.25 desde el 2 de noviembre de 2010. Pero el límite es el mismo. –

+3

Estoy de acuerdo con 'HardCoder', esto es ridículo. ¿Alguna idea sobre eso? Por ejemplo, en el sitio oficial de Android, hay un buen gráfico circular que muestra la distribución de las versiones actualmente utilizadas de Android. ¿Hay estadísticas similares para el tamaño de la textura? (y otra información útil) –

Cuestiones relacionadas