Probably makes sense. Albeit I'm not sure about the L/A/LA/I stuff, probably apps are aware that trying to render to that may fail (and hence potentially choosing some rgb format instead of a single-channel format is really not desirable for those).
Roland Am 29.09.2015 um 19:50 schrieb Brian Paul: > I was actually thinking of expanding this change to cover _all_ color > formats but wanted to take a small step first. What do you think? > > -Brian > > On 09/29/2015 11:46 AM, Roland Scheidegger wrote: >> If that was due to some rgb vs. rgbx thing (that is, could texture from >> rgb but only render to rgbx) I wonder if the same logic shouldn't also >> apply to the integer formats. >> But either way (I guess the app should check fbo completeness in any >> case so strictly speaking for correctness this isn't really required) >> >> Reviewed-by: Roland Scheidegger <srol...@vmware.com> >> >> Am 29.09.2015 um 17:39 schrieb Brian Paul: >>> For 8-bit RGB(A) texture formats we set the PIPE_BIND_RENDER_TARGET flag >>> to try to get a hardware format which also supports rendering (for FBO >>> textures). Do the same thing for floating point formats. >>> >>> This allows the Redway Flat demo to run. >>> --- >>> src/mesa/state_tracker/st_format.c | 6 +++++- >>> 1 file changed, 5 insertions(+), 1 deletion(-) >>> >>> diff --git a/src/mesa/state_tracker/st_format.c >>> b/src/mesa/state_tracker/st_format.c >>> index 0c94428..144b7d6 100644 >>> --- a/src/mesa/state_tracker/st_format.c >>> +++ b/src/mesa/state_tracker/st_format.c >>> @@ -1963,7 +1963,11 @@ st_ChooseTextureFormat(struct gl_context *ctx, >>> GLenum target, >>> else if (internalFormat == 3 || internalFormat == 4 || >>> internalFormat == GL_RGB || internalFormat == GL_RGBA || >>> internalFormat == GL_RGB8 || internalFormat == GL_RGBA8 || >>> - internalFormat == GL_BGRA) >>> + internalFormat == GL_BGRA || >>> + internalFormat == GL_RGB16F || >>> + internalFormat == GL_RGBA16F || >>> + internalFormat == GL_RGB32F || >>> + internalFormat == GL_RGBA32F) >>> bindings |= PIPE_BIND_RENDER_TARGET; >>> >>> /* GLES allows the driver to choose any format which matches >>> >> > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev