Establece una proyección en perspectiva para la cámara.
En una proyección en perspectiva, las formas que están más lejanas de la cámara aparecen más pequeñas que las que están cerca de la cámara. Esta técnica, llamada escorzo, crea escenas 3D realistas. Se aplica por defecto en nuevas instancias de p5.Camera.
myCamera.perspective() cambia la perspectiva de la cámara por cambiar su espacio de visión. El espacio de visión de la cámara es un volumen de espacio que se puede ver desde la cámara. La forma de espacio de visión es una pirámide con su cima cortada. La cámara se encuentra en el lugar donde debería estar la cima de la pirámide y apunta hacia la base de la pirámide. Vista desde la cámara, se ven solo las formas dentro del espacio de visión.
El primer parámetro, fovy, es el campo de visión vertical de la cámara. Es un ángulo que describe cómo alto o ancho es la vista de la cámara. Por ejemplo, llamar a myCamera.perspective(0.5) establece el campo de visión vertical de la cámara en 0.5 radianes. Por defecto, fovy se calcula basado en la altura de la ventana y la coordenada z por defecto de la cámara, que es 800. La fórmula para el campo de visión por defecto es 2 * atan(height / 2 / 800).
El segundo parámetro, aspect, es la relación de aspecto de la cámara. Es un número que describe la relación de ancho a alto del plano superior de la proyección. Por ejemplo, llamar a myCamera.perspective(0.5, 1.5) establece el campo de visión de la cámara en 0.5 radianes y su relación de aspecto a 1.5, lo que haría que las formas aparezcan más delgadas en una lienzo cuadrado. Por defecto, aspect se establece a ancho / alto.
El tercer parámetro, near, es la distancia desde la cámara al plano cercano. Por ejemplo, llamar a myCamera.perspective(0.5, 1.5, 100) establece el campo de visión de la cámara en 0.5 radianes, su relación de aspecto a 1.5, y coloca el plano cercano a 100 pixeles de la cámara. Cualquier forma dibujada a menos de 100 pixeles de la cámara no será visible. Por defecto, near se establece a 0.1 * 800, lo que es 1/10 la distancia por defecto entre la cámara y el origen.
El cuarto parámetro, far, es la distancia desde la cámara al plano lejano. Por ejemplo, llamar a myCamera.perspective(0.5, 1.5, 100, 10000) establece el campo de visión de la cámara en 0.5 radianes, su relación de aspecto a 1.5, coloca el plano cercano a 100 pixeles de la cámara y el plano lejano a 10,000 pixeles de la cámara. Cualquier forma dibujada más de 10,000 pixeles de la cámara no será visible. Por defecto, far se establece a 10 * 800, lo que es 10 veces la distancia por defecto entre la cámara y el origen.
Ejemplos
Sintaxis
perspective([fovy], [aspect], [near], [far])
Parámetros
campo de visión vertical del cono de visión de la cámara. Por defecto es 2 * atan(altura / 2 / 800).
relación de aspecto del cono de visión de la cámara. Por defecto es ancho / altura.
distancia desde la cámara al plano de recorte cercano. Por defecto es 0.1 * 800.
distancia desde la cámara al plano de recorte lejano. Por defecto es 10 * 800.
Referencias Relacionadas
camera
camera() establece la posición y orientación de la cámara actual en un dibujo 3D.
createCamera
Crea un nuevo objeto p5.Camera y lo establece como la cámara actual (activa).
frustum
frustum() cambia la perspectiva por defecto de la cámara actual en un boceto 3D.
linePerspective
Habilita o deshabilita la perspectiva de las líneas en bocetos 3D.