deriv_rtx_coarse (sm5 - asm)

Computes the rate of change of components.

deriv_rtx_coarse[_sat] dest[.mask], [-]src0[_abs][.swizzle],




[in] The address of the results of the operation.


[in] The components in the operation.



This instruction computes the rate of change of contents of each float32 component of src0 (post-swizzle), with regard to RenderTarget x direction (rtx) or RenderTarget y direction (see deriv_rty_coarse). Only a single x,y derivative pair is computed for each 2x2 stamp of pixels.

The data in the current pixel shader invocation may or may not participate in the calculation of the requested derivative, because the derivative will be calculated only once per 2x2 quad. For example, the x derivative could be a delta from the top row of pixels, and the y direction (deriv_rty_coarse) could be a delta from the left column of pixels. The exact calculation is up to the hardware vendor. There is also no specification dictating how the 2x2 quads will be aligned or tiled over a primitive.

Derivatives are calculated at a coarse level, once per 2x2 pixel quad. This instruction and deriv_rty_coarse are alternatives to deriv_rtx_fine and deriv_rty_fine. These _coarse and _fine derivative instructions are a replacement for deriv_rtxderiv_rty from previous shader models .

This instruction applies to the following shader stages:



Minimum Shader Model

This instruction is supported in the following shader models:

Shader ModelSupported
Shader Model 5 yes
Shader Model 4.1 no
Shader Model 4 no
Shader Model 3 (DirectX HLSL) no
Shader Model 2 (DirectX HLSL) no
Shader Model 1 (DirectX HLSL) no


Related topics

Shader Model 5 Assembly (DirectX HLSL)