Share via


ID3D10Device::CreateGeometryShaderWithStreamOutput 方法 (d3d10.h)

建立可寫入串流輸出緩衝區的幾何著色器。

語法

HRESULT CreateGeometryShaderWithStreamOutput(
  [in]  const void                       *pShaderBytecode,
  [in]  SIZE_T                           BytecodeLength,
  [in]  const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
  [in]  UINT                             NumEntries,
  [in]  UINT                             OutputStreamStride,
  [out] ID3D10GeometryShader             **ppGeometryShader
);

參數

[in] pShaderBytecode

類型: const void*

標準幾何著色器加上資料流程輸出之已編譯幾何著色器的指標。 如需如何取得此指標的詳細資訊,請參閱 取得已編譯著色器的指標

若要建立資料流程輸出而不使用幾何著色器,請將指標傳遞至先前階段的輸出簽章。 若要取得此輸出簽章,請呼叫 D3DGetOutputSignatureBlob 編譯器函式。 您也可以將指標傳遞至先前階段中使用的已編譯 頂點著色器 。 這個編譯的著色器會提供資料的輸出簽章。

[in] BytecodeLength

類型: SIZE_T

已編譯幾何著色器的大小。

[in] pSODeclaration

類型:const D3D10_SO_DECLARATION_ENTRY*

D3D10_SO_DECLARATION_ENTRY陣列的指標。 如果NumEntries> 0,則不可為Null

[in] NumEntries

類型: UINT

pSODeclaration所指向之陣列中的專案數。 最小值 0,最多 64 個。

[in] OutputStreamStride

類型: UINT

pSODeclaration所指向之陣列中每個元素的大小,以位元組為單位。 只有在 pSODeclaration中的所有專案輸出位置為 0 時,才會使用此參數。

[out] ppGeometryShader

類型: ID3D10GeometryShader**

ID3D10GeometryShader 介面指標的位址。 如果這是 Null,則會驗證所有其他參數,如果所有參數都通過驗證,則此 API 會傳回S_FALSE,而不是S_OK。

傳回值

類型: HRESULT

這個方法會傳回其中一個 Direct3D 10 傳回碼

備註

如需使用 CreateGeometryShaderWithStreamOutput的詳細資訊,請參閱 使用 Stream 輸出建立 Geometry-Shader 物件

規格需求

   
目標平台 Windows
標頭 d3d10.h
程式庫 D3D10.lib

另請參閱

ID3D10Device 介面