Compartilhar via


Estado de neblina (Direct3D 9)

Efeitos de neblina podem dar uma cena 3D maior realismo. Você pode usar efeitos de neblina para mais do que simular neblina. Eles também podem diminuir a clareza de uma cena com distância. Isso espelha o que acontece no mundo real; À medida que os objetos se tornam mais distantes do usuário, seus detalhes são menos distintos.

Para obter mais informações sobre como usar a neblina em seu aplicativo, consulte Neblina (Direct3D 9).

Um aplicativo C++ controla a neblina por meio de estados de renderização de dispositivo. O tipo enumerado D3DRENDERSTATETYPE inclui estados para controlar se pixel (tabela) ou neblina de vértice é usado, qual cor é, a fórmula de neblina que o sistema aplica e os parâmetros da fórmula.

Você habilita a neblina definindo o estado de renderização D3DRS_FOGENABLE como TRUE. A cor da neblina pode ser definida como qualquer valor de cor usando o estado de renderização D3DRS_FOGCOLOR; o componente alfa da cor da neblina é ignorado.

Os estados de renderização D3DRS_FOGTABLEMODE e D3DRS_FOGVERTEXMODE controlam a fórmula de neblina aplicada para cálculos de neblina e controlam indiretamente qual tipo de neblina é aplicada. Ambos os estados de renderização podem ser definidos como um membro do tipo enumerado D3DFOGMODE . Definir o estado de renderização como D3DFOG_NONE desabilita a neblina de pixel ou vértice, respectivamente. Se ambos os estados de renderização estiverem definidos como modos válidos, o sistema aplicará apenas efeitos de neblina de pixel.

Os estados de renderização D3DRS_FOGSTART e D3DRS_FOGEND controlam parâmetros de fórmula de neblina para o modo D3DFOG_LINEAR. O estado de renderização D3DRS_FOGDENSITY controla a densidade de neblina nos modos de neblina exponencial.

Para obter mais informações, consulte Parâmetros de neblina (Direct3D 9).

Renderizar estados