Математические аспекты освещенияMathematics of lighting

Модель освещения в Direct3D включает в себя фоновое, рассеянное, отраженное и излучаемое освещение.The Direct3D Light Model covers ambient, diffuse, specular, and emissive lighting. Это обеспечивает достаточную гибкость для решения широкого спектра вопросов освещения.This is enough flexibility to solve a wide range of lighting situations. Общая сумма света в сцене называется глобальной освещенностью.The total amount of light in a scene is called the global illumination.

Глобальная освещенность вычисляется следующим образом:The global illumination is computed as follows:

global_illumination = ambient_lighting + diffuse_lighting + specular_lighting + emissive_lighting;

Фоновое освещение — это постоянное освещение.Ambient lighting is constant lighting. Внешнее освещение является константой во всех направлениях и окрашивает все пиксели объекта одинаково.Ambient lighting is constant in all directions and it colors all pixels of an object the same. Вычислить такое освещение очень быстро, однако объекты выглядят плоскими и нереалистичными.It is fast to calculate but leaves objects looking flat and unrealistic.

Рассеянное освещение зависит и от направления света, и от нормали поверхности объекта.Diffuse lighting depends on both the light direction and the object surface normal. Рассеянное освещение различается на разных участках поверхности объекта в результате изменения направления света и изменения числового вектора поверхности.Diffuse lighting varies across the surface of an object as a result of the changing light direction and the changing surface numeral vector. Для расчета рассеянного света требуется больше времени, поскольку он различается для каждой вершины объекта, однако преимущество его использования заключается в том, что он придает объектам оттенки и трехмерную глубину.It takes longer to calculate diffuse lighting because it changes for each object vertex, however the benefit of using it is that it shades objects and gives them three-dimensional (3D) depth.

Отраженное освещение определяет яркие блики, которые возникают когда свет падает на поверхность объекта и отражается обратно в сторону камеры.Specular lighting identifies the bright specular highlights that occur when light hits an object surface and reflects back toward the camera. Отраженное освещение более интенсивно, чем рассеянный свет, и быстрее ослабевает на поверхности объекта.Specular lighting is more intense than diffuse light and falls off more rapidly across the object surface. На расчет отраженного освещения уходит больше времени чем на рассеянное освещение, однако его применение добавляет поверхности больше заметных деталей.It takes longer to calculate specular lighting than diffuse lighting, however the benefit of using it is that it adds significant detail to a surface.

Излучаемое освещение — это свет, излучаемый объектом, например, свечение.Emissive lighting is light that is emitted by an object; for example, a glow. Излучаемое освещение делает отрисованный объект светящимся.Emission makes a rendered object appear to be self-luminous. Излучение влияет на цвет объекта и может, например, сделать темный материал ярче и частично перенять излучаемый цвет.Emission affects an object's color and can, for example, make a dark material brighter and take on part of the emitted color.

Реалистичного освещения можно достичь путем применения каждого из этих типов освещения в трехмерных сценах.Realistic lighting can be accomplished by applying each of these types of lighting to a 3D scene. Значения, рассчитанные для фонового, излучаемого и рассеянного компонентов, выводятся как рассеянный цвет вершины, а значение для отраженного компонента освещения выводится как отраженный цвет вершины.The values calculated for ambient, emissive, and diffuse components are output as the diffuse vertex color; the value for the specular lighting component is output as the specular vertex color. Значения фонового, рассеянного и отраженного освещения могут меняться в зависимости от коэффициента затухания и узкой направленности источника.Ambient, diffuse, and specular light values can be affected by a given light's attenuation and spotlight factor. См. раздел Коэффициент затухания и вспышки.See Attenuation and spotlight factor.

Для достижения более реалистичного эффекта освещения добавляют дополнительные источники света, однако это влечет увеличение времени отрисовки сцены.To achieve a more realistic lighting effect, you add more lights; however, the scene takes longer to render. Для достижения всех требуемых разработчику эффектов в некоторых играх используется больше вычислительной мощности процессора, чем обычно предоставляется.To achieve all the effects a designer wants, some games use more CPU power than is commonly available. В этом случае обычно уменьшают число операций расчета освещения до минимума с помощью карт освещения и среды, чтобы добавить освещение сцены при одновременном использовании текстур.In this case, it is typical to reduce the number of lighting calculations to a minimum by using lighting maps and environment maps to add lighting to a scene while using texture maps.

Освещение вычисляется в пространстве камеры.Lighting is computed in the camera space. См. раздел Преобразования пространства камеры.See Camera space transformations. Оптимизированное освещение может быть рассчитано в пространстве модели, если выполняются особые условия: векторы нормалей уже нормализованы, наложение вершин не требуется, а матрицы преобразования ортогональны.Optimized lighting can be computed in model space, when special conditions exist: normal vectors are already normalized, vertex blending is not needed, and transformation matrices are orthogonal.

Все вычисления освещения выполняются в пространстве модели путем преобразования положения и направления источника света и положения камеры для моделирования пространства с использованием обратной матрицы мира.All lighting computations are made in model space by transforming the light source's position and direction, along with the camera position, to model space using the inverse of the world matrix. В результате, если матрицы мира или представления привносят неоднородное масштабирование, полученное освещение может быть неточным.As a result, if the world or view matrices introduce non-uniform scaling, the resultant lighting might be inaccurate.

В этом разделеIn this section

РазделTopic ОписаниеDescription

Внешним освещениемAmbient lighting

Внешнее освещение предоставляет постоянное освещение для сцены.Ambient lighting provides constant lighting for a scene. Оно освещает все вершины объекта одинаково, потому что не зависит ни от каких других факторов освещения, таких как нормали вершины, направление света, положение света, диапазон или затухание.It lights all object vertices the same because it is not dependent on any other lighting factors such as vertex normals, light direction, light position, range, or attenuation. Внешнее освещение является константой во всех направлениях и окрашивает все пиксели объекта одинаково.Ambient lighting is constant in all directions and it colors all pixels of an object the same. Вычислить такое освещение очень быстро, однако объекты выглядят плоскими и нереалистичными.It is fast to calculate but leaves objects looking flat and unrealistic.

Рассеянное освещениеDiffuse lighting

Рассеянное освещение зависит и от направления света, и от нормали поверхности объекта.Diffuse lighting depends on both the light direction and the object surface normal. Рассеянное освещение различается на разных участках поверхности объекта в результате изменения направления света и изменения числового вектора поверхности.Diffuse lighting varies across the surface of an object as a result of the changing light direction and the changing surface numeral vector. Для расчета рассеянного света требуется больше времени, поскольку он различается для каждой вершины объекта, однако преимущество его использования заключается в том, что он придает объектам оттенки и трехмерную глубину.It takes longer to calculate diffuse lighting because it changes for each object vertex, however the benefit of using it is that it shades objects and gives them three-dimensional (3D) depth.

Отраженное освещениеSpecular lighting

Отраженное освещение определяет яркие блики, которые возникают когда свет падает на поверхность объекта и отражается обратно в сторону камеры.Specular lighting identifies the bright specular highlights that occur when light hits an object surface and reflects back toward the camera. Отраженное освещение более интенсивно, чем рассеянный свет, и быстрее ослабевает на поверхности объекта.Specular lighting is more intense than diffuse light and falls off more rapidly across the object surface. На расчет отраженного освещения уходит больше времени чем на рассеянное освещение, однако его применение добавляет поверхности больше заметных деталей.It takes longer to calculate specular lighting than diffuse lighting, however the benefit of using it is that it adds significant detail to a surface.

Эмиссионный освещенияEmissive lighting

Излучаемое освещение — это свет, излучаемый объектом, например, свечение.Emissive lighting is light that is emitted by an object; for example, a glow. Излучаемое освещение делает отрисованный объект светящимся.Emission makes a rendered object appear to be self-luminous. Излучение влияет на цвет объекта и может, например, сделать темный материал ярче и частично перенять излучаемый цвет.Emission affects an object's color and can, for example, make a dark material brighter and take on part of the emitted color.

Преобразования пространства камерыCamera space transformations

Вершины в пространстве камеры вычисляются путем преобразования вершин объекта с помощью матрицы представления реального мира.Vertices in the camera space are computed by transforming the object vertices with the world view matrix.

Коэффициент затухания и spotlightAttenuation and spotlight factor

Компоненты рассеянного и зеркального света глобального уравнения света содержат термины, описывающие затухание света и конус вспышки.The diffuse and specular lighting components of the global illumination equation contain terms that describe light attenuation and the spotlight cone.

 

Связанные разделыRelated topics

Источники света и материалыLights and materials