TUTORIAL CONFIGURACIONES

 

ARTIFACT

 

 

Artifact:

Corregido:

Explicacion tecnica:

Si bien el canal alfa de la planta es blanco y negro (es decir que tiene 100% de visiblidad o 0%), luego cuando eso se aplica al 3d, por el sampling (usualmente bi-linear), queda toda una gama de translucidez de cero a 100 en los limites de cada hoja y tallo.

Esos objetos traslucidos, no se llevan bien con zbuffer, y hay que dibujarlos en orden de atras para adelante. El sistema eso lo tiene en cuenta y dibuja dichos objetos en el orden correcto. Pero como la planta es todo un objeto, eso no se puede hacer a nivel de triangulos, y la planta se dibuja toda entera en un unico drawcall por layer. El artifact se produce entre hojas de la misma planta (y no con hojas de otra planta).

Al dibujar una hoja que esta mas cerca del punto de vista, escribe el zbuffer con un valor superior, pero al tener transparencia todavia deja ver el fondo. Luego, cuando quiere dibujar algo que estaba detras de la hoja, pero que se deberia ver por la transparencia, no llega el pixel por fallar el ztest :

Para resolverlo se dibuja en 2 pasos:

Una primer pasada todos los layers (opacos y transparentes) pero con un alpha ref de 80%. Esto hace que solo los objetos opacos y visibles al 80% escriban efectivamente el zbuffer.

Una segunda pasada, con alpha ref al 5%, con ztest habilitado, pero zwrite deshabilitado, de esta forma se hace un blend de todos los objetos, y el zbuffer queda bastante bien por la primer pasada.

La primer pasada aproxima la figura opaca y la segunda la parte transparente:

El artifact sigue estando pero es muchisimo menos notorio.

A los efectos practicos es impercetible:

 

 

 

Indice General
Pag. Inicio