|
La siguiente lista explica los diferentes tipos de proyección que se pueden usar con la cámara. Los tipos más comunes son las proyecciones ortográfica y perspectiva. El TIPO_DE_CÁMARA debería ser el primer elemento en la declaración de la cámara. Si no se especifica ninguno, el modo por defecto es la cámara perspectiva.
La memoria intermedia (más conocida como buffer) de vistas sólo se puede utilizar con las cámaras perspectiva y ortográfica.
La palabra clave perspective
determina la cámara
perspectiva, que simula la típica cámara con objetivo. El ángulo
de visión horizontal es determinado por la proporción entre la
longitud del vector direction
y la longitud del
vector right
, o por la palabra clave opcional angle
,
que es el modo aconsejado. El ángulo de visión ha de ser mayor de
0 y menor de 180 grados. Véase la figura en la sección "Situando
la Cámara" para conocer la geometría de la cámara perspectiva.
La cámara ortográfica tiene dos modos de operación:
La proyección ortográfica pura. Esta proyección utiliza rayos paralelos para crear una imagen de la escena. El área de visión está determinada por las longitudes de los vectores right y up, que, por cierto, han de ser especificados, ya que con este tipo de proyección no se utilizan los de la cámara por defecto. En caso de ser omitidos, se usará el segundo método de proyección ortográfico de la cámara.
Si, en una cámara perspectiva, reemplazamos la palabra clave perspective
por orthographic
, y dejamos los demás parámetros
igual, obtendremos una vista ortográfica con la misma área de
imagen. Se puede conseguir lo mismo añadiendo la palabra clave angle
a una cámara ortográfica. El valor de los ángulos es opcional.
Ergo, este modo se activa si up
y right
no están presentes en la declaración de la cámara, o cuando la
palabra clave angle
sí lo está.
Debemos prestar atención al hecho de que las partes visibles de la
escena pueden variar cuando cambiamos entre las vistas perspectiva y
ortográfica. Mientras los objetos de interés estén cerca del punto look_at
,
seguirán visibles cuando cambiemos a la cámara ortográfica. Los
objetos más lejanos pueden salir del encuadre mientras los cercanos
permanecen a la vista.
Si los objetos están demasiado cerca a la situación de la cámara pueden desparecer. Demasiado cerca quiere decir, detrás del plano de proyección de la cámara ortográfica (el plano que atraviesa el punto look_at).
Ésta es una proyección esférica. El ángulo de visión se especifica mediante la palabra clave angle. Un ángulo de 180 grados crea un ojo de pez "estándar", mientras que un ángulo de 360 grados crea un súper-ojo-de-pez. Si usamos este tipo de proyección, obtendremos una imagen circular. Si no es el caso, y por ejemplo, obtenemos una imagen elíptica, deberíamos consultar la sección "Relación de Aspecto".
Esta proyección es parecida a la anterior, pero proyecta la imagen
en un rectángulo en vez de un círculo. El ángulo de visión puede
ser especificado usando la palabra clave angle
.
La proyección omnimax es un "ojo de pez" de 180 grados al que
se le ha reducido el ángulo de visión en dirección vertical. En
realidad, este tipo de proyección se usa para crear películas que
puedan ser proyectadas en los cines Omnimax (con pantalla en forma
de cúpula). La imagen resultante se asemeja a una elipse. La
palabra clave angle
no se utiliza en este tipo de
proyección.
Esta proyección es llamada "proyección cilíndrica
equirectangular". Su uso supera el problema que conlleva la cámara
perspectiva cuando el ángulo de visión se acerca a 180 grados. Se
utiliza un tipo de proyección cilíndrica capaz de manejar ángulos
de visión mayores de 180 grados con una distorsión lateral
aceptable. La palabra clave angle
se utiliza para
determinar el ángulo de visión.
Si utilizamos esta proyección, la escena se proyecta sobre un
cilindro. Hay cuatro tipos diferentes de proyecciones cilíndricas,
dependiendo de la orientación del cilindro y la posición del punto
de vista. A la palabra clave cylinder
, debe seguirle
un valor entero entre 1 y 4. El ángulo de visión y la longitud de
los vectores up o right determinan las dimensiones de la cámara y
la imagen visible. La cámara a usar se determina mediante un
número. Los tipos son:
1. cilindro vertical, con punto de vista fijo
2. cilindro horizontal, con punto de vista fijo
3. cilindro vertical, el punto de vista se mueve a lo largo de los ejes
del cilindro
4. cilindro horizontal, el punto de vista se mueve a lo largo de los
ejes del cilindro
Usando esta proyección la escena se proyecta en una esfera.
Sintaxis:
camera { spherical [angle HORIZONTAL [VERTICAL]] [CAMERA_ITEMS...] }
El primer valor tras el ángulo ajusta el ángulo de visión horizontal de la cámara. Con el segundo valor opcional, se ajusta el ángulo de visión vertical, ambos en grados. Si el ángulo vertical no se especifica, se toma por defecto la mitad del ángulo horizontal.
La proyección esférica es similar a la proyección ojo-de-pez, en que la escena es proyectada en una esfera. Pero se diferencia en que se usan coordenadas rectangulares en lugar de coordenadas polares; en esto funciona del mismo modo que el mapeado esférico (map_type 1).
Esto tiene varias utilidades. Primero, permite que una imagen generada con una cámara esférica pueda ser mapeada en una esfera sin distorsión (con la cámara ojo de pez, primero se ha de convertir la imagen de coordenadas polares a rectangulares con un editor de imágenes). Además, permite efectos como el "mapeado de entorno", a menudo usado para simular reflejos en otros programas infográficos que no usan algoritmos de trazado de rayos, sino scanline.
|