Propiedades de luz
Las propiedades de luz describen el tipo de una fuente de luz (punto, direccional, foco), atenuación, color, dirección, posición y rango. Dependiendo del tipo de luz que se use, una luz puede tener propiedades para atenuación y rango, o para efectos destacados. No todos los tipos de luces usan todas las propiedades.
Las propiedades de posición, rango y atenuación definen la ubicación de una luz en el espacio mundial y cómo se comporta la luz que emite a lo largo de la distancia.
Atenuación de luz
La atenuación controla cómo disminuye la intensidad de una luz hacia la distancia máxima especificada por la propiedad range. A veces se usan tres valores de punto flotante para representar la atenuación de la luz: Atenuación0, Atenuación1 y Atenuación2. Estos valores de punto flotante van desde 0,0 hasta infinito, controlando la atenuación de una luz. Algunas aplicaciones establecen el miembro De atenuación1 en 1.0 y los demás en 0,0, lo que da como resultado una intensidad de luz que cambia como 1 /D, donde D es la distancia desde la fuente de luz hasta el vértice. La intensidad máxima de la luz está en la fuente, disminuyendo a 1 / (Rango de luz) en el rango de la luz.
Aunque normalmente, una aplicación establece Atenuación0 en 0,0, Atenuación1 en un valor constante y Atenuación2 en 0,0, se pueden lograr efectos de luz variables cambiando esto. Puede combinar valores de atenuación para obtener efectos de atenuación más complejos. O bien, puede establecerlos en valores fuera del intervalo normal para crear efectos de atenuación incluso extraños. Sin embargo, no se permiten valores de atenuación negativos. Consulte Atenuación y factor de foco.
Color claro
Las luces de Direct3D emiten tres colores que se usan de forma independiente en los cálculos de iluminación del sistema: un color difuso, un color ambiente y un color especular. Cada uno se incorpora mediante el módulo de iluminación direct3D, que interactúa con un homólogo del material actual, para generar un color final que se usa en la representación. El color difuso interactúa con la propiedad de reflectancia difusa del material actual, el color especular con la propiedad de reflectancia especular del material, etc. Para obtener información específica sobre cómo Direct3D aplica estos colores, consulte Matemáticas de la iluminación.
En una aplicación direct3D, normalmente hay tres valores de color: difuso, ambiente y especular que define el color que se emite.
El tipo de color que se aplica más a los cálculos del sistema es el color difuso. El color difuso más común es blanco (R:1.0 G:1.0 B:1.0), pero puede crear colores según sea necesario para lograr efectos deseados. Por ejemplo, podría usar la luz roja para una chimenea o podría usar la luz verde para una señal de tráfico establecida en "Go".
Por lo general, se establecen los componentes de color claro en valores comprendidos entre 0,0 y 1,0, ambos incluidos, pero esto no es un requisito. Por ejemplo, puede establecer todos los componentes en 2.0, creando una luz que sea "más brillante que blanca". Este tipo de configuración puede ser especialmente útil cuando se usa la configuración de atenuación distinta de constante.
Aunque Direct3D usa valores RGBA para las luces, no se usa el componente de color alfa.
Normalmente, los colores del material se usan para la iluminación. Sin embargo, puede especificar que los colores del material-emissive, ambiente, difuso y especular se invalidan mediante colores de vértices difusos o especulares.
El valor alfa/transparencia siempre procede del canal alfa del color difuso.
El valor de niebla siempre procede del canal alfa del color especular.
Dirección de la luz
La propiedad direction de una luz determina la dirección que la luz emitida por el objeto viaja, en el espacio mundial. La dirección solo se usa mediante luces direccionales y focos, y se describe con un vector.
Establezca la dirección de la luz como un vector. Los vectores de dirección se describen como distancias desde un origen lógico, independientemente de la posición de la luz en una escena. Por lo tanto, un foco que apunta directamente a una escena , a lo largo del eje z positivo, tiene un vector de dirección de <0,0,1> independientemente de dónde se defina su posición. Del mismo modo, puede simular la luz solar brillando directamente en una escena mediante una luz direccional cuya dirección es <0,-1,0>. No tienes que crear luces que brillan a lo largo de los ejes de coordenadas; puede mezclar y combinar valores para crear luces que brillan en ángulos más interesantes.
Aunque no es necesario normalizar el vector de dirección de una luz, asegúrese siempre de que tiene magnitud. En otras palabras, no use un <vector de dirección 0,0,0> .
Posición de la luz
La posición de la luz se describe mediante una estructura vectorial. Se supone que las coordenadas x, y y z están en el espacio mundial. Las luces direccionales son el único tipo de luz que no usa la propiedad position.
Intervalo claro
La propiedad range de una luz determina la distancia, en el espacio mundial, en la que las mallas de una escena ya no reciben luz emitida por ese objeto. Las luces direccionales no usan la propiedad range.
Temas relacionados