D3DMULTISAMPLE_TYPE
デバイスが適用できるフルシーン マルチサンプリングのレベルを定義します。
typedef enum D3DMULTISAMPLE_TYPE
{
D3DMULTISAMPLE_NONE = 0,
D3DMULTISAMPLE_NONMASKABLE = 1,
D3DMULTISAMPLE_2_SAMPLES = 2,
D3DMULTISAMPLE_3_SAMPLES = 3,
D3DMULTISAMPLE_4_SAMPLES = 4,
D3DMULTISAMPLE_5_SAMPLES = 5,
D3DMULTISAMPLE_6_SAMPLES = 6,
D3DMULTISAMPLE_7_SAMPLES = 7,
D3DMULTISAMPLE_8_SAMPLES = 8,
D3DMULTISAMPLE_9__SAMPLES = 9,
D3DMULTISAMPLE_10_SAMPLES = 10,
D3DMULTISAMPLE_11_SAMPLES = 11,
D3DMULTISAMPLE_12_SAMPLES = 12,
D3DMULTISAMPLE_13_SAMPLES = 13,
D3DMULTISAMPLE_14_SAMPLES = 14,
D3DMULTISAMPLE_15_SAMPLES = 15,
D3DMULTISAMPLE_16_SAMPLES = 16,
D3DMULTISAMPLE_FORCE_DWORD = 0xffffffff,
} D3DMULTISAMPLE_TYPE, *LPD3DMULTISAMPLE_TYPE;
定数
- D3DMULTISAMPLE_NONE
いずれのレベルのフルシーン マルチサンプリングも利用できません。 - D3DMULTISAMPLE_NONMASKABLE
マルチサンプル品質値が有効になります。「解説」を参照してください。 - D3DMULTISAMPLE_2_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_3_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_4_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_5_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_6_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_7_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_8_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_9__SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_10_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_11_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_12_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_13_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_14_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_15_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_16_SAMPLES
利用できるフルシーン マルチサンプリングのレベルです。 - D3DMULTISAMPLE_FORCE_DWORD
コンパイル時に、この列挙型のサイズを 32 ビットにするために定義されています。この値を指定しない場合、一部のコンパイラでは列挙型を 32 ビット以外のサイズでコンパイル可能です。この定数が使用されることはありません。
解説
IDirect3DDevice9::Reset 時にフルシーン マルチサンプリングを有効にすることに加えて、さまざまな機能をきめ細かいレベルでオンおよびオフにするレンダリング ステートがあります。
マルチサンプリングは、D3DSWAPEFFECT_DISCARD スワップ エフェクトを指定して作成またはリセットされているスワップ チェーンでのみ有効です。
マルチサンプル アンチエイリアシングの値は、次のメソッドのパラメーター (またはサブパラメーター) を使って設定できます。
メソッド | パラメーター | サブパラメーター |
---|---|---|
IDirect3D9::CheckDeviceMultiSampleType | MultiSampleType と pQualityLevels | |
IDirect3D9::CreateDevice | pPresentationParameters | MultiSampleType と pQualityLevels |
IDirect3DDevice9::CreateAdditionalSwapChain | pPresentationParameters | MultiSampleType と pQualityLevels |
IDirect3DDevice9::CreateDepthStencilSurface | MultiSampleType と pQualityLevels | |
IDirect3DDevice9::CreateRenderTarget | MultiSampleType と pQualityLevels | |
IDirect3DDevice9::Reset | pPresentationParameters | MultiSampleType と pQualityLevels |
マルチサンプリングのタイプを別のタイプに切り替えて、アンチエイリアシングの品質を上げるのは良い方法ではありません。
D3DMULTISAMPLE_NONE を使用すると、破棄、ロックなど以外のスワップ エフェクトが有効になります。
マスク可能なマルチサンプリング (マルチサンプル レンダリングターゲット フォーマットに対するサンプルが 2 個以上とアンチエイリアシングをサポート) とマスクできないマルチサンプリング (アンチエイリアシングのみをサポート) のみのいずれを表示デバイスがサポートしていても、デバイスのドライバーは D3DMULTISAMPLE_NONMASKABLE マルチサンプル タイプの品質レベル数を提供します。アンチエイリアシングの目的でのみマルチサンプリングを使用するアプリケーションは、ドライバーによってサポートされているマスクできないマルチサンプル品質レベルの数をクエリする必要がありません。
デバイスがサポートする品質レベルは、IDirect3D9::CheckDeviceMultiSampleType の pQualityLevels パラメーターを使って取得できます。アプリケーションで使用する品質レベルは、IDirect3DDevice9::CreateDepthStencilSurface および IDirect3DDevice9::CreateRenderTarget の MultiSampleQuality パラメーターを使って設定します。
マスク可能なマルチサンプリングについては、「D3DRS_MULTISAMPLEMASK」を参照してください。
要件
ヘッダー: D3D9Types.h 宣言