Microsoft DirectX 8.1 (vertex shader versions 1.0, 1.1) |
Moves contents of the source into the destination.
mov dest, src
To learn more about registers, see Registers.
The following code fragment shows the operations performed.
if(dest == A0) { float p = (float)floor(src.x); *(int*)&dest.x = FloatToInteger(p); } else { dest = src; }
// This example outputs a constant diffuse color. vs.1.0 m4x4 oPos, v0, c0 ; transform vertices by view/projection matrix mov oD0, c4 ; output constant color // The resultant vertex color is green and is shown below.
// Additional code initializes the constant register c4 with the color green. D3DXMATRIX mat, matView, matProj; D3DXMatrixMultiply(&mat, &matView, &matProj); D3DXMatrixTranspose(&mat, &mat); // set C0 with the view and projection matrix m_pd3dDevice->SetVertexShaderConstant(0, &mat, 4); // set register c4 float color[4] = {0, 1, 0, 0}; m_pd3dDevice->SetVertexShaderConstant(4, &color, 1); // The first SetVertexShaderConstant method binds the C0 register // with the first row of the view/projection matrix (rows 2, 3 and 4 are // bound to registers C2, C3 and c4 also). The m4x4 instruction (in the // shader file) loads the data. // The second SetVertexShaderConstant method binds the C4 register // with the color green.