Platform SDK: DirectX |
DirectDraw7.GetAvailableTotalMem メソッドは、指定されたタイプのサーフェスで使用可能なディスプレイ メモリの総容量を取得する。
object.GetAvailableTotalMem( _ ddsCaps As DDSCAPS2) As Long
成功すれば、総メモリ容量を返す。
失敗すればエラーが発生し、Err.Number に次のいずれかの値が設定される。
DDERR_INVALIDCAPS |
DDERR_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_NODIRECTDRAWHW |
このメソッドは、現在のディスプレイ メモリの瞬間的な状態だけを提供する。ディスプレイ メモリの空き容量は、サーフェスの作成と解放により変化する。したがって、空きメモリ容量の値は単に近似値として使用すべきである。さらに、特定のディスプレイ アダプタ カードでは、2 つの異なるメモリ タイプを区別しない。たとえば、アダプタはディスプレイ メモリの同じ部分を使って、Z バッファとテクスチャを格納する場合がある。このため、サーフェスのあるタイプ (たとえば Z バッファ) を割り当てることは、サーフェスのほかのタイプ (たとえばテクスチャ) が利用できるディスプレイ メモリの容量に影響を与える。したがって、動的使用 (テクスチャ マッピングなど) で利用できるメモリ容量を決める前に、アプリケーションの固定リソース (フロントとバック バッファ、および Z バッファなど) を最初に割り当てることが最良の方法となる。