IDirect3DDevice9::CreateRenderTarget 方法 (d3d9helper.h)

建立轉譯目標表面。

語法

HRESULT CreateRenderTarget(
  [in]          UINT                Width,
  [in]          UINT                Height,
  [in]          D3DFORMAT           Format,
  [in]          D3DMULTISAMPLE_TYPE MultiSample,
  [in]          DWORD               MultisampleQuality,
  [in]          BOOL                Lockable,
  [out, retval] IDirect3DSurface9   **ppSurface,
  [in]          HANDLE              *pSharedHandle
);

參數

[in] Width

類型: UINT

轉譯目標表面的寬度,以圖元為單位。

[in] Height

類型: UINT

轉譯目標表面的高度,以圖元為單位。

[in] Format

類型: D3DFORMAT

D3DFORMAT列舉型別的成員,描述轉譯目標的格式。

[in] MultiSample

類型: D3DMULTISAMPLE_TYPE

D3DMULTISAMPLE_TYPE列舉型別的成員,其描述多重取樣緩衝區類型。 此參數會指定這個轉譯目標的反鋸齒類型。 當此表面傳遞至 IDirect3DDevice9::SetRenderTarget時,其多重取樣類型必須與 IDirect3DDevice9::SetDepthStencilSurface所設定的深度樣板類型相同。

[in] MultisampleQuality

類型: DWORD

品質等級。 有效範圍介於零到一個小於 IDirect3D9::CheckDeviceMultiSampleType所傳回的 pQualityLevels 所傳回的層級之間。 傳遞較大的值會傳回錯誤,D3DERR_INVALIDCALL。 配對轉譯目標、深度樣板表面和多重取樣類型的 MultisampleQuality 值必須完全相符。

[in] Lockable

類型: BOOL

除非應用程式針對 Lockable 指定 TRUE ,否則轉譯目標無法鎖定。

請注意,可鎖定的轉譯目標可降低某些圖形硬體的效能。 讀取效能 (將資料從視訊記憶體移至系統記憶體) 取決於 AGP 與 PCI Express () 所使用的硬體類型,而且通常比將資料從系統移至視訊記憶體) 上傳效能 (低。 如果您需要轉譯目標的讀取權限,請使用 GetRenderTargetData ,而不是可鎖定的轉譯目標。

[out, retval] ppSurface

類型: IDirect3DSurface9**

IDirect3DSurface9介面指標的位址。

[in] pSharedHandle

類型: HANDLE*

保留的。 將此參數設定為 Null。 此參數可用於 Direct3D 9,讓 Windows Vista 共用資源

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,傳回值可以是下列其中一項:D3DERR_NOTAVAILABLE、D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY。

備註

轉譯目標表面會放在D3DPOOL_DEFAULT記憶體類別中。

不支援建立可鎖定、多重取樣的轉譯目標。

需求

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

另請參閱

IDirect3DDevice9