D3DLIGHT9 구조체

조명 속성 집합을 정의합니다.

구문

typedef struct D3DLIGHT9 {
  D3DLIGHTTYPE  Type;
  D3DCOLORVALUE Diffuse;
  D3DCOLORVALUE Specular;
  D3DCOLORVALUE Ambient;
  D3DVECTOR     Position;
  D3DVECTOR     Direction;
  float         Range;
  float         Falloff;
  float         Attenuation0;
  float         Attenuation1;
  float         Attenuation2;
  float         Theta;
  float         Phi;
} D3DLIGHT9, *LPD3DLIGHT;

멤버

형식

형식: D3DLIGHTTYPE

광원의 유형입니다. 이 값은 D3DLIGHTTYPE 열거 형식의 멤버 중 하나입니다.

확산

형식: D3DCOLORVALUE

빛으로 내보낸 확산 색입니다. 이 멤버는 D3DCOLORVALUE 구조체입니다.

반사

형식: D3DCOLORVALUE

빛으로 내보낸 반사 색입니다. 이 멤버는 D3DCOLORVALUE 구조체입니다.

앰비언트

형식: D3DCOLORVALUE

조명에서 내보낸 주변 색입니다. 이 멤버는 D3DCOLORVALUE 구조체입니다.

위치

형식: D3DVECTOR

D3DVECTOR 구조체로 지정된 월드 공간의 광원 위치입니다. 이 멤버는 방향 표시등에 대한 의미가 없으며 이 경우 무시됩니다.

방향

형식: D3DVECTOR

D3DVECTOR 구조체로 지정된 월드 공간에서 조명이 가리키는 방향입니다. 이 멤버는 방향 및 스포트라이트에 대해서만 의미가 있습니다. 이 벡터는 정규화할 필요는 없지만 길이가 0이 아니어야 합니다.

Range

형식: float

빛이 아무런 영향을 미치지 않는 거리입니다. 이 멤버에 대해 허용되는 최대 값은 FLT_MAX 제곱근입니다. 이 멤버는 방향 표시등에 영향을 주지 않습니다.

감쇠

형식: float

스포트라이트의 내부 원뿔(Theta에서 지정한 각도)과 바깥쪽 원뿔의 바깥쪽 가장자리(Phi에서 지정한 각도) 사이의 조명을 줄입니다.

조명에 대한 폴오프의 효과는 미묘합니다. 또한 폴오프 곡선을 형성하여 작은 성능 저하가 발생합니다. 이러한 이유로 대부분의 개발자는 이 값을 1.0으로 설정합니다.

감쇠0

형식: float

광도가 거리에 따라 변하는 방식을 지정하는 값입니다. 감쇠 값은 방향 표시등에 대해 무시됩니다. 이 멤버는 감쇠 상수를 나타냅니다. 감쇠에 대한 자세한 내용은 Light 속성(Direct3D 9)을 참조하세요. 이 멤버의 유효한 값은 0.0에서 무한대까지입니다. 비방향 조명의 경우 세 가지 감쇠 값을 동시에 0.0으로 설정하면 안 됩니다.

감쇠1

형식: float

광도가 거리에 따라 변하는 방식을 지정하는 값입니다. 감쇠 값은 방향 표시등에 대해 무시됩니다. 이 멤버는 감쇠 상수를 나타냅니다. 감쇠에 대한 자세한 내용은 Light 속성(Direct3D 9)을 참조하세요. 이 멤버의 유효한 값은 0.0에서 무한대까지입니다. 비방향 조명의 경우 세 가지 감쇠 값을 동시에 0.0으로 설정하면 안 됩니다.

감쇠2

형식: float

광도가 거리에 따라 변하는 방식을 지정하는 값입니다. 감쇠 값은 방향 표시등에 대해 무시됩니다. 이 멤버는 감쇠 상수를 나타냅니다. 감쇠에 대한 자세한 내용은 Light 속성(Direct3D 9)을 참조하세요. 이 멤버의 유효한 값은 0.0에서 무한대까지입니다. 비방향 조명의 경우 세 가지 감쇠 값을 동시에 0.0으로 설정하면 안 됩니다.

세타

형식: float

각도, 라디안, 스포트라이트의 내부 원뿔의 - 즉, 완전히 조명 스포트 라이트 콘. 이 값은 0부터 Phi로 지정된 값까지의 범위에 있어야 합니다.

형식: float

각도(라디안)로 스포트라이트의 바깥면 원뿔의 바깥 가장자리를 정의합니다. 이 원뿔 외부의 지점은 스포트라이트에 의해 점등되지 않습니다. 이 값은 0과 pi 사이여야 합니다.

요구 사항

요구 사항
헤더
D3D9Types.h

추가 정보

Direct3D 구조체

GetLight

SetLight