On Thu, Mar 23, 2017 at 2:45 PM, Lyude Paul <[email protected]> wrote: > On Thu, 2017-03-23 at 14:22 -0400, Alex Deucher wrote: >> On Thu, Mar 23, 2017 at 2:18 PM, Marek Olšák <[email protected]> >> wrote: >> > Is there any user of this extension? >> >> Based on the spec, it seems like it would be useful for glamor. No >> idea is anyone has code to use it yet. > Actually me, robclark and airlied were talking specifically about using > this for glamor and trying to implement it on other platforms using > rectangular primitives. No idea if that'll work (especially since I'm > new here), but it sounds promising enough to try :). > > Once I get this patch series upstream I'll probably look into writing > an implementation for softpipe and some other drivers
Seems like there are a bunch of ways of achieving the same thing, namely a rectangle being drawn: - new rectangle primitive - NV_fill_rectangle - EXT_window_rectangles or scissors + overdrawn triangle The latter only works for a single rectangle, but I doubt it's too useful to have multiple ones drawn anyways. I've already implemented EXT_window_rectangles on nouveau, and my understanding is that it should be easy on SI+. This support goes back to nv50, and with minor modifications to the ext, could go as far back as nv30, if not earlier. (As-is it requires something semi-silly which prevents implementation there.) NV_fill_rectangle functionality is only available on GM200+, which are quite recent GPUs (GTX 950+). I'm not aware of a way to do rectangle primitives on NVIDIA GPUs (i.e. specifying them as 3 points) without NV_fill_rectangle functionality. All NVIDIA GPUs do support QUADS, but I'm not sure if they're rasterized in one go or two. None of this is for or against any particular approach, merely providing some information. Cheers, -ilia _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
