55. CLASE CAMERA (VI)









Render:

function Render () : void


Renderiza la cámara manualmente, usando el clear flags de la cámara, target texture y otras propiedades. La cámara puede enviar mensajes como OnPreCull, OnPreRender o OnPostRender a cualquier script que esté vinculado, y renderizar algunos filtros de imagen.

Esto es usado para tener control preciso sobre el orden de renderizado. Para hacer uso de esta característica, crea una cámara y deshabilitala, y entonces llama a la función Render para ella.


RenderWithShader:

function RenderWithShader (shader : Shader, replacementTag : String) : void


Hace que la cámara renderice con reemplazo de sombreado (shader) . Esto renderizará la cámara, usando los clear flags de la cámara, target texture y otras propiedades. A direrencia de la función anterior, la cámara no enviará OnPreCull, OnPreRender or OnPostRender a scripts vinculados. Los filtros de la imagen tampoco serán renderizados.

Esto es usado para efectos especiales, como por ejemplo renderizar una visión de calor y cosas así. Para usar estas características, habitualmente crearás una cámara y la deshabilitarás y luego llamarás RenderWithShader en ella.


SetReplacementShader:

function SetReplacementShader (shader : Shader, replacementTag : String) : void


Hace que la cámara renderice con shader replacement. Después de llamar a esta función, la cámara renderizará su vista con shader replacement. Para volver al renderizado normal hay que llamar a ResetReplacementShader.


ResetReplacementShader:

function ResetReplacementShader () : void


Borra el shader replacement de la cámara provocado por la función anterior.


RenderToCubemap:

function RenderToCubemap (cubemap : Cubemap, faceMask : int = 63) : boolean


Renderiza un cubemap desde la cámara que llama a esta función. Esto es muy útil en el editor para bakear cubemaps estáticos de tu escena.

La posición de la cámara, clear flags y clipping plane distances son usados para renderizar dentro de las caras de un cubemap. faceMask es un mapa de bits que indica qué cara del cubemap debe ser renderizada. Cada bit se corresponde a una cara y está representado por un int dentro de una enum de tipo cubemapface. Por defecto las seis caras del cube map se renderizarán, que es lo que viene representado en la firma por el 63, que corresponde a lo que ocupan los bits de las seis caras.

La función devuelve false si el renderizado del cubemap falla.

Esta función tiene un segundo prototipo:

function RenderToCubemap (cubemap : RenderTexture, faceMask : int = 63) : boolean


Esta segunda modalidad es usada para reflexiones en tiempo real dentro de render textures de cubemap. Puede ser bastante caro en términos de rendimiento, eso sí, especialmente si las seiz caras del cubemap son renderizadas cada frame.


CopyFrom:

function CopyFrom (other : Camera) : void


Permite copiar para una cámara todas las variables de otra cámara (campo de vision, clear flags, culling mask…) Puede ser útil si queremos que una cámara coincida con la configuración de otra, para conseguir efectos personalizados de rendering, como por ejemplo los objetidos usando RenderWithShader.




VARIABLES DE CLASE:

main:

static var main : Camera


Se refiere a la cámara que esté habilitada y con el tag “Main Camera”(Read Only). Devuelve nulo si no hay una cámara con esas características en la escena.


allCameras:

static var allCameras : Camera[]


Devuelve todas las cámaras habilitadas en la escena.

POSTED BY UnityScripts
POSTED IN
DISCUSSION 1 Comment

One Response to : 55. CLASE CAMERA (VI)

  1. Unknown says:

    Bueno, terminamos la clase de Camera pero me quedo con sabor agridulce porque muchas cosas no las termino de tener del todo claras.
    Sigo con el temario a ver...

Leave a Reply

Con la tecnología de Blogger.