// This has to be the first line in every vertex shader
vs.1.1

// This code line transforms the vertex position in mesh space into
// screen space. m4x4 is the command that does this. oPos is the name
// of the output register the shader has to save the screen space
// position to. The vertex position in mesh space is always saved in
// the register v0. c0 is a variable that gets set before the model
// gets rendered, a so called constant register. Constant registers get
// defined by the *.ufx file. It contains the beginning of the
// transformation matrix that is needed to calculate the screen space
// position.
m4x4 oPos, v0, c0

// This code line simply passes the material color, by copying it from
// the fifth constant register to the diffuse color output register.
mov oD0, c4

// This code line passes the first texture coordinate of the mesh by
// copying it from the seventh vertex data register to the texture
// data output register.
add oT0, c10, v7
add oT1, c11, v7
add oT2, c12, v7
add oT3, c13, v7
add oT4, c14, v7
add oT5, c15, v7
//add oT6, c16, v7
//add oT7, c17, v7