El uso de la imagen de textura con alfa hace que la malla "vea a través"
Estoy renderizando un archivo obj en OpenGL ES 2.0 en Android con Back-Culling habilitado. Solo una parte (el collar alrededor del cuello) de la imagen de textura tiene alfa.
Al renderizar solo la malla, se ve bien:
Sin embargo, al habilitar la textura, puedo ver a través de la malla en el otro lado. Puedes ver a continuación que la mano derecha que está detrás del cuerpo también se hace visible. ¿Alguna idea de lo que podría estar yendo mal?
Editar:
He probado lo siguiente :
Habilitar / deshabilitar el sacrificio de la cara posteriorComprobación del orden de vérticesVerificando si hay normales dentro de algunos puntosPero nada parece funcionar. Cualquier otra dirección sería apreciada.
Edición 2:
Abrí la imagen de textura y llené toda el área transparente con color negro guardándola como sin capa alfa en un programa de edición de imágenes. Y así es como se ve ahora:
El problema de transparencia desapareció, pero no podré ver el collar correctamente.
Edición 3: CanAlpha-blending y el Z-buffer ser un problema como se describe en el enlace? Afirma "El búfer Z no funciona para polígonos transparentes".