DirectX 10.1

tabs

Veteran
Supporter
What is meant by this 'mandatory 4xAA' that is flooding the web at the moment?

As I understand it, graphics cards that meet DX10.1 spec must have support for 4xAA with 2 specific sample patterns. Not that all DX10.1 games will have to have 4xAA applied to them.

Many seem to think that you will be forced to use 4xAA if you have these cards even if you don't want to, but I don't agree.

Am I right?
 
its not manditory x4 AA its 4 samples per cycle, so that there will be very little performance hit when doing x4 AA ;)
 
Last edited by a moderator:
As far as I'm aware it is a mandatory feature - if you want to enable 4x MSAA you just do it and it just works. No asking for permission first.

That doesn't mean every application will always and automagically start using 4x MSAA for everything. If a developer doesn't want it then they don't have to enable it...

hth
Jack
 
What is meant by this 'mandatory 4xAA' that is flooding the web at the moment?

As I understand it, graphics cards that meet DX10.1 spec must have support for 4xAA with 2 specific sample patterns. Not that all DX10.1 games will have to have 4xAA applied to them.

Many seem to think that you will be forced to use 4xAA if you have these cards even if you don't want to, but I don't agree.

Am I right?
Yes, definitely. Just to add to what Jack already said, there are some situations where you don't want to have MSAA on at all while rendering, so there's no sense in it ever being forced.

The spec just means the hardware must support it as a minimum to comply.
 
So on the software side, does that mean the AA must work too? I'm thinking future deferred renderer solutions. Or is that just something that automagically works if the app is written with DX10.1 in mind?
 
So on the software side, does that mean the AA must work too? I'm thinking future deferred renderer solutions. Or is that just something that automagically works if the app is written with DX10.1 in mind?

No this rule force enforce only that D3D 10.1 hardware must support 4x AA. There is no rule that say that Direct3D 10.1 software has to offer AA at all.
 
So on the software side, does that mean the AA must work too? I'm thinking future deferred renderer solutions. Or is that just something that automagically works if the app is written with DX10.1 in mind?

DX10 already allows MSAA with deferred renderers doesn't it? Or is that just for specific implementations?
 
DX10 already allows MSAA with deferred renderers doesn't it?

Yes. DX10.1 improves on it by allowing you to also sample an MSAA depth buffer. One thing that would improve things further (which I'm not sure if it's up for discussion for DX11 or not) would be to be able to query unique samples instead of each sample separately. That would speed up deferred rendering with MSAA.
 
The depth is needed for many techniques. Even for simple things like fog you way want to use the depth, but things like depth-of-field and various post-process stuff you need depth. In DX10 you can't read an MSAA depth buffer in the pixel shader, thus if you use multisampling all those effects would not be possible. With DX10.1 you can.
 
The depth is needed for many techniques. Even for simple things like fog you way want to use the depth, but things like depth-of-field and various post-process stuff you need depth. In DX10 you can't read an MSAA depth buffer in the pixel shader, thus if you use multisampling all those effects would not be possible. With DX10.1 you can.

Ah, I see. So this is not about being able to read the depth of individual samples of a pixel, but about being able to read the depth of a pixel. ;) I didn't know that currently wasn't possible for MSAA.

Thanks!
 
Could you give some example(s) where this kind of feature can be useful? Would this be used for higher precision shadows?
It's necessary for deferred shading, because you have to do the final color calculations on each sample before you downsample. So the full-screen pass after rendering the informations to do the shading needs to access individual subsamples. That's now possible with D3D10.
 
its not manditory x4 AA its 4 samples per cycle, so that there will be very little performance hit when doing x4 AA ;)
That is implementation specific behaviour. I don't think the D3D specification does say something about such things.
 
Yes. DX10.1 improves on it by allowing you to also sample an MSAA depth buffer. One thing that would improve things further (which I'm not sure if it's up for discussion for DX11 or not) would be to be able to query unique samples instead of each sample separately. That would speed up deferred rendering with MSAA.
Man you answered several questions that I've been wondering about in one simple post... awesome :D Thanks for the info!
 
Last edited by a moderator:
Back
Top