次の方法で共有


ID3D11Device::CreateGeometryShaderWithStreamOutput

ストリーミング出力バッファーへの書き込みが可能なジオメトリ シェーダーを作成します。

HRESULT 
CreateGeometryShaderWithStreamOutput(
  const void *pShaderBytecode,
  SIZE_T BytecodeLength,
  const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
  UINT NumEntries,
  const UINT *pBufferStrides,
  UINT NumStrides,
  UINT RasterizedStream,
  ID3D11ClassLinkage *pClassLinkage,
  ID3D11GeometryShader **ppGeometryShader
);

パラメータ

  • pShaderBytecode
    コンパイル済みシェーダーへのポインターです。
  • BytecodeLength
    コンパイル済みのジオメトリ シェーダーのサイズです。
  • pSODeclaration
    D3D11_SO_DECLARATION_ENTRY 配列へのポインターです。NumEntries > 0 の場合は NULL にできません。
  • NumEntries
    ストリーム出力宣言内のエントリー数です (範囲は 0 ~ D3D11_SO_STREAM_COUNT * D3D11_SO_OUTPUT_COMPONENT_COUNT)。
  • pBufferStrides
    バッファー ストライドの配列です。各ストライドは、該当のバッファーの要素のサイズです。
  • NumStrides
    pBufferStrides 内のストライド (またはバッファー) の数です (範囲は 0 ~ D3D11_SO_BUFFER_SLOT_COUNT)。
  • RasterizedStream
    ラスタライザー ステージに送信されるストリームのインデックス番号です (範囲は 0 ~ D3D11_SO_STREAM_COUNT - 1)。ストリームをラスター化しない場合は、D3D11_SO_NO_RASTERIZED_STREAM に設定します。
  • pClassLinkage
    クラス リンク インターフェイスへのポインターです (「ID3D11ClassLinkage」を参照してください)。この値には NULL を指定できます。
  • ppGeometryShader
    作成したジオメトリ シェーダーを表す ID3D11GeometryShader インターフェイスへのポインターのアドレスです。他のパラメーターを検証するには、これを NULL に設定します。検証が問題なく終了すると、このメソッドは S_OK の代わりに S_FALSE を返します。

戻り値

このメソッドは、「Direct3D 11 のリターン コード」のいずれかを返します。

要件

ヘッダー: D3D11.h 宣言

ライブラリ: D3D11.lib 内容

関連項目

ID3D11Device