PDA

View Full Version : Multisampling



10-13-2004, 08:41 AM
My video card (Ge Force 2 MX 400 ) doesn't support OpenGL ARB_Multisampling extension, so I can't make my application to enable multisampling. But I can enable fullscreen antialiasing in driver settings. How can I turn it on from my program when driver setting is "controlled by application"?

kehziah
10-13-2004, 10:05 AM
The FSAA option in the driver settings is super sampling. IIRC, there is no API call to enable that.

gdewan
10-13-2004, 10:46 AM
You pretty much need WGL_ARB_multisample (which in turns needs WGL_ARB_extensions_string and WGL_ARB_pixel_format) to do this. You will need to use WGL_ARB_extensions_string to check for the existance of WGL_ARB_multisample.

10-13-2004, 08:58 PM
So, if I can't turn supersampling, why I can use multisampling in directx and cannot use it in openGl on the same video card?

kehziah
10-15-2004, 07:10 AM
The GeForce 2 family does NOT support multisampling. All it has is supersampling. Remember GeForce 2 GTS was introduced in 2000. It was the very begining of full scene anti-aliasing (FSAA), and it was implemented by supersampling on NVIDIA chips (see this blurb @ tomshardware (http://graphics.tomshardware.com/graphic/20000427/geforce2-09.html) ). GeForce 2 MX 400 was introduced roughly 1 year later for the lower-end market.

And there is no way to enable/disable that in OpenGL (API-wise). You have to use the display settings.

arekkusu
10-15-2004, 11:20 AM
Of course this is OS-specific. I have no problem programatically enabling FSAA on GF2MX under Mac OS X. I just ask for a sample buffer with 2 or 4 samples when creating the pixel format; it gives me supersampling.

kehziah
10-15-2004, 02:56 PM
I stand corrected. With the promotion of ARB_multisample to the core in version 1.3, it is possible to use that even if it is not advertised in the extension string (provided that your driver implements version 1.3 or later of course).

That kind of breaks the rule of thumb that if it's not in the ext string, it's not HW-supported; that must be the reason why it is only a rule of thumb :rolleyes:
It pretty much looks like a hack to me (from an API standpoint), which is somewhat confirmed by the wording of the spec :
appendix F : Version 1.3, paragraph F.3 Multisample
Multisampling was promoted from the GL_ARB_multisample extension; The definition of the extension was changed slightly to support both multisampling and supersampling implementations.Here the word multisampling is used to name the feature and an implementation of it.

vincoof
10-16-2004, 02:31 PM
The specification allows implentations to expose multisample with 1 sample. So, it's possible to support eg OpenGL1.5 while not really providing multisample support.