IDirect3DDevice9::SetTexture 方法 (d3d9helper.h)

將紋理指派給裝置的階段。

語法

HRESULT SetTexture(
  [in] DWORD                 Stage,
  [in] IDirect3DBaseTexture9 *pTexture
);

參數

[in] Stage

類型: DWORD

以零為起始的取樣器編號。 紋理會系結至取樣器;取樣器會定義取樣狀態,例如篩選模式和地址包裝模式。 可程式化和固定函式管線會以不同的方式參考紋理:

  • 可程式化著色器會使用取樣器編號參考紋理。 可程式化著色器可用的取樣器數目取決於著色器版本。 如需頂點著色器,請參閱 Sampler (Direct3D 9 asm-vs) 。 如需圖元著色器,請參閱 Sampler (Direct3D 9 asm-ps)
  • 另一方面,固定函式管線會依紋理階段編號來參考紋理。 取樣器的數目上限取決於兩個上限:maxSimultaneousTextures 和 D3DCAPS9 結構的 MaxTextureBlendStages。
階段/取樣器數位有兩個其他特殊案例。

[in] pTexture

類型: IDirect3DBaseTexture9*

IDirect3DBaseTexture9 介面的指標,代表所設定的紋理。

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,則可以D3DERR_INVALIDCALL傳回值。

備註

如果紋理是以集區類型的D3DPOOL_SCRATCH建立,則不允許 SetTexture。 除非使用 D3DDEVCAPS_TEXTURESYSTEMMEMORY 設定DevCaps,否則不允許使用集區類型的D3DPOOL_SYSTEMMEM紋理 SetTexture

規格需求

需求
目標平台 Windows
標頭 d3d9helper.h (包含 D3D9.h)
程式庫 D3D9.lib

另請參閱

GetTexture

GetTextureStageState

IDirect3DDevice9

SetTextureStageState