Serie BabylonJS por David Catuhe (@DeltaKosh):

Tabla de contenidos

Aprender WebGL y Babylon.js a su propio ritmo

no dude en visitar nuestra línea de golf en 3D con WebGL Programación y Babylon.js para principiantes en Zenva Academia. El curso cubre el marco Babylon.js y explica todo lo que necesita para empezar con el uso de esta fantástica biblioteca en proyectos nuevos o existentes.

Tutorial

Las luces se utilizan para producir el color especular difusa y recibida por cada píxel. Este color se utiliza a continuación, por los materiales para determinar el color final de cada píxel.

Durante este artículo, le mostrará cómo utilizar todo tipo de luces apoyados por babylon.js .

Activar / desactivar luces

Cada luz puede desactivarse estableciendo su isEnabled propiedad en false.

Pero también se puede controlar la intensidad global de la luz con el intensidad propiedad.

La luz de punto

luz punto A es una luz definida por un punto único. La luz se emite en todas las direcciones desde este punto.

Es posible controlar el color de la luz con el difusa y especular propiedades:
var light0 = new BABYLON.PointLight ( «Omni0», nuevo BABYLON.Vector3 (1, 10, 1), escena); light0.diffuse = new BABYLON.Color3 (1, 0, 0); BABYLON light0.specular = new. color3 (1, 1, 1); 123varlight0 = newBABYLON.PointLight ( «Omni0», newBABYLON.Vector3 (1,10,1), escena); light0.diffuse = newBABYLON.Color3 (1,0,0); light0. especular = newBABYLON.Color3 (1,1,1);

 imagen Red luz difusa con punto especular blanco

La luz direccional

Una luz direccional se define por una dirección (qué sorpresa!). La luz es emitida desde todas partes para una dirección específica y tiene una gama infinita.

Al igual que un punto de luz, se puede controlar el color de la luz con el difusa y especular propiedades:
var light0 = new BABYLON.DirectionalLight ( «Dir0», nuevo BABYLON.Vector3 (0, -1, 0), escena); light0.diffuse = new BABYLON.Color3 (1, 0, 0); light0.specular = new BABYLON .Color3 (1, 1, 1); 123varlight0 = newBABYLON.DirectionalLight ( «Dir0», newBABYLON.Vector3 (0, -1,0), escena); light0.diffuse = newBABYLON.Color3 (1,0,0); light0.specular = newBABYLON.Color3 (1,1,1);

imagen Red luz direccional difusa con especular blanco

La luz del punto

A la luz del punto se define por una posición, una dirección, un ángulo y un exponente. Estos valores definen un cono de partida luz desde la posición hacia la dirección. El ángulo define el tamaño del haz de proyector y el exponente define la velocidad de la descomposición de la luz con la distancia:

imagen
var light0 = new BABYLON.SpotLight ( «Spot0», nuevo BABYLON.Vector3 (0, 30, -10), nuevo BABYLON.Vector3 (0, -1, 0), 0,8, 2, escena); light0.diffuse = new BABYLON.Color3 (1, 0, 0); = light0.specular nuevo BABYLON.Color3 (1, 1, 1); 123varlight0 = newBABYLON.SpotLight ( «Spot0», newBABYLON.Vector3 (0,30, -10), newBABYLON .Vector3 (0, -1,0), 0.8,2, escena); light0.diffuse = newBABYLON.Color3 (1,0,0); light0.specular = newBABYLON.Color3 (1,1,1);

imagen
Un centro de atención difusa de color rojo con especular blanco y un 0,8 radianes amplia cono. El valor del exponente es 2.

La luz hemisférica

luz hemisférica representa un simple y fácil de luz ambiente realista Simulación. Una luz hemisférica está definido por una dirección al cielo y por 3 colores: uno para el difusa (el color del cielo), una para el suelo (el color cuando el píxel no es hacia el cielo) y uno para el especular
var light0 = new BABYLON.HemisphericLight ( «Hemi0», nuevo BABYLON.Vector3 (0, 1, 0), escena); light0.diffuse = new BABYLON.Color3 (1, 1, 1); BABYLON light0.specular = new. color3 (1, 1, 1); light0.groundColor = nuevo BABYLON.Color3 (0, 0, 0); 1234varlight0 = newBABYLON.HemisphericLight ( «Hemi0», newBABYLON.Vector3 (0,1,0), escena); light0 .diffuse = newBABYLON.Color3 (1,1,1); light0.specular = newBABYLON.Color3 (1,1,1); light0.groundColor = newBABYLON.Color3 (0,0,0);

imagen Blanco / negro luz hemisférica

Mensajes relacionados
> <img src =

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *