структура D3DDDI_LIGHT (d3dumddi.h)
Структура D3DDDI_LIGHT описывает набор свойств освещения.
Синтаксис
typedef struct _D3DDDI_LIGHT {
[in] D3DLIGHTTYPE Type;
[in] D3DCOLORVALUE Diffuse;
[in] D3DCOLORVALUE Specular;
[in] D3DCOLORVALUE Ambient;
[in] D3DVECTOR Position;
[in] D3DVECTOR Direction;
[in] FLOAT Range;
[in] FLOAT Falloff;
[in] FLOAT Attenuation0;
[in] FLOAT Attenuation1;
[in] FLOAT Attenuation2;
[in] FLOAT Theta;
[in] FLOAT Phi;
} D3DDDI_LIGHT;
Члены
[in] Type
D3DLIGHTTYPE типизированное значение, указывающее тип источника света. Дополнительные сведения о D3DLIGHTTYPE см. в документации по Microsoft Windows SDK.
[in] Diffuse
Структура D3DCOLORVALUE, указывающая рассеянный цвет, излучаемый светом. Дополнительные сведения о D3DCOLORVALUE см. в документации по Windows SDK.
[in] Specular
Структура D3DCOLORVALUE, указывающая отражающий цвет, излучаемый светом.
[in] Ambient
Структура D3DCOLORVALUE, указывающая внешний цвет, излучаемый светом.
[in] Position
Структура D3DVECTOR, указывающая положение света в мировом пространстве. Этот элемент не имеет значения для направленных огней (то есть, если D3DLIGHT_DIRECTIONAL задан в элементе Type ) и игнорируется в этой ситуации. Дополнительные сведения о D3DVECTOR см. в документации по Windows SDK.
[in] Direction
Структура D3DVECTOR, указывающая направление света в мировом пространстве. Этот элемент имеет значение только для направленных огней и прожекторов (то есть, если D3DLIGHT_DIRECTIONAL и D3DLIGHT_SPOT заданы в типе). Этот вектор не требуется нормализовать, но он должен иметь ненулевой длины.
[in] Range
Расстояние, за которым свет не оказывает влияния. Максимально допустимое значение для этого элемента — D3DLIGHT_RANGE_MAX, который определяется как квадратный корень FLT_MAX. Этот элемент не влияет на направленные источники света.
[in] Falloff
Уменьшение освещения между внутренним конусом прожектора (угол, заданный элементом Theta ) и внешним краем внешнего конуса (угол, заданный элементом Phi ). Влияние падения на освещение является тонким. Кроме того, небольшое снижение производительности возникает при формировании кривой падения. По этим причинам большинство разработчиков устанавливают для этого участника значение 1.0.
[in] Attenuation0
Коэффициент постоянного затухания света. Значения затухания указывают, как изменяется интенсивность света на расстоянии. Затухание не влияет на направленные источники света. Допустимые значения для этого элемента варьируются от 0,0 до бесконечности.
[in] Attenuation1
Коэффициент линейного затухания света. Значения затухания указывают, как изменяется интенсивность света на расстоянии. Затухание не влияет на направленные источники света. Допустимые значения для этого элемента варьируются от 0,0 до бесконечности.
[in] Attenuation2
Коэффициент затухания квадратии света. Значения затухания указывают, как изменяется интенсивность света на расстоянии. Затухание не влияет на направленные источники света. Допустимые значения для этого элемента варьируются от 0,0 до бесконечности.
[in] Theta
Угол внутреннего конуса прожектора в радианах, то есть полностью освещенного конуса прожектора. Это значение должно находиться в диапазоне от 0 до значения, указанного элементом Phi .
[in] Phi
Угол в радианах, определяющий внешний край внешнего конуса прожектора. Точки за пределами этого конуса не освещаются в центре внимания. Это значение должно находиться в диапазоне от 0 до Pi.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Верхняя часть | d3dumddi.h (включая D3dumddi.h) |