Name
vs_2_x - Direct3D Shader Model 2.0 Extended vertex profile for DirectX 9
Synopsis
vs_2_x
Description
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 DirectX 9's Vertex Shader 2.0 Extended shader format. See:
http://msdn.microsoft.com/en-us/library/bb172929.aspx
This profile supports static and structured dynamic flow control.
3D Api Dependencies
Requires Direct3D 9 support.
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_NOTEXINSTRUCTIONLIMIT
Profile 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_x 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)
FOG
Uniform Input Semantics
Eight texture units are supported:
Binding Semantic Name Corresponding Data
TEXUNIT0 Texture unit 0
TEXUNIT1 Texture unit 1
...
TEXUNIT7 Texture unit 7
Output 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 distances
Standard 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
ps_2_x,
vs_2_0
|