tex2Dgrad
Amostra uma textura 2D usando um gradiente para selecionar o nível de mip.
ret tex2Dgrad(s, t, ddx, ddy) |
---|
Parâmetros
Item | Descrição |
---|---|
s |
[in] O estado do sampler. |
T |
[in] As coordenadas 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 | sampler2D | 1 |
t | in | Vetor | FLOAT | 2 |
Ddx | in | Vetor | FLOAT | 2 |
Ddy | in | Vetor | FLOAT | 2 |
Ret | out | Vetor | FLOAT | 4 |
Modelo de sombreador mínimo
Essa função tem suporte nos modelos de sombreador a seguir.
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 |
- É feita uma reordenação significativa de código 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 branch é 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 que está 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).