Estos días he mejorado un poquillo la práctica, pero empiezo a no tener ganas de hacer más. Básicamente, en cuanto meta mi nombre en la pantalla tendré (creo) los requisitos mínimos. Le he añadido un par de terrenos más (que no se ven en la captura), y uno de los terrenos es una especie de volcán con humo. También he cambiado la skybox y ahora el mar se difumina con el fondo (usando ecuaciones de niebla, pero utilizando el canal alfa en lugar de darle un color a la niebla).

También he puesto que si te sales de unos límites prefijados se activa una secuencia “no interactiva” en la que la nave da la vuelta y entra en la zona permitida. Al menos me ha servido para aclarar algunos conceptos acerca de la integración de shaders en un motor. Lamentablemente, no hay ninguna fórmula mágica, y aunque se automaticen ciertas cosas (como pasar la matriz WVP o las texturas al shader) no es tan inmediato como utilizar la fixed pipeline.

Por último, aplico un shader para hacer multitextura en los terrenos. Utilizo dos texturas para hacer la capa difusa (que mezclo según la altura del vértice) y otra más para hacer las veces de lightmap. No hay ganas de más :)

Quizás vuelva a la skybox vieja, porque la verdad es que viendo ahora la captura… la nueva no pega demasiado con el resto de la escena.