Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I wonder what is less expensive resource-wise:

  • Drawing a usual modern 3D game scene with some geometry at 100% scale, with some AA;
  • Drawing a downscaled scene (to fit the screen, but originally a few times bigger) without AA?

I haven't had the opportunity to try that myself, since I almost exclusively work with 2D games.

The idea is maybe it could result in better picture at less processing cost if there was just a huge output resolution and no anti-aliasing at all. If it isn't the case, please explain why.

share|improve this question
add comment

1 Answer

up vote 10 down vote accepted

The second option - drawing at a higher resolution than the target and downsampling to the target resolution - is known as supersampling and is considered a form of AA; if you read about this topic you'll see it referred to as SSAA.

It will almost certainly be slower than turning on other AA techniques built into modern games, such as MSAA (multisampled antialiasing, which is usually what people mean when they just say "AA" without any other qualifiers) or postprocessing effects like FXAA or MLAA. All these techniques were developed precisely to provide a faster alternative to SSAA.

For example, if you're doing 4xSSAA (let's say), you're drawing an image twice the width and height of the final image, so that you have 4 samples per pixel of the final image. Then, whenever you run a pixel shader on some object, you're running it 4 times for each final image pixel touched by that object. In contrast, with 4xMSAA you'll only run the pixel shader once for each final image pixel touched, and replicate that result to all 4 samples. This allows you to greatly reduce the amount of shader work while still getting the effects of antialiasing along geometry edges, which is where it matters most. This is typically much faster than SSAA. Modern GPUs also have compression schemes to reduce the memory bandwidth used for MSAA, which helps performance further.

And if you turn on a postprocessing AA method it'll be even faster (although the results aren't quite as good), as it is simply rendering the frame normally, at the target resolution, then going over it afterward with a shader that detects and repairs jaggies.

So, you can expect that the AA methods available in typical games these days are far faster than simply rendering at a higher resolution and downsampling.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.