From d83abf1d378be059b4f41a6a44a9bf24c7394084 Mon Sep 17 00:00:00 2001 From: Danylo Piliaiev Date: Fri, 27 Dec 2019 15:12:24 +0200 Subject: [PATCH] st/mesa: Handle the rest renderbuffer formats from OSMesa Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2189 Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/989 Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2036 CC: Signed-off-by: Danylo Piliaiev Reviewed-by: Eric Anholt Part-of: --- src/mesa/state_tracker/st_cb_fbo.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index d6174edd6bf..bff917c84f6 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -355,6 +355,7 @@ st_new_renderbuffer_fb(enum pipe_format format, unsigned samples, boolean sw) case PIPE_FORMAT_R8G8B8X8_UNORM: case PIPE_FORMAT_B8G8R8X8_UNORM: case PIPE_FORMAT_X8R8G8B8_UNORM: + case PIPE_FORMAT_R8G8B8_UNORM: strb->Base.InternalFormat = GL_RGB8; break; case PIPE_FORMAT_R8G8B8A8_SRGB: @@ -400,6 +401,9 @@ st_new_renderbuffer_fb(enum pipe_format format, unsigned samples, boolean sw) case PIPE_FORMAT_R16G16B16A16_UNORM: strb->Base.InternalFormat = GL_RGBA16; break; + case PIPE_FORMAT_R16G16B16_UNORM: + strb->Base.InternalFormat = GL_RGB16; + break; case PIPE_FORMAT_R8_UNORM: strb->Base.InternalFormat = GL_R8; break; @@ -416,6 +420,7 @@ st_new_renderbuffer_fb(enum pipe_format format, unsigned samples, boolean sw) strb->Base.InternalFormat = GL_RGBA32F; break; case PIPE_FORMAT_R32G32B32X32_FLOAT: + case PIPE_FORMAT_R32G32B32_FLOAT: strb->Base.InternalFormat = GL_RGB32F; break; case PIPE_FORMAT_R16G16B16A16_FLOAT: -- 2.30.2