vs_2_0 dcl_position v0 dcl_color v2 dcl_texcoord0 v3 dcl_texcoord5 v13 #include "VertexShader.h" #define C_BILLBOARD_X c10 #define C_BILLBOARD_Y c14 #define C_ASPECT c15 ;------------------------------------------------------------------------------ ; Vertex transformation ;------------------------------------------------------------------------------ ; Transform to projection space m4x4 r0, vPos, C_PROJECTION_MATRIX ; Adjust for aspect ratio mul r4, vScale, C_ASPECT ; Add in the appropriate billboard vectors ; (These are already transformed into projection space) mad r0, r4.x, C_BILLBOARD_X, r0 mad OPOS, r4.y, C_BILLBOARD_Y, r0 FIXUP_OPOS ;------------------------------------------------------------------------------ ; Lighting calculation ;------------------------------------------------------------------------------ ; Combine vertex color and material color mul oD0, vDiffuse, C_MATERIAL_COLOR ; Calculate fog factor CalculateLayeredFog(vPos, oFog) ;------------------------------------------------------------------------------ ; Texture coordinates ;------------------------------------------------------------------------------ ; Copy base tex coords mov oT0.xy, vTexCoords