aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_cb_fbo.c
diff options
context:
space:
mode:
authorBrian <[email protected]>2007-10-14 11:55:31 -0600
committerBrian <[email protected]>2007-10-14 11:55:31 -0600
commit7b0b694406e4043cb163f9832c9c02934fa54568 (patch)
treeb6c33b4483eecd2542a0cca834aa0b1f3678ee61 /src/mesa/state_tracker/st_cb_fbo.c
parentd45fdc3f1f8200c1f1703bdcd5a74a153c74b1c4 (diff)
16-bit rgba surface/format for accum
Diffstat (limited to 'src/mesa/state_tracker/st_cb_fbo.c')
-rw-r--r--src/mesa/state_tracker/st_cb_fbo.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c
index 3e4aeab5236..e1cc7d98bd6 100644
--- a/src/mesa/state_tracker/st_cb_fbo.c
+++ b/src/mesa/state_tracker/st_cb_fbo.c
@@ -70,14 +70,6 @@ st_renderbuffer_alloc_storage(GLcontext * ctx, struct gl_renderbuffer *rb,
if (!info)
return GL_FALSE;
- switch (pipeFormat) {
- case PIPE_FORMAT_S8_Z24:
- strb->Base.DataType = GL_UNSIGNED_INT;
- break;
- default:
- strb->Base.DataType = GL_UNSIGNED_BYTE; /* XXX fix */
- }
-
strb->Base._ActualFormat = info->base_format;
strb->Base.RedBits = info->red_bits;
strb->Base.GreenBits = info->green_bits;
@@ -85,6 +77,9 @@ st_renderbuffer_alloc_storage(GLcontext * ctx, struct gl_renderbuffer *rb,
strb->Base.AlphaBits = info->alpha_bits;
strb->Base.DepthBits = info->depth_bits;
strb->Base.StencilBits = info->stencil_bits;
+ strb->Base.DataType = st_format_datatype(pipeFormat);
+
+ assert(strb->Base.DataType);
cpp = info->size;
@@ -229,6 +224,7 @@ st_new_renderbuffer_fb(GLenum intFormat)
switch (intFormat) {
case GL_RGB5:
case GL_RGBA8:
+ case GL_RGBA16:
strb->Base._BaseFormat = GL_RGBA;
break;
case GL_DEPTH_COMPONENT16: