Saltear al contenido principal

Objeto Cámara de Unity 3D

Conociendo Unity 3D (III)
1. Creación y configuración de un terreno en Unity 3D
2. Video: creación de un terreno en Unity 3D
3. Objetos primitivos en Unity 3D
4. Objetos primitivos: elementos comunes y creación de Material en Unity 3D
5. Video: Objetos primitivos en Unity 3D
6. Objeto Cámara de Unity 3D
7. Ejemplo en Unity 3D: activar segunda cámara en una escena

Continuamos explicando los objetos básicos de Unity 3D. En esta publicación trataremos al GameObject Camera (Cámara), describiendo sus componentes y propiedades. En un segundo tutorial, mostraremos un ejemplo para intercambiar el uso de varias cámaras dentro de un videojuego.

El objeto Camera es un dispositivo que permite mostrar el mundo que rodea al jugador dentro del juego, proporcionando una vista de la escena desde la posición de dicho objeto.

Toda escena deberá tener al menos una cámara, y de hecho Unity crea por defecto el objeto Camera  en todo proyecto nuevo, pudiendo implementarse un número ilimitado de ellas. ¿Para qué podríamos necesitar varias cámaras? Por ejemplo, si diseñamos un juego para dos jugadores, dividiendo la pantalla en dos, o si queremos crear diferentes visiones de la misma escena. Un ejemplo muy común en videojuegos es el uso de una cámara estática al entrar en edificios o simulando una cámara de vigilancia.

Un aspecto a tener en cuenta es que debemos diferenciar entre el GameObject Camera y el componente Camera. El componente Camera puede añadirse a cualquier GameObject de la escena y es solo uno de los cuatro componentes que forma el GameObject Camera. Los otros tres, que veremos un poco más adelante, amplían la funcionalidad del componente Camera.

El GameObject Camera se crea por defecto en todo nuevo proyecto y está formado por 4 componentes: Camera, Flare Layer, GUI Layer y Audio Listener . El componente Camera lo podemos añadir a cualquier GameObject de la escena.

Mostramos en la siguiente imagen cómo seleccionar del menú la opción GameObject > Camera para añadir este tipo de objetos a una escena.

Opción Camera en menú interfaz Unity 3D

Una vez añadido a la escena, se puede observar en la siguiente imagen, cuál sería la estructura por defecto que presenta todo GameObject Camera desde la ventana inspector de Unity:

Estructura GameObject Camera

Vamos a describir cada uno de estos componentes que proporciona Unity por defecto al GameObject Camera.

Componente Camera

Componente Camera

En la siguiente tabla, describimos las propiedades del componente Camera que nos aparecen en la imagen superior:

Propiedad
Función
Clear Flags Permite indicar que elementos de la pantalla serán eliminados, de gran utilidad para el uso de varias cámaras y renderizar diferentes elementos que intervienen en la escena.
Background En el supuesto de no incluir un skybox en nuestra escena, y después de renderizar el resto de objetos que se muestran en la cámara, se establecerá el color del resto de la pantalla.
Culling Mask Posibilita la inclusión u omisión de la renderización de objetos por parte de la cámara, pertenecientes a una capa..
Projection Permite renderizar objetos sin modificar la perspectiva de la cámara (Perspective), o renderizar los objetos de manera uniforme (Orthographic).
Size Define el tamaño de la vista de la cámara. (Disponible al seleccionar la opción Orthographic en la propiedad Projection)
Field of view Establece el ancho del ángulo de la vista de la cámara, medido en grados. (Disponible al seleccionar la opción Perspective en la propiedad Projection)
Clipping Planes Establece la distancia para iniciar (near o punto más cercano a la cámara para el renderizado) o detener (far o punto más lejano a la cámara para el renderizado) el renderizado de los objetos que intervienen en la escena.
Depth En esta propiedad se establece el valor para el orden de dibujado de la cámara (una cámara con un valor superior será dibujada antes que una cámara con valor inferior).
Rendering Path Propiedad que permite establecer el método de renderización que utilizará la cámara. Podrán seleccionarse los siguientes valores: Use Player Settings (utilizará la renderización establecida dentro de los ajustes de construcción del juego, y más concretamente dentro del apartado «Other Settings» en la sección «Rendering»), Vertex Lit (todos los objetos de esta cámara serán renderizados con el tipo de sombreador normal Vertex-Lit, cuya luz será renderizada realizando sólo los cálculos en los vértices), Forward (renderización de todos los objetos ), y Deferred Lighting (sólo disponible en la versión Pro, y serán renderizados los objetos inicialmente sin iluminación, para posteriormente al final de la cola de renderización construir la imagen con iluminación en todos los objetos).
Target Texture Sólo disponible para la versión Pro de Unity. Permite definir una textura especial (Render Textures) que será creada y actualizada en tiempo de ejecución.
Occlusion Culling Sólo disponible para la versión Pro de Unity. La activación de esta opción permite deshabilitar el renderizado de aquellos objetos que no son visualizados por la cámara durante el videojuego.
HDR Si se activa esta opción, se habilita el renderizado High Dynamic Range para la cámara, permitiendo un mayor rango dinámico de luminancias (luz procedente de los objetos) para zonas claras y obscuras de una imagen.

Flare player

Flare Layer

Componente que se adjunta con un GameObject Camera. Proporciona la visualización de Lens Flare en la vista de la cámara, simulando el efecto de la luz al refractar dentro de la lente de la cámara. Este componente podrá desactivarse con tan sólo desmarcar la casilla asociada al componente.

 

GUI Layer

GUI Layer

Componente que posibilita la renderización de elementos GUI 2D (GUI Textures y GUI Texts) y igualmente se adjunta al crear un GameObject de tipo Camera. Al desactivar este componente,  desmarcarcando la casilla situada junto a él, el objeto cámara no renderizará los objetos GUI (Graphical User Interfaz – Interfaz Gráfico de Usuario) que se incluyan en la escena.

Audio Listener

Audio Listener

Componente que funciona a modo de receptor, que permite a partir de un elemento Audio Source, recibir y reproducir un sonido a través del hardware de salida de audio del dispositivo.

En el próximo tutorial de esta serie, que incluirá también video, explicaremos un ejemplo de activación en la escena de una segunda cámara perpendicular a la camera principal. Esta segunda cámara dará un punto de vista diferente a la vista del jugador que proporciona la main camera.

 

Volver arriba