I guess you need this because your driver doesn't support LUMINANCE and st/mesa selects RGBA, right? In that case, you can just set RGBX in pipe_surface::format and you don't need another flag.
It would be better to select RGBX at renderbuffer creation, but doing it later is fine as well. Marek On Fri, Jun 24, 2016 at 4:43 PM, Brian Paul <bri...@vmware.com> wrote: > This indicates the alpha channel of the surface should always be one. > Drivers can use this to adjust blending terms when needed. > > v2: also check for R, RG, LUMINANCE surfaces, per Ilia > --- > src/mesa/state_tracker/st_cb_fbo.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/src/mesa/state_tracker/st_cb_fbo.c > b/src/mesa/state_tracker/st_cb_fbo.c > index 9801b1f..843ff83 100644 > --- a/src/mesa/state_tracker/st_cb_fbo.c > +++ b/src/mesa/state_tracker/st_cb_fbo.c > @@ -216,6 +216,11 @@ st_renderbuffer_alloc_storage(struct gl_context * ctx, > return FALSE; > > u_surface_default_template(&surf_tmpl, strb->texture); > + surf_tmpl.alpha_one = (strb->Base._BaseFormat == GL_RGB || > + strb->Base._BaseFormat == GL_RG || > + strb->Base._BaseFormat == GL_R || > + strb->Base._BaseFormat == GL_LUMINANCE); > + > strb->surface = pipe->create_surface(pipe, > strb->texture, > &surf_tmpl); > @@ -463,6 +468,10 @@ st_update_renderbuffer_surface(struct st_context *st, > /* create a new pipe_surface */ > struct pipe_surface surf_tmpl; > memset(&surf_tmpl, 0, sizeof(surf_tmpl)); > + surf_tmpl.alpha_one = (strb->Base._BaseFormat == GL_RGB || > + strb->Base._BaseFormat == GL_RG || > + strb->Base._BaseFormat == GL_R || > + strb->Base._BaseFormat == GL_LUMINANCE); > surf_tmpl.format = format; > surf_tmpl.u.tex.level = level; > surf_tmpl.u.tex.first_layer = first_layer; > -- > 1.9.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev