Características reflectantes de los objetos de gráficas
Reflectancia especular o difusa
Puede especificar las características reflectantes de los objetos de parche y superficie y que, por tanto, afectan el modo en que se ven cuando se aplican las luces a la escena. Es probable que ajuste estas características de forma combinada para generar resultados determinados.
Vea también el comando material
, se trata de un modo práctico de crear determinados efectos de iluminación.
Puede controlar la cantidad de reflejo especular y difuso desde la superficie de un objeto configurando las propiedades SpecularStrength
y DiffuseStrength
. Esta imagen ilustra varias configuraciones.
Luz ambiental
La luz ambiental es luz sin dirección que brillas de forma uniforme sobre todos los objetos de la escena. La luz ambiental solo es visible cuando hay objetos de luz en los ejes. Existen dos propiedades que controlan la luz ambiental: AmbientLightColor
es una propiedad de los ejes que configura el color y AmbientStrength
, una propiedad de los objetos de parche y superficie que determina la intensidad de la luz ambiental sobre un objeto concreto.
Esta ilustración muestra tres colores distintos de luz ambiental en varias intensidades. Esta esfera es de color rojo y hay presente un objeto de luz de color blanco.
La luz ambiental de color verde [0 1 0] no afecta a la escena porque no hay un componente de color rojo en la luz verde. Sin embargo, el color definido por los valores RGB [.5 0 1] cuenta con un componente de color rojo, por lo que contribuye a la iluminación de la esfera (pero menos que la luz ambiental de color blanco [1 1 1]).
Exponente especular
El tamaño del punto de iluminación especular depende del valor de la propiedad SpecularExponent
del objeto de parche y superficie. Los valores habituales para el intervalo de esta propiedad van de 1 a 500, con objetos normales que tengan valores en un intervalo de 5 a 20.
Esta ilustración muestra una esfera de color rojo iluminada por una luz blanca con tres valores distintos de la propiedad SpecularExponent
.
Reflectancia del color especular
El color de una luz reflejada de forma especular puede oscilar desde una combinación del color del objeto y el color de la fuente de luz hasta solo el color de la fuente de luz. La propiedad SpecularColorReflectance
de parche y superficie controla este color. Esta ilustración muestra una esfera de color rojo iluminada por una luz blanca. Los valores de la propiedad SpecularColorReflectance
oscilan de 0 (color de la luz y del objeto) a 1 (color de la luz).
Iluminación de la cara trasera
La iluminación de la cara trasera resulta de utilidad para mostrar la diferencia entre las caras interna y externa. Estas imágenes de superficies cilíndricas cortadas ilustran los efectos de la iluminación de la cara trasera.
El valor predeterminado de BackFaceLighting
es reverselit
. Esta configuración invierte la dirección de las normales de los vértices que miran hacia el lado opuesto de la cámara, haciendo que la superficie interna refleje la luz hacia la cámara. Establecer BackFaceLighting
en unlit
deshabilita la iluminación de las caras con normales que apuntan en dirección contraria a la cámara.
Posicionamiento de luces en el espacio de datos
En este ejemplo se crean una esfera y un cubo y se iluminan con dos fuentes de luz. Los objetos de luz se ubican en el infinito, pero en las direcciones indicadas por sus vectores de posición.
% Create a sphere sphere(36); axis([-3 3 -3 3 -3 3]) hold on % Create a cube fac = [1 2 3 4;2 6 7 3;4 3 7 8;1 5 8 4;1 2 6 5;5 6 7 8]; vert = [1 1 1;1 2 1;2 2 1;2 1 1;1 1 2;1 2 2;2 2 2;2 1 2]; patch('faces',fac,'vertices',vert,'FaceColor','y'); % Add lights light('Position',[1 3 2]); light('Position',[-3 -1 3]); hold off
Las funciones light
definen dos objetos de luz ubicados en el infinito en las direcciones indicadas por los vectores de Position
. Dichos vectores se definen en las coordenadas de los ejes [x, y, z].