Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O motor de iluminação combina cor do material, cor do vértice e informações de iluminação para gerar uma cor por vértice. Uma vez interpolado, isso gera uma cor para cada pixel que é guardada no buffer de quadros. Se uma aplicação habilitar a mistura de texturas, a cor do pixel será uma combinação do pixel atual no buffer de quadros e da cor de uma textura.
Esta fórmula determina a cor final do pixel misturado:
Color = TexelColor x SourceBlend + CurrentPixelColor x DestBlend
Onde:
- Cor é a cor do pixel de saída.
- TexelColor é a cor de entrada após a filtragem de textura.
- SourceBlend é a porcentagem da cor final do pixel que é composta pela cor texel de origem.
- CurrentPixelColor é a cor do pixel atual.
- DestBlend é a porcentagem da cor final do pixel que é composta pela cor do pixel atual.
A equação de mistura final é definida chamando IDirect3DDevice9::SetRenderState e especificando o estado de renderização de mistura (D3DRS_BLENDXXX) com um fator de mistura correspondente (D3DBLEND). Os valores de SourceBlend e DestBlend variam de 0,0 (transparente) a 1,0 (opaco), inclusive. Além disso, um aplicativo pode controlar a transparência de um pixel definindo o valor alfa em uma textura. Nesse caso, use o seguinte:
SourceBlend = D3DBLEND_ZERO
DestBlend = D3DBLEND_ONE
A equação de mistura fará com que o pixel renderizado seja transparente. Os valores padrão são:
SourceBlend = D3DBLEND_SRCALPHA
DestBlend = D3DBLEND_INVSRCALPHA
Tópicos relacionados