Manager.CheckDeviceMultiSampleType (Método)
Actualización: noviembre 2007
Determina si hay una técnica de muestreo múltiple disponible en el dispositivo actual.
Espacio de nombres: Microsoft.WindowsMobile.DirectX.Direct3D
Ensamblado: Microsoft.WindowsMobile.DirectX (en Microsoft.WindowsMobile.DirectX.dll)
Sintaxis
'Declaración
Public Shared Function CheckDeviceMultiSampleType ( _
adapter As Integer, _
deviceType As DeviceType, _
surfaceFormat As Format, _
windowed As Boolean, _
multiSampleType As MultiSampleType _
) As Boolean
'Uso
Dim adapter As Integer
Dim deviceType As DeviceType
Dim surfaceFormat As Format
Dim windowed As Boolean
Dim multiSampleType As MultiSampleType
Dim returnValue As Boolean
returnValue = Manager.CheckDeviceMultiSampleType(adapter, _
deviceType, surfaceFormat, windowed, _
multiSampleType)
public static bool CheckDeviceMultiSampleType(
int adapter,
DeviceType deviceType,
Format surfaceFormat,
bool windowed,
MultiSampleType multiSampleType
)
public:
static bool CheckDeviceMultiSampleType(
int adapter,
DeviceType deviceType,
Format surfaceFormat,
bool windowed,
MultiSampleType multiSampleType
)
public static function CheckDeviceMultiSampleType(
adapter : int,
deviceType : DeviceType,
surfaceFormat : Format,
windowed : boolean,
multiSampleType : MultiSampleType
) : boolean
Parámetros
- adapter
Tipo: System.Int32
Número ordinal que denota el adaptador de pantalla que se va a consultar. AdapterListCollection.Default siempre es el adaptador de pantalla principal.
- deviceType
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.DeviceType
Miembro de la enumeración DeviceType que identifica el tipo de dispositivo.
- surfaceFormat
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.Format
Miembro de la enumeración Format que identifica la superficie para la que se va a realizar el muestreo múltiple.
- windowed
Tipo: System.Boolean
Se establece en true para realizar consultas sobre el muestreo múltiple en ventana. Se establece en false para realizar consultas sobre el muestreo múltiple en pantalla completa.
- multiSampleType
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.MultiSampleType
Miembro de la enumeración MultiSampleType que identifica la técnica de muestreo múltiple que se va a comprobar.
Valor devuelto
Tipo: System.Boolean
true si el método se realiza correctamente; en caso contrario, false.
Comentarios
Este método está pensado para ser utilizado con superficies de destino de representación y de estarcido de profundidad porque se deben crear como con muestreo múltiple para poderse usar en conjunto.
Ejemplos
En el ejemplo de código siguiente se muestra cómo comprobar la compatibilidad de un método de muestreo múltiple concreto.
Public Sub CheckDeviceMultiSampleType()
' Test some formats
IsDeviceMultiSampleOK(DepthFormat.D16, Format.A8R8G8B8, MultiSampleType.TwoSamples)
If result <> Fix(ResultCode.Success) Then
System.Windows.Forms.MessageBox.Show(String.Format("The multisample options are invalid: {0}", result))
End If
End Sub 'CheckDeviceMultiSampleType
Public Function IsDeviceMultiSampleOK(ByVal depthFmt As DepthFormat, ByVal backbufferFmt As Format, ByVal multisampleType As MultiSampleType) As Boolean
Dim ai As AdapterInformation = Microsoft.WindowsMobile.DirectX.Direct3D.Manager.Adapters.Default
Dim qualityLevels As Integer = 0
' Verify that the render target surface supports the given multisample type
If Microsoft.WindowsMobile.DirectX.Direct3D.Manager.CheckDeviceMultiSampleType(ai.Adapter, DeviceType.Default, backbufferFmt, False, multisampleType) Then
' Verify that the depth stencil surface supports the given multisample type
If Microsoft.WindowsMobile.DirectX.Direct3D.Manager.CheckDeviceMultiSampleType(ai.Adapter, DeviceType.Default, CType(depthFmt, Format), False, multisampleType) Then
Return True ' if both calls succeed
End If
End If
Return False
' if either call fails. NOTE: HRESULT passed back in result
End Function
public void CheckDeviceMultiSampleType()
{
// Test some formats
IsDeviceMultiSampleOK(DepthFormat.D16, Format.A8R8G8B8, MultiSampleType.TwoSamples);
if (result != (int)ResultCode.Success)
System.Windows.Forms.MessageBox.Show(String.Format("The multisample options are invalid: {0}", result));
}
public bool IsDeviceMultiSampleOK(DepthFormat depthFmt, Format backbufferFmt, MultiSampleType multisampleType)
{
AdapterInformation ai = Microsoft.WindowsMobile.DirectX.Direct3D.Manager.Adapters.Default;
int qualityLevels = 0;
// Verify that the render target surface supports the given multisample type
if (Microsoft.WindowsMobile.DirectX.Direct3D.Manager.CheckDeviceMultiSampleType(ai.Adapter, DeviceType.Default, backbufferFmt, false, multisampleType))
{
// Verify that the depth stencil surface supports the given multisample type
if (Microsoft.WindowsMobile.DirectX.Direct3D.Manager.CheckDeviceMultiSampleType(ai.Adapter, DeviceType.Default, (Format)depthFmt, false, multisampleType))
{
return true; // if both calls succeed
}
}
return false; // if either call fails. NOTE: HRESULT passed back in result
}
Permisos
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Plataformas
Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión
.NET Compact Framework
Compatible con: 3.5, 2.0
Vea también
Referencia
Microsoft.WindowsMobile.DirectX.Direct3D (Espacio de nombres)