   Can the format of the render target be R16G16_FLOAT??
  I want to store data in a R16G16 texture by rendering to it with Pixel Shader.Can I directly render data on to it? Or do I have to pact them myself into RGBA16_FLOAT??If I can render to R16G16_FLOAT, does it mean my SV_TARGET is float2??float2 PS( params.. ) : SV_TARGETlike this??   
  What do you mean by 'render data on to it'. Whatever you write in the pixel shader will get reflected in you render target texture. If you specify a format with only R, only the red channel of the pixel shader output will be used, if you specify a RG format only red and green will be used and so on...   ;  DXGI_FORMAT_R16G16_FLOATstill use float4 as a return on your pixel shader like thisfloat4 mypshader(VS_out psin): SV_Target0 {   return float4(Redcomp, GreenComp, 0, 1);}   ;  Got it, thanks.Though I still wanna ask, is the (r, g, 0, 1) really necessary??Why 0 and 1?   ;  No, it isn't necessary, you may use float2 as output. However, using float4 won't do any bad. As the others pointed out, the channels that don't fit into the target texture will be ignored (BA here)   