dcl_indexRange (sm4 – asm)
Declara um intervalo de registros que serão acessados pelo índice (um inteiro calculado no sombreador).
dcl_indexRange minRegisterM, maxRegisterN |
---|
Item | Descrição |
---|---|
minRegisterM |
[in] O primeiro registro a ser acessado por índice.
|
maxRegisterN |
[in] O último registro a ser acessado pelo índice. O mesmo formulário que minRegister , exceto N , é o número do registro. |
As seguintes restrições se aplicam a todos os registros:
- Os registros mínimo e máximo devem ser do mesmo tipo e ter as mesmas máscaras de componente (se as máscaras forem declaradas).
- Um registro pode ter vários intervalos de índice, desde que não se sobreponham.
- O número de registro mínimo deve ser menor que o número máximo de registro.
- Um registro de índice não pode conter um valor do sistema.
- Indexar um registro fora da declaração de índice máximo produz resultados indefinidos.
Os registros de entrada do sombreador de pixel devem usar o mesmo modo de interpolação; Os registros de saída do sombreador de pixel não são indexáveis.
Um registro de entrada de sombreador de geometria tem duas dimensões (eixo de vértice, eixo de atributo); o intervalo de índice aplica-se somente ao eixo do atributo porque o eixo do vértice é sempre totalmente indexável.
Esta instrução se aplica aos seguintes estágios de sombreador:
Sombreador de vértice | Sombreador de geometria | Sombreador de pixel |
---|---|---|
x | x | x |
Esta instrução é incluída para auxiliar na depuração de um sombreador no assembly; não é possível criar um sombreador na linguagem de assembly usando o Modelo de Sombreador 4.
Exemplo
Veja um exemplo.
dcl_indexRange v1, v3
dcl_indexRange v4, v9
Modelo de sombreador mínimo
Essa função tem suporte nos seguintes modelos de sombreador.
Modelo de Sombreador | Com suporte |
---|---|
Modelo de sombreador 5 | sim |
Modelo de sombreador 4.1 | sim |
Modelo de sombreador 4 | sim |
Modelo de Sombreador 3 (DirectX HLSL) | não |
Modelo de Sombreador 2 (DirectX HLSL) | não |
Modelo de Sombreador 1 (DirectX HLSL) | não |