locked
"ID3D11Device::CreateInputLayout" Changed?

    Question

  • HRESULT CreateInputLayout(
      [in]   const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
      [in]   UINT NumElements,
      [in]   constvoid*pShaderBytecodeWithInputSignature,
      [in]   SIZE_T BytecodeLength,
      [out]  ID3D11InputLayout **ppInputLayout
    );

    In old SDK, pShaderBytecodeWithInputSignature is a SignedBlob. But in Metro Sample, it uses the Compiled Shader(cso) directly?


    C++ DX11

    Monday, June 25, 2012 4:19 AM

Answers

  • I believe that has always been optional...

    • Marked as answer by Raptor K Wednesday, June 27, 2012 2:09 AM
    Tuesday, June 26, 2012 6:19 PM

All replies

  • The .cso file is a binary 'blob' of all the HLSL shader output. The various Direct3D 11 APIs do not care about the way it gets the data which can be from a binary memory blob loaded from a .cso, coming back directly from D3DCompile* as a ID3DBlob, or a static C-style binary array generated by FXC using the /Fh flag (this last technique is what we use for DirectXTK's shaders).

    http://go.microsoft.com/fwlink/?LinkId=248929
    Monday, June 25, 2012 6:21 PM
  •  Why we use D3DGetInputSignatureBlob in the old SDK, and it is not needed now?

    C++ DX11

    Tuesday, June 26, 2012 2:51 AM
  • I believe that has always been optional...

    • Marked as answer by Raptor K Wednesday, June 27, 2012 2:09 AM
    Tuesday, June 26, 2012 6:19 PM