Am 2015-09-10 04:00, schrieb Anuj Phogat:
On Wed, Sep 9, 2015 at 6:19 PM, Ian Romanick <i...@freedesktop.org> wrote:
On 09/09/2015 04:55 PM, Anuj Phogat wrote:
On Wed, Sep 9, 2015 at 11:30 AM, Ian Romanick <i...@freedesktop.org>
wrote:
I'm pretty sure our implementation of this extension is complete
rubbish.  I have attached an image from the blit-scaled test.  This
result cannot be useful to anyone.

Paul Berry and I agreed to follow the "NVIDIA Implementation Details"
given in the extension spec. i965 driver currently use bilinear filtering
for both SCALED_RESOLVE_FASTEST and SCALED_RESOLVE_NICEST.
Do you think the implementation doesn't match what is suggested in
the spec? I'll be happy to work on improving the implementation if you
have any specific comments.

Extension spec mentions the potential loss of quality when using a
single pass scaled resolve blit. Also the quality of image generated
depends on sample count and scaling factor. I vaguely remember
Paul mentioned the scaling factor of ~1.5, beyond which single pass
scaled resolve blit quickly becomes useless. I think the attached
image is using a scaling factor of 2.4.

Yes, I think so.  It was the last image produced by the test.

I'm attaching an old image generated by me doing the quality
comparison with Nvidia's proprietary driver implementation. I posted
the image on mesa-dev before enabling the extension on i965. Please
see the images under "New implementation" for the comparison.

Comparing our images with NVIDIA's image, I don't see very much
difference.  That's both reassuring and depressing.  Looking at all of
those images, I can't imagine why anyone would bother using this
functionality.  I doubt there's any scenario where the little "spikes"
that grow of the sides of the triangles is acceptable.  Oh well.

Markus Wick (IRC name: degasus) shared these dolphin emulator
images (rendered using i965 drivers) with me on dri-devel. They show
the effect of using the extension over resolve and liner scaling. I think
most of the images look crisper with little loss of smooth edges.
https://www.dropbox.com/sh/vmt7tolzd6qlnpo/AABlGkXZ4W6_ucFk0Gk3tfNpa?dl=0

But my conclusion was similiar. Bilinear filtering is pretty useless for downscaling. But I see a big usecase in upscaling on mobile devices with very high DPI. So the shading can be done at a lower resolution, but the framebuffer resolution matches the display.

For dolphin, we don't use glBlitFramebuffer for scaling any more, so testing this stuff is harder now.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to