Diferencias del sombreador de píxeles
Ranuras de instrucción
Cada versión admite un número diferente de ranuras de instrucción máximas.
Versión | Número máximo de ranuras de instrucción |
---|---|
ps_1_1 | 4 textura + 8 aritméticas |
ps_1_2 | 4 textura + 8 aritméticas |
ps_1_3 | 4 textura + 8 aritméticas |
ps_1_4 | 6 texturas + 8 aritméticas por fase |
ps_2_0 | 32 textura + 64 aritméticas |
ps_2_x | 96 como mínimo y hasta el número de ranuras en D3DCAPS9. D3DPSHADERCAPS2_0.NumInstructionSlots. Consulte D3DPSHADERCAPS2_0. |
ps_3_0 | 512 como mínimo y hasta el número de ranuras en D3DCAPS9. MaxPixelShader30InstructionSlots. Consulte D3DPSHADERCAPS2_0. |
Para obtener información sobre las limitaciones de los sombreadores de software, vea Sombreadores de software.
Límites de anidamiento de control de flujo
- Consulte Limitaciones del control de flujo.
Características de ps_1_x
Nuevas instrucciones:
Consulte ps_1_1, ps_1_2, ps_1_3 ps_1_4 Instrucciones.
Nuevos registros:
Consulte ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registros.
características de ps_2_0
Características nuevas:
- Tres nuevos swizzles : .yzxw, .zxyw, .wzyx
- El número de registros temporales (r#) aumentó a 12
- El número de registros de registro flotante constante (c#) aumentó a 32
- Número de registros de coordenadas de textura(t#) aumentado a 8
Nuevas instrucciones:
- Instrucciones de instalación - dcl - (sm2, sm3 - ps asm), dcl_samplerType (sm2, sm3 - ps asm)
- Instrucciones aritméticas - abs - ps, crs - ps, dp2add - ps, exp - ps, frc - ps, log - ps, m3x2 - ps, m3x3 - ps, m3x4 - ps, m4x3 - ps, m4x4 - ps, max - ps, min - ps, nrm - ps, pow - ps, rcp - ps, rsq - ps, sincos - ps
- Instrucciones de textura - texld - ps_2_0 y arriba (sintaxis diferente), texldb - ps, texldp - ps
Nuevos registros:
Características de ps_2_x
Nuevas características (consulte D3DPSHADERCAPS2_0).):
- Control de flujo dinámico
- Control de flujo estático
- Anidamiento para instrucciones de control de flujo dinámico y estático
- Se ha aumentado el número de registros temporales(r#)
- Swizzle de origen arbitrario
- Instrucciones de degradado
- Predicación
- Sin límite de lectura de textura dependiente
- Sin límite de instrucciones de textura
Nuevas instrucciones:
- Instrucciones de control de flujo estático : si bool - ps, call - ps, callnz bool - ps, else - ps, endif - ps, rep - ps, endrep - ps, label - ps, ret - ps
- Instrucciones de control de flujo dinámico - break - ps, break_comp - ps, breakp - ps, callnz pred - ps, if_comp - ps, if pred - ps, setp_comp - ps
- Instrucciones aritméticas - dsx - ps, dsy - ps
- Instrucción de textura - texldd - ps
Nuevos registros:
características de ps_3_0
Características nuevas:
- Registros de entradaconsolidados 10 (v#)
- Registro de colores de entrada indizable (v#) con el registro de contadores de bucles (aL)
- El número de registros temporales(r#) aumentó a 32
- Número de registros flotantes constantes(c#) aumentado a 224
Nuevas instrucciones:
- Instrucción de instalación: dcl_semantics (sm3 - ps asm)
- Instrucciones de flujo estático: bucle - ps, endloop - ps
- Instrucción aritmética - sincos - ps (sintaxis nueva)
- Instrucción de textura - texldl - ps
Nuevos registros:
- Registro de entrada (v#)
- Registro de posición (vPos)
- Registro de caras (vFace)
Temas relacionados