Multisampling

Status

Approved by ARB on 12/8/1999.

Come on intel, you are kicking my ass ! It’s not the 90’s anymore.

/end rant

Their hardware just isn’t powerful enough. This is actually one feature that only relatively recently got support from their D3D driver (which is normally a generation or two ahead of their GL driver).

Pathetic, I know…

Dukey, if the driver says GL_VERSION>=1.3, then multisampling must be there, regardless if ARB_multisample is in the extension string or not.

But there’s something I just stumbled across just recently. Their drivers say GL2.1 and don’t expose ARB_multisample. That’s ok and fair game.
BUT: WGL_ARB_multisample is missing in the WGL extension string! Which basically means, you are in theory not allowed to create a multisampled framebuffer.

Similar, these drivers supported EXT_framebuffer_object, EXT_framebuffer_blit and ARB_framebuffer_object (which includes multisample support for FBOs), but not EXT_framebuffer_multisample… very odd.

Their hardware just isn’t powerful enough. This is actually one feature that only relatively recently got support from their D3D driver

If their hardware wasn’t powerful enough to do multisampling, then they wouldn’t have been able to add it to their D3D driver.

Similar, these drivers supported EXT_framebuffer_object, EXT_framebuffer_blit and ARB_framebuffer (which includes multisample support fro FBOs) object, but not EXT_framebuffer_multisample… very odd.

That makes sense if you investigate the extensions.

EXT_framebuffer_multisample requires that MAX_SAMPLES_EXT be at least 1. ARB_framebuffer_object allows implementations to have a MAX_SAMPLES value of 0. In essence, you can implement ARB_fbo without actually supporting multisampling. In a similar fashion to how you can “implement” GL 2.1, but render it useless by not implementing ARB_multisample.

Off-topic:

I am impressed Alfonse Reinheart. Each time I read your answers you have such a wide knowledge (not only opengl, but ISO/C++ too, and certainly many others). How do you do this ?

Friendly :slight_smile:

Rubbish. They can easily add it, but it doesn’t mean that it has to run well. I suspect that the only reason they added it is because D3D10 requires it to be supported.

Rubbish. They can easily add it, but it doesn’t mean that it has to run well. I suspect that the only reason they added it is because D3D10 requires it to be supported.

So does OpenGL 3.3, which requires MAX_SAMPLES to be at minimum 4.

Furthermore, just because it doesn’t run well if you use it doesn’t mean they should avoid supporting it. In the early days of multisampling, one was generally advised to avoid it, since it took up too much processing time. Nowadays, the typical default case is at least 2x if not more, even for low-end hardware.

Lastly, NVIDIA and ATI have been making quality embedded hardware for years now. They never had a problem with making it do multisampling, even in the older days.