[Mesa-dev] [PATCH] GLX: Add an env var to enable the support of GLX extensions needing both client and server support, in case of client support and direct rendering.
ppaalanen at gmail.com
Wed Jun 18 23:35:40 PDT 2014
On Wed, 18 Jun 2014 22:55:16 -0700
Kenneth Graunke <kenneth at whitecape.org> wrote:
> On Wednesday, June 18, 2014 11:32:45 PM Axel Davy wrote:
> > In the case of XWayland, there's no accelerated indirect rendering.
> > For example GLX_ARB_create_context is not advertised by the server,
> > and according to the spec, we are not allowed to advertise it
> > to the application because of that.
> > This env var makes Mesa ignore this restriction, and
> > a GLX extension is advertised whenever the client supports it.
> > Signed-off-by: Axel Davy <axel.davy at ens.fr>
> > ---
> > src/glx/glxextensions.c | 9 ++++++++-
> > 1 file changed, 8 insertions(+), 1 deletion(-)
> In this specific case, I think it might make sense to just advertise the
> extension and return a GLX error if asked for indirect rendering. Or, just
> lie and return a direct rendering context.
> That would make the common case that most people want (GLX_ARB_create_context
> for direct rendered 3.2+ core profile stuff) work out of the box, without the
> need for environment variables. It's technically out of spec, but for X on
> Wayland, I think it's not unreasonable.
> On the other hand, supporting AIGLX of sorts might be possible...
> With XWayland, there are really a couple layers to "indirect" rendering...
> 1. Doing it X client side (direct rendering)
> 2. Doing it in the XWayland X11 server/Wayland client (semi-indirect).
> 3. Doing it wherever Weston/etc are running (total indirect).
> It seems like XWayland could support AIGLX with model #2 - X clients would
> speak GLX protocol to XWayland, which could then do the GL. Model #3 seems
> like something we should avoid at all costs.
Not only avoid, but model #3 is practically impossible (well,
not sensible) anyway. There is no rendering protocol in Wayland, you'd
have to invent that first, and then it would probably just get rejected.
IMO we can just keep talking about direct (model #1) and indirect
(model #2) rendering as usual. To me those are basically GLX concepts
and have nothing to do with Wayland.
More information about the mesa-dev