Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Rate of change of contents of each float32 component of src0 (post-swizzle), with regard to RenderTarget x direction (rtx) or RenderTarget y direction.
deriv_rtx[_sat] dest[.mask], [-]src0[_abs][.swizzle], |
---|
Item | Description |
---|---|
dest |
[in] The address of the result of the operation. |
src0 |
[in] The component in the operation. |
Remarks
Only a single x,y derivative pair is computed for each 2x2 stamp of pixels.
This operation is hardware dependent.
Reference rasterizer implementation for triangles:
- Pixel Shader always runs Shader over 2x2 quad of pixels in lockstep (even through flow control, masking disabled pixels).
- Quads always have even numbered pixel coordinates (both x and y) for top-left pixel.
- Dummy pixels run off primitive if primitive is too small to fill a 2x2 quad.
- deriv_rtx is computed by first choosing 2 pixels: the current pixel and the other pixel with the same y coordinate from the quad. Then, the result is calculated as: src0(odd x pixel) - src0(even x pixel) [per-component]
- deriv_rty is computed by first choosing 2 pixels: the current pixel and the other pixel with the same x coordinate from the quad. Then, the result is calculated as: src0(odd y pixel) - src0(even y pixel) [per-component]
This instruction applies to the following shader stages:
Vertex Shader | Geometry Shader | Pixel Shader |
---|---|---|
x |
Minimum Shader Model
This function is supported in the following shader models.
Shader Model | Supported |
---|---|
Shader Model 5 | yes |
Shader Model 4.1 | yes |
Shader Model 4 | yes |
Shader Model 3 (DirectX HLSL) | no |
Shader Model 2 (DirectX HLSL) | no |
Shader Model 1 (DirectX HLSL) | no |