Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Defines the levels of full-scene multisampling that the device can apply.
Syntax
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;
Constants
-
D3DMULTISAMPLE_NONE
-
No level of full-scene multisampling is available.
-
D3DMULTISAMPLE_NONMASKABLE
-
Enables the multisample quality value. See Remarks.
-
D3DMULTISAMPLE_2_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_3_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_4_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_5_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_6_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_7_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_8_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_9_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_10_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_11_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_12_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_13_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_14_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_15_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_16_SAMPLES
-
Level of full-scene multisampling available.
-
D3DMULTISAMPLE_FORCE_DWORD
-
Forces this enumeration to compile to 32 bits in size. Without this value, some compilers would allow this enumeration to compile to a size other than 32 bits. This value is not used.
Remarks
In addition to enabling full-scene multisampling at IDirect3DDevice9::Reset time, there will be render states that turn various aspects on and off at fine-grained levels.
Multisampling is valid only on a swap chain that is being created or reset with the D3DSWAPEFFECT_DISCARD swap effect.
The multisample antialiasing value can be set with the parameters (or sub-parameters) in the following methods.
Method | Parameters | Sub-parameters |
---|---|---|
IDirect3D9::CheckDeviceMultiSampleType | MultiSampleType and pQualityLevels | |
IDirect3D9::CreateDevice | pPresentationParameters | MultiSampleType and pQualityLevels |
IDirect3DDevice9::CreateAdditionalSwapChain | pPresentationParameters | MultiSampleType and pQualityLevels |
IDirect3DDevice9::CreateDepthStencilSurface | MultiSampleType and pQualityLevels | |
IDirect3DDevice9::CreateRenderTarget | MultiSampleType and pQualityLevels | |
IDirect3DDevice9::Reset | pPresentationParameters | MultiSampleType and pQualityLevels |
It is not good practice to switch from one multisample type to another to raise the quality of the antialiasing.
D3DMULTISAMPLE_NONE enables swap effects other than discarding, locking, and so on.
Whether the display device supports maskable multisampling (more than one sample for a multiple-sample render-target format plus antialias support) or just non-maskable multisampling (only antialias support), the driver for the device provides the number of quality levels for the D3DMULTISAMPLE_NONMASKABLE multiple-sample type. Applications that just use multisampling for antialiasing purposes only need to query for the number of non-maskable multiple-sample quality levels that the driver supports.
The quality levels supported by the device can be obtained with the pQualityLevels parameter of IDirect3D9::CheckDeviceMultiSampleType. Quality levels used by the application are set with the MultiSampleQuality parameter of IDirect3DDevice9::CreateDepthStencilSurface and IDirect3DDevice9::CreateRenderTarget.
See D3DRS_MULTISAMPLEMASK for discussion of maskable multisampling.
Requirements
Requirement | Value |
---|---|
Header |
|
See also