Rendering only critical elements (edges) at native resolution and everything else at half/quarter

Randomoneh

Newcomer
So if MSAA 4x is sampling critical portions of the image with 4 samples and everything else with 1, why can't we render critical portions at 1 sample and everything else at 0.25 (1 sample per 4 pixels)?

Is there a technique that does that on PC? Maybe checkerboard rendering renders edges at full resolution?

Edit: is Nvidia doing something similar with Variable Rate Shading? (figure 9.) https://devblogs.nvidia.com/turing-variable-rate-shading-vrworks/
 
Last edited by a moderator:
Precisely. It's also a DirectX feature not limited to nVidia hardware in future.
https://www.tomshardware.co.uk/microsoft-variable-rate-shading-directx-12,news-60168.html


When comparing

1080p 4X MSAA
vs.
2160p no AA,

framerate increase is x.

Do you believe 2160p with variable rate shading implemented, when compared to 2160p raw, will see a framerate increase similar to x? Hypothetically, it should be close if done right, right? Just an educated guess on your side, if you will?
 
Microsoft's reports are a 14% increase in framerate. I should link to the original rather than a news report of it. Laziness on my part!

https://devblogs.microsoft.com/directx/variable-rate-shading-a-scalpel-in-a-world-of-sledgehammers/
For the same scene, Firaxis saw a 14% increase in FPS with their screenspace image implementation.

That's only one game, and TBH it's one that's fairly ideal when you look at the example, with all that blue sea able to be rendered lower quality.

Note that 1080p 4xMSAA to 2160p doesn't have anything like the quality of the 2160p native (either upscaled to a 2160p display, or downsampled fro 2160p to a 1080p display). You're only getting 4x samples on a small portion of the rendering process in 4xMSAA and it isn't 4 full colour samples. The best solutions to rendering lower resolution at equivalent quality to much higher resolution are reconstruction techniques. Checkboarding has been advanced considerably with pinnacle probably Insomniac's 'temporal injection' of which we don't know the details. Meanwhile, nVidia has managed to progress their dreadfully misnamed DLSS to get some pretty good results I believe. Not to mention games have used lower resolution buffers for aspects of their rendering for a long time now, so those 'resolution' figures aren't at all accurate.

There are clever solutions, but none trivial.
 
You're only getting 4x samples on a small portion of the rendering process in 4xMSAA
Great. That's what I'm after, only the very edges.
...and it isn't 4 full colour samples.
Hm, very interesting. I thought those were just regular samples. I'll have to read up on this as my understanding of rasterization is obviously pretty basic.
misnamed DLSS
Yeah, it muddies the water. I've seen people thinking native resolution + "DLSS" option is better than native resolution.
Not to mention games have used lower resolution buffers for aspects of their rendering for a long time now...
Also very interesting. Do you have any examples on top or your head?


There's also something called MSAA based coarse shading and an hour-long in depth video on DX variable rate shading that I'll have to watch.
 
Also very interesting. Do you have any examples on top or your head?
All of them! ;) Post effects involving blurs are frequently performed on a shrunk copy of the framebuffer at quarter res, if not lower (upscaling from lower resolutions is not nice with simple bilinear filtering though, and we'd benefit from hardware supporting better 2D upscaling hardware). Particle effects are also commonly lower resolutions as are screen-space reflections.
 
So if MSAA 4x is sampling critical portions of the image with 4 samples and everything else with 1, why can't we render critical portions at 1 sample and everything else at 0.25 (1 sample per 4 pixels)?

The downfall of MSAA was the specific implementation of deferred rendering the dominant engines picked, not shading rate.
 
The downfall of MSAA was the specific implementation of deferred rendering the dominant engines picked, not shading rate.

I'm not up to date with modern AA techniques but I guess my question is about any technique that would provide speedup by sampling specifically edges of the geometry at native resolution.
 
Or more particularly, sampling less frequency-sensitive parts of the image at lower resolutions to get a speed-up, as that's the part that does less work.

I suppose broadly speaking, you've a few areas of getting better performance and quality. You can render at native and antialias stepped-edges either with taking more samples (MSAA) or reconstructing info (MLAA and descendants). You can render the whole thing at lower resolution and reconstruct the native image (checkerboarding and better reconstruction). You can render parts of the scene in less detail (VRS).
 
To some extent the newly announced Radeon Image Sharpening sounds a little like this.

It detects edges and high contrast areas and does not sharpen thoes which would create haloing artifacts,.it then sharpens the rest / textures giving the effect of a higher resolution.

https://www.digitaltrends.com/computing/amd-radeon-image-sharpening-dlss-ray-tracing-e3-2019/

I think Sony had a process using the ID buffer to render geometry at 4k but the video buffer would be 1080. https://gamingbolt.com/ps4-pro-alte...ique-is-low-cost-could-be-implemented-in-days
 
To some extent the newly announced Radeon Image Sharpening sounds a little like this.

It detects edges and high contrast areas and does not sharpen thoes which would create haloing artifacts,.it then sharpens the rest / textures giving the effect of a higher resolution.

https://www.digitaltrends.com/computing/amd-radeon-image-sharpening-dlss-ray-tracing-e3-2019/

I think Sony had a process using the ID buffer to render geometry at 4k but the video buffer would be 1080. https://gamingbolt.com/ps4-pro-alte...ique-is-low-cost-could-be-implemented-in-days
Gravity Rush 2 is one of the games using the trick.

Bound used the old good MSAA trick.
It rendered into 1080p 8xMSAA buffer in which subsamples were positioned to match 4k with 2xMSAA pattern.
Very sharp image and as artstyle is mostly flat surfaces it looks quite good in most cases.

Intel has been researching coarse shading for a while and released demo and source on how to implement it with TAA.
 
Last edited:
Back
Top