Name
vs_2_sw - Direct3D Software Shader for Model 2.0 Extended vertex profile
Synopsis
vs_2_swDescription
This Direct3D profile corresponds to the per-vertex 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 Vertex Shader 2.0 Extended shader format. See:
http://msdn.microsoft.com/en-us/library/bb172925.aspxThis profile is useful for debugging and prototyping.
3D Api Dependencies
Requires support for software vertex processing and a reference device.
This profile generates code assuming the following Direct3D 9 Vertex shader capability bits are set:
D3DD3DPSHADERCAPS2_0_ARBITRARYSWIZZLE D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS D3DD3DPSHADERCAPS2_0_PREDICATION D3DD3DPSHADERCAPS2_0_NODEPENDENTREADLIMIT D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMITProfile Options
- NumTemps=val
- Number of 4-component vector temporaries the target implementation supports.
- NumInstructionSlots=val
- Number of instructions the target implementation supports.
- MaxDrawBuffers=val
- Number of draw buffers or Multiple Render Targets (MRT) the target implementation supports.
Data Types
- half
- 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.
- float
- The float data type corresponds to a floating-point representation with at least 24 bits.
- NVIDIA GPUs supporting vs_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.
- fixed
- The fixed data type is treated like half.
Semantics
Input Semantics
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) FOGUniform Input Semantics
Eight texture units are supported:
Binding Semantic Name Corresponding Data TEXUNIT0 Texture unit 0 TEXUNIT1 Texture unit 1 ... TEXUNIT7 Texture unit 7Output Semantics
Binding Semantics Name Corresponding Data POSITION, HPOS Output position PSIZE, PSIZ Output point size FOG, FOGC Output fog coordinate COLOR0, COL0 Output primary color COLOR1, COL1 Output secondary color BCOL0 Output backface primary color BCOL1 Output backface secondary color TEXCOORD0-TEXCOORD7, Output texture coordinates TEX0-TEX7 CLP0-CL5 Output Clip distancesStandard Library Issues
Functions that compute partial derivatives are not supported.
There are no restrictions on dependent texture reads (up to the instruction limit) for this profile.
See Also