ShaderEffect.DdxUvDdyUvRegisterIndex Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica el registro de sombreador que se va a usar para los derivados parciales de las coordenadas de textura con respecto al espacio de pantalla.
protected:
property int DdxUvDdyUvRegisterIndex { int get(); void set(int value); };
protected int DdxUvDdyUvRegisterIndex { get; set; }
member this.DdxUvDdyUvRegisterIndex : int with get, set
Protected Property DdxUvDdyUvRegisterIndex As Integer
Valor de propiedad
Índice del registro que contiene los derivados parciales.
Excepciones
Se intentó establecer la propiedad DdxUvDdyUvRegisterIndex más de una vez o después del procesamiento inicial del efecto.
Comentarios
Utilice la DdxUvDdyUvRegisterIndex propiedad para especificar el registro de sombreador que contiene los derivados parciales de las coordenadas de textura con respecto al espacio en pantalla. Por ejemplo, si DdxUvDdyUvRegisterIndex se establece en 4, se usa el registro del sombreador c4. El registro c4 contiene cuatro campos float. El siguiente código de lenguaje de sombreado de alto nivel (HLSL) muestra cómo se usa este registro. El nextPixelUV
valor representa el siguiente píxel a la derecha.
float4 ddxUvDdyUv : register(c4);
SamplerState sampler : register(S0);
...
float2 nextPixelUV;
nextPixelUV.u = ddxUvDdyUv.x + u;
nextPixelUV.v = ddxUvDdyUv.y + v;
tex2D(sampler, nextPixelUV);
En la tabla siguiente se muestra cómo se rellena el registro especificado para DdxUvDdyUvRegisterIndex .
Registrar constante | Valor derivado |
---|---|
Componente x | ddx(u) |
Componente y | ddx(v) |
componente z | ddy(u) |
componente w | ddy(v) |
Las coordenadas de textura se indican como (u, v)
. ddx(u)
es la derivada parcial constante del componente u
de coordenada de textura con respecto a la coordenada x del espacio de pantalla. ddy(u)
es la derivada parcial de la coordenada u
de textura con respecto a la coordenada y del espacio de pantalla. Del mismo modo, ddx(v)
y ddy(v)
son los derivados de espacio de pantalla correspondientes para el componente v
de coordenadas de textura .
Nota
HLSL tiene las instrucciones ddx y ddy para calcular estos valores, pero estas instrucciones no están disponibles en todo el hardware pixelShader 2.0.
Es posible que piense en estas constantes de la siguiente manera. Si pasa 1 píxel a la derecha en el espacio de pantalla (en la dirección x), ddx(u)
es la cantidad que u
cambia en el espacio de textura y ddx(v)
es la cantidad que v
cambia en el espacio de textura. Si el efecto está alineado con el eje cuando se representa, ddx(v)
entonces es 0. Si el efecto se gira cuando se representa, no ddx(v)
es cero.