Nvidia in this article presented a way to upsample low res buffer to full res buffer called Nearest Depth Upsampling.
This works by comparing four depth values from downsampled low res depth buffer with current value of full res depth buffer and selecting texcoords where difference is minimal to sample the low res buffer.
In the article they stated the four places to sample as "bilinear footprint of the current full res pixel".
In the picture, the circle marks the texcoord of one of the fragments of full res buffer. So if full res is 4x4 then low res is 2x2.
Unfortunaltely it is not clear to me how to sample the low res buffer correctly. My question are:
- What are locations of the four samples used to sample low res buffer in relation to current texcoords of full res buffer?
- Is downsampling depth using just hardware interpolation is enough?
- Can I upsample not only half res buffer but also quarter res buffer to full res?