Direct3D サーフェス (Direct3D 9)
サーフェスはディスプレイ メモリの線形領域を表し、通常はディスプレイ カードの表示メモリに存在しますが、サーフェスはシステム メモリに存在する可能性があります。 サーフェスは IDirect3DSurface9 インターフェイスによって管理されます。
- フロント バッファー。 グラフィックス アダプターによって変換され、モニターに表示されるメモリの四角形。 Direct3D では、アプリケーションはフロント バッファーに直接書き込むことはありません。
- バック バッファー。 アプリケーションが直接書き込むことができるメモリの四角形。 バック バッファーがモニターに直接表示されることはありません。
- サーフェスの反転。 バック バッファーをフロント バッファーに移動するプロセス。
- スワップ チェーン。 フロント バッファーにシリアル表示できる 1 つ以上のバック バッファーのコレクション。
サーフェスの取得
次のいずれかのメソッドを呼び出してサーフェスを作成します。
Surface 形式は、サーフェス メモリ内の各ピクセルのデータの解釈方法を決定します。 Direct3D では、 D3DSURFACE_DESC 構造体の D3DFORMAT メンバーを使用して、サーフェス形式を記述します。 GetDesc メソッドを呼び出すことで、既存のサーフェスの形式を取得できます。
サーフェスが作成されたら、次のいずれかのメソッドを呼び出すことで、そのサーフェスへのポインターを取得できます。
- GetBackBuffer
- GetCubeMapSurface
- GetDepthStencilSurface
- GetFrontBufferData
- GetRenderTarget
- GetSurfaceLevel
IDirect3DSurface9 インターフェイスを使用すると、UpdateSurface メソッドを使用して間接的にメモリにアクセスできます。 このメソッドを使用すると、1 つの IDirect3DSurface9 インターフェイスから別の IDirect3DSurface9 インターフェイスにピクセルの四角形領域をコピーできます。 サーフェス インターフェイスには、表示メモリに直接アクセスするメソッドもあります。 たとえば、 LockRect メソッドを使用して、表示メモリの四角形の領域をロックできます。 サーフェス上のロックされた四角形領域の操作が完了したら、 UnlockRect を呼び出す必要があります。
その他の Surface トピック
次のいずれかのトピックでサーフェスを使用する方法の詳細を確認してください。
- サーフェス形式 (Direct3D 9)
- スワップ チェーンとは (Direct3D 9)
- 幅とピッチ (Direct3D 9)
- サーフェスの反転 (Direct3D 9)
- ページ反転とバック バッファリング (Direct3D 9)
- サーフェスへのコピー (Direct3D 9)
- サーフェスのコピー (Direct3D 9)
- Surface メモリへの直接アクセス (Direct3D 9)
- プライベート Surface データ (Direct3D 9)
- ガンマ コントロール (Direct3D 9)
関連トピック