56. CLASE LIGHT (I)




Esta clase se usa para controlar todos los aspectos de las luces en Unity. Las propiedades que aquí veremos son exactamente las mismas que los valores que podemos encontrarnos en el inspector.

Normalmente las luces son creadas en el editor, pero a veces puede ser que queramos crear o manipular una luz desde un script.

Podemos, para tener una primera idea de lo que podemos hacer con esta clase, aplicar el ejemplo que nos viene en el manual de referencia. Antes de nada, modifiquemos el escenario para los ejemplos que vendrán:

1.- Eliminamos en Jerarquía Camara 2.
2.- Eliminamos el script vinculado a PortaScripts.

Doble click en MiPrimerScript. Tecleamos:


function Start () {

var unaNuevaLuz : GameObject = new GameObject("La luz");
unaNuevaLuz.AddComponent(Light);
unaNuevaLuz.light.color = Color.blue;
unaNuevaLuz.transform.position = Vector3(0, 5, 0);
}


Salvamos y arrastramos el script a PortaScripts. Pulsamos play. Debería aparecer una nueva luz en la escena, tal que así:



La dinámica del script es sencilla: Creamos primero un gameobject (que sería el equivalente a crear en el menú de la interface de Unity un gameobject vacío. A dicho gameobject vacío (que damos en llamar "la luz")le añadimos un componente de tipo luz (por defecto se crea una luz de tipo Point). Le damos por último a esa luz recién creada un color y una ubicación en la escena.


VARIABLES:

type:

var type : LightType


El tipo de luz. Puede ser

LightType.Spot: Consiste en una luz tipo tipo foco.
LightType.Directional: Una luz direccional, parecida a la del sol.
LightType.Point: Un punto de luz.

Para mostrar la diferencia entre las tres, he apagado la luz principal de la escena deshabilitando su checkbox, y he rediseñado el script anterior, y a su vez he hecho las pertinentes probaturas con los tres tipos de luz.


function Start () {

var unaNuevaLuz : GameObject = new GameObject("La luz");
unaNuevaLuz.AddComponent(Light);
unaNuevaLuz.transform.position = Vector3(0, 3, 0);
unaNuevaLuz.light.type = LightType.Spot;
}


Aquí os dejo las capturas de pantalla de este script con los tres tipos de luz. Primero con luz tipo Spot:


Luz directional:


Y luz tipo point:

POSTED BY UnityScripts
POSTED IN
DISCUSSION 0 Comments

Leave a Reply

Con la tecnología de Blogger.