tex3Dgrad
Amostra uma textura 3D usando um gradiente para selecionar o nível de mip.
ret tex3Dgrad(s, t, ddx, ddy) |
---|
Parâmetros
Item | Descrição |
---|---|
s |
[in] O estado do sampler. |
T |
[in] A coordenada de textura. |
Ddx |
[in] Taxa de alteração da geometria da superfície na direção x. |
Ddy |
[in] Taxa de alteração da geometria da superfície na direção y. |
Valor Retornado
O valor dos dados de textura.
Descrição do tipo
Nome | Entrada/saída | Tipo de modelo | Tipo de componente | Tamanho |
---|---|---|---|---|
s | in | Objeto | sampler3D | 1 |
t | in | Vetor | FLOAT | 3 |
Ddx | in | Vetor | FLOAT | 3 |
Ddy | in | Vetor | FLOAT | 3 |
Ret | out | Vetor | FLOAT | 4 |
Modelo de sombreador mínimo
Essa função tem suporte nos seguintes modelos de sombreador.
Modelo de Sombreador | Com suporte |
---|---|
Modelo de sombreador 4 | sim (somente sombreador de pixel) |
Modelo de Sombreador 3 (DirectX HLSL) | sim (somente sombreador de pixel) |
Modelo de Sombreador 2 (DirectX HLSL) | sim (somente sombreador de pixel) |
Modelo de Sombreador 1 (DirectX HLSL) | não |
- A reordenação significativa de código é feita para mover cálculos de gradiente para fora do controle de fluxo.
- Se o limite de D3DPSHADERCAPS2_0 for definido com D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS, o compilador mapeará essa função para texldd.
Comentários
Quando o controle de fluxo está presente em um sombreador, o resultado de um cálculo de gradiente solicitado dentro de um determinado caminho de ramificação é ambíguo quando pixels adjacentes podem descer caminhos de controle de fluxo separados. Portanto, é considerado ilegal usar qualquer operação de sombreador de pixel que solicite que um cálculo de gradiente ocorra em um local que esteja dentro de um constructo de controle de fluxo que possa variar entre pixels para um determinado primitivo sendo rasterizado. Se um dos lados de uma instrução if com o atributo branch usar uma função de gradiente, um erro do compilador poderá ser gerado. Veja se instrução (DirectX HLSL).