pipe_surface_reference( &strb->surface, NULL );
pipe_texture_reference( &strb->texture, NULL );
-
+ /* Setup new texture template.
+ */
memset(&template, 0, sizeof(template));
-
+ template.target = PIPE_TEXTURE_2D;
if (strb->format != PIPE_FORMAT_NONE) {
template.format = strb->format;
}
else {
template.format = st_choose_renderbuffer_format(pipe, internalFormat);
}
-
- strb->Base.Width = width;
- strb->Base.Height = height;
- init_renderbuffer_bits(strb, template.format);
-
- template.target = PIPE_TEXTURE_2D;
pf_get_block(template.format, &template.block);
template.width[0] = width;
template.height[0] = height;
template.depth[0] = 1;
template.last_level = 0;
template.nr_samples = rb->NumSamples;
-
if (pf_is_depth_stencil(template.format)) {
template.tex_usage = PIPE_TEXTURE_USAGE_DEPTH_STENCIL;
}
PIPE_TEXTURE_USAGE_RENDER_TARGET);
}
+ /* init renderbuffer fields */
+ strb->Base.Width = width;
+ strb->Base.Height = height;
+ init_renderbuffer_bits(strb, template.format);
/* Probably need dedicated flags for surface usage too:
*/