wpf windows-xp 3d antialiasing viewport3d

wpf - ¿Existe un truco secreto para forzar el antialiasing dentro de Viewport3D en Windows XP?



windows-xp (3)

En Windows XP, el contenido verdadero WPF 3D (que generalmente se muestra con el control Viewport3D) se ve extremadamente feo porque no está antialiasado por defecto, ya que el resto de los gráficos WPF sí lo están. Especialmente a menor resolución, la experiencia es tan mala que no se puede usar en el código de producción.

Pude forzar el antialiasing en algunas tarjetas gráficas de Nvidia usando la configuración del controlador. Desafortunadamente, esto a veces produce artefactos feos y solo funciona con tarjetas específicas y versiones de controladores. La palabra oficial de Microsoft al respecto es que el 3D antialiased generalmente no es compatible con Windows XP y el artefacto que veo es el resultado del hecho de que WPF ya hace su propio antialiasing (en XP solo para 2D).

Así que me preguntaba si tal vez haya algún otro truco secreto que me permita forzar el antialiasing en contenido WPF 3D bajo Windows XP.


¿Has probado esto (de tu hilo en los foros de MSDN)?

Bueno, parece que la referencia en el enlace de MSDN anterior especifica incorrectamente la clave raíz del registro afectada. En MSDN, se especifica como HKEY_CURRENT_USER, mientras que la clave raíz correcta debe ser HKEY_LOCAL_MACHINE. Intenté configurar HKEY_LOCAL_MACHINE / Software / Microsoft / Avalon.Graphics / MaxMultiplesampleType a ''4'' y puedo obtener un antialiasing para mi aplicación WPF en XP.


¿Tu tarjeta de video es compatible con Shader 2.0? Puede consultar esta página wiki para ver si lo hace ...


La sensación que recibo de Matthew MacDonald''s Pro WPF Windows Presentation Foundation en .NET 3.0 es que no es posible:

Hay una excepción al soporte de software de WPF. Debido a la poca compatibilidad con el controlador, WPF solo realiza un antialiasing para dibujos tridimensionales si está ejecutando su aplicación en Windows Vista (y tiene un controlador nativo de Windows Vista para su tarjeta de video).

Nunca he visto nada que sugiera que pueda habilitar AA en WPF 3D en cualquier cosa que no sea Vista, pero si hay una manera es nuevo para mí y ¡también me gustaría saberlo!