Sigo con el problema que hace que no todos los polígonos se pinten correctamente, dejando huecos a través de los que se ven lo que hay detrás. En el caso del modelo con el que estoy trabajando casi da miedo, porque en la zona de la boca falla especialmente y según cómo se gira se puede ver toda la cabeza y el rostro correctamente, en la zona de la mandíbula toda la hilera de dientes, como una calavera.
He estado probando la solución que se me ocurrio en la entrada anterior, pero no ha funcionado. La idea era multiplicar todos los puntos por un factor fijo para que estuviesen más alejados entre sí y que no se solaparan unos con otros al hacer los cálculos, pero no ha resultado.
Primero he probado con la transformación de escalado, dando el mismo valor en los tres ejes, y no se han notado mejoras. Después he modificado la función que lée el modelo del fichero 3DS y según leía las coordenadas de los vértices las multiplicaba por ese valor fijo, pero tampoco ha mejorado, incluso creo que ha empeorado.
Además de hacer las operaciones anteriores también he tenido que modificar la posición de la cámara (alejándola) y ampliar el espacio del escenario alejando más los planos que lo delimitan, ya que al multiplicar las coordenadas aumentaba también el tamaño del objeto, hasta que se salía de la pantalla.
Parece pues claro que no es problema de que los vértices estén demasiado juntos, o de que las normales estén mal calculadas, ya que los polígonos que no se dibujan no son siempre los mismos, sino que varían según el ángulo en que se rota el modelo. Tendré que pensar en otra solución...

No hay comentarios:
Publicar un comentario