Entorno: WebGL, Chrome. Tengo el siguiente comportamiento cuando se utiliza transparentes del png como texturas para los modelos:Comportamiento de texturas transparentes en WebGL
- imagen A - el árbol esconde el edificio detrás de él y veo la caja mundo textura. También se oculta (ramas traseras no son visibles)
- Al mismo tiempo - Imagen B - funciona correctamente, la ventana es transparente y ver lo que hay detrás
Ambas capturas de pantalla se realizaron en la misma escena al mismo tiempo desde diferentes posiciones de la cámara. Las texturas son producidas por el mismo algoritmo.
No puedo entender cuál es la diferencia entre la ventana y la transparencia de las ramas. Mi pregunta principal es: ¿cómo arreglar las ramas para no ocultar los objetos detrás de ellas? código de shader es:
gl_FragColor = vec4(textureColor.rgb * vLightWeighting, textureColor.a);
jugaba con activar/desactivar la mezcla y depth_test, a veces conseguir los resultados deseados, pero no está seguro si es la forma correcta de hacer las cosas.
Gracias por su respuesta clara. Puedo renderizar en el orden requerido. El único problema restante entonces es la auto-superposición. El árbol en el ejemplo "esconde" ramas traseras por el frente. Supongamos que es imposible resolverlo con los métodos habituales. Al menos el 90% de los problemas ahora se resuelven, renderizando en el orden correcto. – Vecnas
@Toji ¿Existe un buen enfoque para ordenar los objetos por profundidad? Greeings – schlenger