La información sobre las coordenadas de los puntos de la textura asociados a los vértices está contenida en el fichero .3DS, y es leída de él al cargar el modelo. Además de ello es necesario también cargar la imagen de la textura desde un fichero gráfico. En la página de ZeusCMD hay un tutorial sobre cómo hacerlo.
En él se explica además como sortear un pequeño problema que ya había tenido, que es el de las rutas absolutas de los ficheros. En el Windows Mobile/PocketPC si no se especifica la ruta completa del fichero que se quiere abrir toma por defecto el directorio raiz (/) en lugar de aquel en que reside el ejecutable, que es un comportamiento totalmente distinto al que estamos acostumbrados en otros sistemas. Lo que hay que hacer es tomar la ruta completa del fichero ejecutable (el parámetro argv[0] de la función main de C) y de ahí extraer el nombre del directorio, para luego ponerlo delante de cualquier otro archivo que se abra a partir de ese momento. Esto todavía no lo he implementado en mi programa, pero lo haré próximamente, de momento los fichero que necesita abrir (el .3DS del modelo, el .BMP de la textura, y el log) se guardan en el raiz, lo que es ciertamente poco limpio.
Después de incorporar la textura, el modelo queda así, mucho mejor:
Hay sin embargo algo que no está bien del todo, según cómo se gira el modelo hay polígonos que no se pintan bien. Esto ya lo había notado al hacer la representación con color plano y sombreado, pero es mucho más evidente al ponerle la textura:

A parte de que, según he visto ahora al poner aquí las fotos, se ve muy oscuro, hace falta más luz.
De ambas cosas me ocuparé en la próxima sesión de trabajo.



No hay comentarios:
Publicar un comentario