Android GLES20.glBlendEquation no funciona?

He estado tratando de hacer un motor 2.5D con texturas de mapa de profundidad y normal para unas pocas semanas, no a diferencia de lo que se utiliza aquí Linky . Después de pensar el dibujo de un mapa de profundidad en el fragmento shader de una textura era imposible debido a ES 2.0 falta de la variable gl_fragDepth encontré un tutorial para iOS donde se usó glBlendEquation con el modo GL_MIN / GL_MAX a "falso" buffer de profundidad del fragmento A un framebuffer-textura Linky . Desafortunadamente GLES20.glBlendEquation hace que la aplicación se bloquee en ambos teléfonos (SGS 1/2) con UnsupportedOperationException. Así que me pregunto si alguien ha utilizado esta función para cualquier éxito? GL_MIN / GL_MAX también parece estar faltando en la especificación OpenGL ES 2.0 de Android, así que estoy probablemente sin suerte aquí … ¿Alguna idea?

BTW Parece que funciona en GL11Ext, pero ya que estoy usando el shader de fragmentos para el mapeo normal esto no funcionará de mí.

Estaba experimentando en mi tableta de Vega (Tegra) y esto funcionó para mí:

Fragment shader:

#extension GL_NV_shader_framebuffer_fetch : require // makes gl_LastFragColor accessible precision highp float; varying vec2 v_texcoord; uniform sampler2D n_sampler; void main() { vec4 v_tex = texture2D(n_sampler, v_texcoord); gl_FragColor = min(gl_LastFragColor, v_tex); // MIN blending } 

Muy fácil, ¿eh? Pero me temo que esto será NV-sólo.

  • Framebuffer FBO render a la textura es muy lento, con OpenGL ES 2.0 en Android, ¿por qué?
  • LibGDX SpriteBatch Multitextura posible?
  • Monitor de GPU de Android Studio no funcionará para OpenGLES2
  • Adreno 220 GLSL bug
  • AndEngine - Kill Sprite después de X segundos?
  • OpenGL ES profundidad buffer android, no puede llegar a trabajar
  • ¿Dónde se especifica cómo OpenGL ES 2.0 representa los valores de textura flotante en el fragmento shader?
  • Opengl es 2.0 dibujar superposición de mapa de bits en vídeo
  • GLSL ES falla las variables locales?
  • Bucle liso del juego del androide
  • Cómo implementar gesto multitouch en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.