ps_2_sw - Direct3D Software Shader for Model 2.0 Extended fragment profile ps_2_sw This Direct3D profile corresponds to the per-fragment functionality introduced by GeForce FX (NV3x) for DirectX 9. The compiler output for this profile conforms to the textual assembly defined by the software version of DirectX 9's Pixel Shader 2.0 Extended shader format. See: http://msdn.microsoft.com/en-us/library/bb172925.aspx This profile is useful for debugging and prototyping. Requires a reference device. This profile generates code assuming the following Direct3D 9 pixel shader capability bits are set: D3DD3DPSHADERCAPS2_0_ARBITRARYSWIZZLE D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS D3DD3DPSHADERCAPS2_0_PREDICATION D3DD3DPSHADERCAPS2_0_NODEPENDENTREADLIMIT D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT Number of 4-component vector temporaries the target implementation supports. Number of instructions the target implementation supports. Number of draw buffers or Multiple Render Targets (MRT) the target implementation supports. The half data type makes use of the Partial Precision instruction modifier to request less precision. NVIDIA GPUs may use half-precision floating-point when the Partial Precision instruction modifier is specified. Half-precision floating-point is encoded with a sign bit, 10 mantissa bits, and 5 exponent bits (biased by 16), sometimes called s10e5. The float data type corresponds to a floating-point representation with at least 24 bits. NVIDIA GPUs supporting ps_2_sw use standard IEEE 754 single-precision floating-point encoding with a sign bit, 23 mantissa bits, and 8 exponent bits (biased by 128), sometimes called s10e5. Older ATI GPUs use 24-bit floating-point. The fixed data type is treated like half.

INPUT SEMANTICS
The varying input semantics in the ps_2_sw profile correspond to the respectively named varying output semantics of the vs_2_sw profile. Binding Semantics Name Corresponding Data COLOR Input primary color COLOR0 COL COL0 COLOR1 Input secondary color COL1 TEX0 Input texture coordinate sets 0 TEXCOORD0 TEX1 Input texture coordinate sets 1 TEXCOORD1 TEX2 Input texture coordinate sets 2 TEXCOORD2 TEX3 Input texture coordinate sets 3 TEXCOORD3 TEX4 Input texture coordinate sets 4 TEXCOORD4 TEX5 Input texture coordinate sets 5 TEXCOORD5 TEX6 Input texture coordinate sets 6 TEXCOORD6 TEX7 Input texture coordinate sets 7 TEXCOORD7 FOGP Input fog color (XYZ) and factor (W) FOG

UNIFORM INPUT SEMANTICS
Sixteen texture units are supported: Binding Semantic Name Corresponding Data TEXUNIT0 Texture unit 0 TEXUNIT1 Texture unit 1 ... TEXUNIT15 Texture unit 15

OUTPUT SEMANTICS
COLOR Output color (float4) COLOR0 COL0 COL DEPTH Output depth (float) DEPR Functions that compute partial derivatives are not supported. There are no restrictions on dependent texture reads (up to the instruction limit) for this profile. vs_2_sw, ps_2_x