Una errata:
para la tangente se usa la mitad del angulo, asi que no es tan (90) sino tan(45):
// FOV 90 = 1.0 = tan( 45.0 * M_PI / 360.0);
Aparte de que la tangente de 90 es infinito, si usaras 90 tendrias un FOV de 180 grados (90 a cada lado). No afecta al código, solo al comentario por si quieres usar otro ángulo.
para la tangente se usa la mitad del angulo, asi que no es tan (90) sino tan(45):
// FOV 90 = 1.0 = tan( 45.0 * M_PI / 360.0);
Aparte de que la tangente de 90 es infinito, si usaras 90 tendrias un FOV de 180 grados (90 a cada lado). No afecta al código, solo al comentario por si quieres usar otro ángulo.