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

Reply via email to