1. //hlsl vs_1_1 vs_2_0
  2.  
  3. #include "vertex_program/include/vertex_shader_constants.inc"
  4. #include "vertex_program/include/functions.inc"
  5.  
  6. struct InputVertex
  7. {
  8.     float4  position              : POSITION0  : register(v0);
  9.     float3  textureCoordinateSet0 : TEXCOORD0  : register(v7);
  10. };
  11.  
  12. struct OutputVertex
  13. {
  14.     float4  position              : POSITION0;
  15.     float   fog                   : FOG;
  16.     float3  textureCoordinateSet0 : TEXCOORD0;
  17. };
  18.  
  19. OutputVertex main(InputVertex inputVertex)
  20. {
  21.     OutputVertex outputVertex;
  22.  
  23.     // transform vertex
  24.     outputVertex.position = transform3d(inputVertex.position);
  25.  
  26.     // copy texture coordinates
  27.     outputVertex.textureCoordinateSet0 = inputVertex.textureCoordinateSet0;
  28.  
  29.     // turn off fog
  30.     outputVertex.fog = 1.f;
  31.  
  32.     return outputVertex;
  33. }