Compartilhar via


Estrutura D3DLIGHT9

Define um conjunto de propriedades de iluminação.

Sintaxe

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;

Membros

Tipo

Tipo: D3DLIGHTTYPE

Tipo da fonte de luz. Esse valor é um dos membros do tipo enumerado D3DLIGHTTYPE .

Difusa

Tipo: D3DCOLORVALUE

Cor difusa emitida pela luz. Esse membro é uma estrutura D3DCOLORVALUE .

Especular

Tipo: D3DCOLORVALUE

Cor especular emitida pela luz. Esse membro é uma estrutura D3DCOLORVALUE .

Ambiente

Tipo: D3DCOLORVALUE

Cor ambiente emitida pela luz. Esse membro é uma estrutura D3DCOLORVALUE .

Posição

Tipo: D3DVECTOR

Posição da luz no espaço do mundo, especificada por uma estrutura D3DVECTOR . Esse membro não tem significado para luzes direcionais e é ignorado nesse caso.

Direção

Tipo: D3DVECTOR

Direção em que a luz está apontando no espaço do mundo, especificada por uma estrutura D3DVECTOR . Esse membro tem significado apenas para direcionais e destaques. Esse vetor não precisa ser normalizado, mas deve ter um comprimento diferente de zero.

Range

Tipo: float

Distância além da qual a luz não tem efeito. O valor máximo permitido para esse membro é a raiz quadrada de FLT_MAX. Esse membro não afeta as luzes direcionais.

Queda

Tipo: float

Diminua a iluminação entre o cone interno de um holofote (o ângulo especificado por Theta) e a borda externa do cone externo (o ângulo especificado por Phi).

O efeito da queda na iluminação é sutil. Além disso, uma pequena penalidade de desempenho é incorrida pela formatação da curva de queda. Por esses motivos, a maioria dos desenvolvedores define esse valor como 1,0.

Atenuação0

Tipo: float

Valor que especifica como a intensidade da luz muda ao longo da distância. Os valores de atenuação são ignorados para luzes direcionais. Esse membro representa uma constante de atenuação. Para obter informações sobre atenuação, consulte Light Properties (Direct3D 9). Os valores válidos para esse membro variam de 0,0 a infinito. Para luzes não direcionais, todos os três valores de atenuação não devem ser definidos como 0,0 ao mesmo tempo.

Atenuação1

Tipo: float

Valor que especifica como a intensidade da luz muda ao longo da distância. Os valores de atenuação são ignorados para luzes direcionais. Esse membro representa uma constante de atenuação. Para obter informações sobre atenuação, consulte Light Properties (Direct3D 9). Os valores válidos para esse membro variam de 0,0 a infinito. Para luzes não direcionais, todos os três valores de atenuação não devem ser definidos como 0,0 ao mesmo tempo.

Atenuação2

Tipo: float

Valor que especifica como a intensidade da luz muda ao longo da distância. Os valores de atenuação são ignorados para luzes direcionais. Esse membro representa uma constante de atenuação. Para obter informações sobre atenuação, consulte Light Properties (Direct3D 9). Os valores válidos para esse membro variam de 0,0 a infinito. Para luzes não direcionais, todos os três valores de atenuação não devem ser definidos como 0,0 ao mesmo tempo.

Theta

Tipo: float

Ângulo, em radianos, do cone interno de um holofote - ou seja, o cone de holofotes totalmente iluminado. Esse valor deve estar no intervalo de 0 até o valor especificado por Phi.

Phi

Tipo: float

Ângulo, em radianos, definindo a borda externa do cone externo do holofote. Pontos fora deste cone não são iluminados pelos holofotes. Esse valor deve estar entre 0 e pi.

Requisitos

Requisito Valor
parâmetro
D3D9Types.h

Confira também

Estruturas Direct3D

GetLight

Setlight