共用方式為


IDirect3DDevice9::SetTexture 方法 (d3d9.h)

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

語法

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

參數

[in] Stage

類型: DWORD

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

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

[in] pTexture

類型: IDirect3DBaseTexture9*

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

傳回值

類型: HRESULT

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

備註

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

規格需求

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

另請參閱

GetTexture

GetTextureStageState

IDirect3DDevice9

SetTextureStageState