• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Checkboard rendering question (how many pixels are actually being rendered)?

Lister

Banned
So here's my poor man's understanding of checkboard rendering:

You set a target resolution for a particular set of frames. Let's say 4K (3840x2160 16:9) @ 8 Megapixels.

You break down this frame into 4x4 pixel sections in a "checkboard" pattern:

lnYHDdx.png
(this is a 2x2 pattern though, but you get my meaning).

Each frame you only render either the red or green pixels, and use data from the previous frame, the current frame and geometry (because that IS rendering at full 4K - right?) to interpolate data into the rest of the pixels.

Boom, you cut your per pixel GPU overhead by about half, more or less. And you are technically rendering a 4 megapixel image instead of an 8 megapixel one (even though things like geometry and probably some buffers are operating at 4K).

That's like rendering a resolution somewhere between 2560x1440 (1440p 16:9) @ 3.6 Megapixels and my own 3440x1440p (1440p 21:9) @ 5 Megapixels.

Am I correct in my current understanding?

Now this is what I'm not clear on:

When someone like Digital Foundry says this or that game on the PS4 PRO is being rendered at 1800p, does that mean the number of pixels being rendered is equivalent to 3840x1800? In otherword,s the pattern being used to render at 4K = this number of pixels being rendered (7 Megapixels), OR is it that the target frame size is 3840x1800, but the console checkerboards to get there (essentially rendering a 3.4 megapixel image or less than 1440p 16:9) and then it upscales it the rest of the way up to the full 4K using traditional upscale methods?

Could someone clear that up for me?

Also, why doesn't the base PS4 use checkerboarding to target a frame of say 1440p or even 1080p? The per pixel/shader overhead would again be cut by a lot, making performance at least a lot better (assumign no CPU bottleneck).
 

mrklaw

MrArseFace
Good question. I wonder if '1800p' is proportionate horizontally too? So it'd be more like 3200x1800

Also I think it's still calculating the other pixels - it just is calculating them in a more lightweight manner from previous frames
 

riflen

Member
...
Also, why doesn't the base PS4 use checkerboarding to target a frame of say 1440p or even 1080p? The per pixel/shader overhead would again be cut by a lot, making performance at least a lot better (assumign no CPU bottleneck).

Someone more knowledgeable will have to answer your main questions, but I know that the PS4 lacks hardware for the ID buffer. This buffer is needed to keep track of objects in the frame and facilitates the checkerboard rendering techniques.

Digital Foundry said:
It's all hardware based, written at the same time as the Z buffer, with no pixel shader invocation required and it operates at the same resolution as the Z buffer. For the first time, objects and their coordinates in world-space can be tracked, even individual triangles can be identified. Modern GPUs don't have this access to the triangle count without a huge impact on performance.

"As a result of the ID buffer, you can now know where the edges of objects and triangles are and track them from frame to frame, because you can use the same ID from frame to frame," Cerny explains. "So it's a new tool to the developer toolbox that's pretty transformative in terms of the techniques it enables. And I'm going to explain two different techniques that use the buffer - one simpler that's geometry rendering and one more complex, the checkerboard."
 

Lister

Banned
Someone more knowledgeable will have to answer your main questions, but I know that the PS4 lacks hardware for the ID buffer. This buffer is needed to keep track of objects in the frame and facilitates the checkerboard rendering techniques.

Oooohh, where is that quote from? Would love to read the article.
 
Would 3200x1800 checkerboard not be built from two lower res images. If 2160p is 2x1080p constructed to 2160p then 3200x1800 checkerboard is made of 2x 1600x900 and constructed to 3200x1800.
 
Top Bottom