title: Geometry Shader won't compile in DirectX10 HLSL
body: <p>I've been trying to code a geometry shader in order to generate billboard systems as explained in Frank Luna's book Introduction to 3D Game Programming with DirectX. I insert the shader into my technique as follows: </p>
  
  <pre><code>pass P3
      {
          SetVertexShader(CompileShader(vs_4_0, VS()));
          SetGeometryShader(CompileShader(gs_4_0, GS()));
          SetPixelShader(CompileShader( ps_4_0, PS_NoSpecular()));
          SetBlendState(SrcAlphaBlendingAdd, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF );
      }
  </code></pre>
  
  <p>However, this gives the error 1>D3DEffectCompiler : error : No valid VertexShader-GeometryShader combination could be found in Technique render, Pass P3.</p>
  
  <p>The structs for both VS and GS are given below:</p>
  
  <pre><code>struct GS_INPUT
  {
      float4 PosH : SV_POSITION;   
      float4 PosW : POSITION;   
      float2 Tex : TEXCOORD; 
      float3 N : NORMAL;  
      float3 Tangent : TANGENT;
      float3 Binormal : BINORMAL;
  };
  
  struct VS_INPUT
  {
      float4 Pos : POSITION;   
      float2 Tex : TEXCOORD; 
      float3 N : NORMAL;  
      float3 Tangent : TANGENT;
      float3 Binormal : BINORMAL;
  };
  </code></pre>
  
  <p>Should they be the same? </p>