remove old code, remaining bits of static handles, disable (no longer functional anyway) rotation code
This commit is contained in:
@@ -879,7 +879,6 @@ i830Enable(GLcontext * ctx, GLenum cap, GLboolean state)
|
||||
static void
|
||||
i830_init_packets(struct i830_context *i830)
|
||||
{
|
||||
intelScreenPrivate *screen = i830->intel.intelScreen;
|
||||
|
||||
/* Zero all state */
|
||||
memset(&i830->state, 0, sizeof(i830->state));
|
||||
@@ -1033,15 +1032,6 @@ i830_init_packets(struct i830_context *i830)
|
||||
|
||||
i830->state.Stipple[I830_STPREG_ST0] = _3DSTATE_STIPPLE;
|
||||
|
||||
i830->state.Buffer[I830_DESTREG_CBUFADDR0] = _3DSTATE_BUF_INFO_CMD;
|
||||
i830->state.Buffer[I830_DESTREG_CBUFADDR1] = (BUF_3D_ID_COLOR_BACK | BUF_3D_PITCH(screen->front.pitch) | /* pitch in bytes */
|
||||
BUF_3D_USE_FENCE);
|
||||
|
||||
|
||||
i830->state.Buffer[I830_DESTREG_DBUFADDR0] = _3DSTATE_BUF_INFO_CMD;
|
||||
i830->state.Buffer[I830_DESTREG_DBUFADDR1] = (BUF_3D_ID_DEPTH | BUF_3D_PITCH(screen->depth.pitch) | /* pitch in bytes */
|
||||
BUF_3D_USE_FENCE);
|
||||
|
||||
i830->state.Buffer[I830_DESTREG_DV0] = _3DSTATE_DST_BUF_VARS_CMD;
|
||||
|
||||
#if 0
|
||||
|
||||
@@ -193,7 +193,7 @@ intelWindowMoved(struct intel_context *intel)
|
||||
intel_fb->pf_current_page = (intel->sarea->pf_current_page >>
|
||||
(intel_fb->pf_pipes & 0x2)) & 0x3;
|
||||
|
||||
intel_fb->pf_num_pages = intel->intelScreen->third.handle ? 3 : 2;
|
||||
intel_fb->pf_num_pages = 2 /*intel->intelScreen->third.handle ? 3 : 2*/;
|
||||
|
||||
pf_active = pf_pipes && (pf_pipes & intel->sarea->pf_active) == pf_pipes;
|
||||
|
||||
@@ -396,8 +396,9 @@ intelClearWithTris(struct intel_context *intel, GLbitfield mask)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#if 0
|
||||
/* Xorg seems to handle that nowadays, and this code here no longer works with priv
|
||||
buffers */
|
||||
/**
|
||||
* Copy the window contents named by dPriv to the rotated (or reflected)
|
||||
* color buffer.
|
||||
@@ -537,7 +538,7 @@ intelRotateWindow(struct intel_context *intel,
|
||||
|
||||
UNLOCK_HARDWARE(intel);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Called by ctx->Driver.Clear.
|
||||
@@ -845,10 +846,11 @@ intelSwapBuffers(__DRIdrawablePrivate * dPriv)
|
||||
if (screen->current_rotation != 0 || !intelPageFlip(dPriv)) {
|
||||
intelCopyBuffer(dPriv, NULL);
|
||||
}
|
||||
|
||||
#if 0
|
||||
if (screen->current_rotation != 0) {
|
||||
intelRotateWindow(intel, dPriv, BUFFER_BIT_FRONT_LEFT);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
intel_fb->swap_count++;
|
||||
|
||||
@@ -52,8 +52,10 @@ extern void intel_draw_buffer(GLcontext * ctx, struct gl_framebuffer *fb);
|
||||
|
||||
extern void intelInitBufferFuncs(struct dd_function_table *functions);
|
||||
|
||||
#if 0
|
||||
extern void
|
||||
intelRotateWindow(struct intel_context *intel,
|
||||
__DRIdrawablePrivate * dPriv, GLuint srcBuf);
|
||||
#endif
|
||||
|
||||
#endif /* INTEL_BUFFERS_H */
|
||||
|
||||
@@ -295,14 +295,18 @@ intelCheckFrontUpdate(GLcontext * ctx)
|
||||
BUFFER_BIT_FRONT_LEFT maybe? */
|
||||
if (intel->ctx.DrawBuffer->_ColorDrawBufferMask[0] ==
|
||||
BUFFER_BIT_FRONT_LEFT) {
|
||||
intelScreenPrivate *screen = intel->intelScreen;
|
||||
__DRIdrawablePrivate *dPriv = intel->driDrawable;
|
||||
#if 0
|
||||
intelScreenPrivate *screen = intel->intelScreen;
|
||||
if (screen->current_rotation != 0) {
|
||||
intelRotateWindow(intel, dPriv, BUFFER_BIT_FRONT_LEFT);
|
||||
}
|
||||
else {
|
||||
intelCopyBuffer(dPriv, NULL);
|
||||
}
|
||||
#else
|
||||
intelCopyBuffer(dPriv, NULL);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -596,34 +600,6 @@ intelMakeCurrent(__DRIcontextPrivate * driContextPriv,
|
||||
is done. Need a per-screen context? */
|
||||
intel->intelScreen->dummyctxptr = intel;
|
||||
|
||||
/* XXX FBO temporary fix-ups! */
|
||||
/* if the renderbuffers don't have regions, init them from the context */
|
||||
{
|
||||
struct intel_renderbuffer *irbDepth
|
||||
= intel_get_renderbuffer(&intel_fb->Base, BUFFER_DEPTH);
|
||||
struct intel_renderbuffer *irbStencil
|
||||
= intel_get_renderbuffer(&intel_fb->Base, BUFFER_STENCIL);
|
||||
|
||||
if (intel_fb->color_rb[0] && !intel_fb->color_rb[0]->region) {
|
||||
intel_region_reference(&intel_fb->color_rb[0]->region,
|
||||
intel->intelScreen->front_region);
|
||||
}
|
||||
if (intel_fb->color_rb[1] && !intel_fb->color_rb[1]->region) {
|
||||
intel_region_reference(&intel_fb->color_rb[1]->region,
|
||||
intel->intelScreen->back_region);
|
||||
}
|
||||
if (intel_fb->color_rb[2] && !intel_fb->color_rb[2]->region) {
|
||||
intel_region_reference(&intel_fb->color_rb[2]->region,
|
||||
intel->intelScreen->third_region);
|
||||
}
|
||||
if (irbDepth && !irbDepth->region) {
|
||||
intel_region_reference(&irbDepth->region, intel->intelScreen->depth_region);
|
||||
}
|
||||
if (irbStencil && !irbStencil->region) {
|
||||
intel_region_reference(&irbStencil->region, intel->intelScreen->depth_region);
|
||||
}
|
||||
}
|
||||
|
||||
/* update GLframebuffer size to match window if needed */
|
||||
driUpdateFramebufferSize(&intel->ctx, driDrawPriv);
|
||||
|
||||
|
||||
@@ -271,7 +271,7 @@ do_blit_copypixels(GLcontext * ctx,
|
||||
if (!irbread || !irbread->region || !irbdraw || !irbdraw->region)
|
||||
return GL_FALSE;
|
||||
}
|
||||
else if (type == GL_STENCIL) {
|
||||
else /* GL_STENCIL */ {
|
||||
/* Don't think this is really possible.
|
||||
*/
|
||||
return GL_FALSE;
|
||||
|
||||
@@ -57,6 +57,7 @@ do_texture_drawpixels(GLcontext * ctx,
|
||||
struct intel_context *intel = intel_context(ctx);
|
||||
struct intel_region *dst = intel_drawbuf_region(intel);
|
||||
struct intel_buffer_object *src = intel_buffer_object(unpack->BufferObj);
|
||||
struct intel_region *depthreg = NULL;
|
||||
GLuint rowLength = unpack->RowLength ? unpack->RowLength : width;
|
||||
GLuint src_offset;
|
||||
|
||||
@@ -112,7 +113,11 @@ do_texture_drawpixels(GLcontext * ctx,
|
||||
|
||||
/* Set the 3d engine to draw into the destination region:
|
||||
*/
|
||||
intel->vtbl.meta_draw_region(intel, dst, intel->intelScreen->depth_region);
|
||||
if (ctx->DrawBuffer->_DepthBuffer &&
|
||||
ctx->DrawBuffer->_DepthBuffer->Wrapped)
|
||||
depthreg = (intel_renderbuffer(ctx->DrawBuffer->_DepthBuffer->Wrapped))->region;
|
||||
|
||||
intel->vtbl.meta_draw_region(intel, dst, depthreg);
|
||||
|
||||
intel->vtbl.meta_import_pixel_state(intel);
|
||||
|
||||
@@ -244,7 +249,7 @@ do_blit_drawpixels(GLcontext * ctx,
|
||||
if (!irbdraw || !irbdraw->region)
|
||||
return GL_FALSE;
|
||||
}
|
||||
else if (type == GL_STENCIL) {
|
||||
else /* GL_STENCIL */ {
|
||||
/* Don't think this is really possible.
|
||||
*/
|
||||
return GL_FALSE;
|
||||
|
||||
@@ -88,55 +88,8 @@ intelMapScreenRegions(__DRIscreenPrivate * sPriv)
|
||||
_mesa_warning(NULL, "no front buffer handle in intelMapScreenRegions!");
|
||||
}
|
||||
|
||||
#if 0
|
||||
if (0)
|
||||
_mesa_printf("Back 0x%08x ", intelScreen->back.handle);
|
||||
if (drmMap(sPriv->fd,
|
||||
intelScreen->back.handle,
|
||||
intelScreen->back.size,
|
||||
(drmAddress *) & intelScreen->back.map) != 0) {
|
||||
intelUnmapScreenRegions(intelScreen);
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
if (intelScreen->third.handle) {
|
||||
if (0)
|
||||
_mesa_printf("Third 0x%08x ", intelScreen->third.handle);
|
||||
if (drmMap(sPriv->fd,
|
||||
intelScreen->third.handle,
|
||||
intelScreen->third.size,
|
||||
(drmAddress *) & intelScreen->third.map) != 0) {
|
||||
intelUnmapScreenRegions(intelScreen);
|
||||
return GL_FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (0)
|
||||
_mesa_printf("Depth 0x%08x ", intelScreen->depth.handle);
|
||||
if (drmMap(sPriv->fd,
|
||||
intelScreen->depth.handle,
|
||||
intelScreen->depth.size,
|
||||
(drmAddress *) & intelScreen->depth.map) != 0) {
|
||||
intelUnmapScreenRegions(intelScreen);
|
||||
return GL_FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
_mesa_printf("TEX 0x%08x ", intelScreen->tex.handle);
|
||||
if (drmMap(sPriv->fd,
|
||||
intelScreen->tex.handle,
|
||||
intelScreen->tex.size,
|
||||
(drmAddress *) & intelScreen->tex.map) != 0) {
|
||||
intelUnmapScreenRegions(intelScreen);
|
||||
return GL_FALSE;
|
||||
}
|
||||
#endif
|
||||
if (0)
|
||||
printf("Mappings: front: %p back: %p third: %p depth: %p tex: %p\n",
|
||||
intelScreen->front.map,
|
||||
intelScreen->back.map, intelScreen->third.map,
|
||||
intelScreen->depth.map, intelScreen->tex.map);
|
||||
printf("Mappings: front: %p\n", intelScreen->front.map);
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
@@ -161,12 +114,8 @@ intel_recreate_static(intelScreenPrivate *intelScreen,
|
||||
|
||||
|
||||
/* Create intel_region structs to describe the static front,back,depth
|
||||
* buffers created by the xserver.
|
||||
*
|
||||
* Although FBO's mean we now no longer use these as render targets in
|
||||
* all circumstances, they won't go away until the back and depth
|
||||
* buffers become private, and the front and rotated buffers will
|
||||
* remain even then.
|
||||
* buffers created by the xserver.
|
||||
* Only used for real front buffer now.
|
||||
*
|
||||
* Note that these don't allocate video memory, just describe
|
||||
* allocations alread made by the X server.
|
||||
@@ -185,51 +134,6 @@ intel_recreate_static_regions(intelScreenPrivate *intelScreen)
|
||||
intelScreen->front.pitch / intelScreen->cpp,
|
||||
intelScreen->height);
|
||||
|
||||
intelScreen->rotated_region =
|
||||
intel_recreate_static(intelScreen,
|
||||
intelScreen->rotated_region,
|
||||
DRM_BO_FLAG_MEM_TT,
|
||||
intelScreen->rotated.offset,
|
||||
intelScreen->rotated.map,
|
||||
intelScreen->cpp,
|
||||
intelScreen->rotated.pitch /
|
||||
intelScreen->cpp, intelScreen->height);
|
||||
|
||||
#if 0
|
||||
intelScreen->back_region =
|
||||
intel_recreate_static(intelScreen,
|
||||
intelScreen->back_region,
|
||||
DRM_BO_FLAG_MEM_TT,
|
||||
intelScreen->back.offset,
|
||||
intelScreen->back.map,
|
||||
intelScreen->cpp,
|
||||
intelScreen->back.pitch / intelScreen->cpp,
|
||||
intelScreen->height);
|
||||
|
||||
if (intelScreen->third.handle) {
|
||||
intelScreen->third_region =
|
||||
intel_recreate_static(intelScreen,
|
||||
intelScreen->third_region,
|
||||
DRM_BO_FLAG_MEM_TT,
|
||||
intelScreen->third.offset,
|
||||
intelScreen->third.map,
|
||||
intelScreen->cpp,
|
||||
intelScreen->third.pitch / intelScreen->cpp,
|
||||
intelScreen->height);
|
||||
}
|
||||
|
||||
/* Still assuming front.cpp == depth.cpp
|
||||
*/
|
||||
intelScreen->depth_region =
|
||||
intel_recreate_static(intelScreen,
|
||||
intelScreen->depth_region,
|
||||
DRM_BO_FLAG_MEM_TT,
|
||||
intelScreen->depth.offset,
|
||||
intelScreen->depth.map,
|
||||
intelScreen->cpp,
|
||||
intelScreen->depth.pitch / intelScreen->cpp,
|
||||
intelScreen->height);
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -261,32 +165,6 @@ intelUnmapScreenRegions(intelScreenPrivate * intelScreen)
|
||||
#endif
|
||||
intelScreen->front.map = NULL;
|
||||
}
|
||||
if (intelScreen->back.map) {
|
||||
#if REALLY_UNMAP
|
||||
if (drmUnmap(intelScreen->back.map, intelScreen->back.size) != 0)
|
||||
printf("drmUnmap back failed!\n");
|
||||
#endif
|
||||
intelScreen->back.map = NULL;
|
||||
}
|
||||
if (intelScreen->third.map) {
|
||||
#if REALLY_UNMAP
|
||||
if (drmUnmap(intelScreen->third.map, intelScreen->third.size) != 0)
|
||||
printf("drmUnmap third failed!\n");
|
||||
#endif
|
||||
intelScreen->third.map = NULL;
|
||||
}
|
||||
if (intelScreen->depth.map) {
|
||||
#if REALLY_UNMAP
|
||||
drmUnmap(intelScreen->depth.map, intelScreen->depth.size);
|
||||
intelScreen->depth.map = NULL;
|
||||
#endif
|
||||
}
|
||||
if (intelScreen->tex.map) {
|
||||
#if REALLY_UNMAP
|
||||
drmUnmap(intelScreen->tex.map, intelScreen->tex.size);
|
||||
intelScreen->tex.map = NULL;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -297,17 +175,6 @@ intelPrintDRIInfo(intelScreenPrivate * intelScreen,
|
||||
fprintf(stderr, "*** Front size: 0x%x offset: 0x%x pitch: %d\n",
|
||||
intelScreen->front.size, intelScreen->front.offset,
|
||||
intelScreen->front.pitch);
|
||||
fprintf(stderr, "*** Back size: 0x%x offset: 0x%x pitch: %d\n",
|
||||
intelScreen->back.size, intelScreen->back.offset,
|
||||
intelScreen->back.pitch);
|
||||
fprintf(stderr, "*** Depth size: 0x%x offset: 0x%x pitch: %d\n",
|
||||
intelScreen->depth.size, intelScreen->depth.offset,
|
||||
intelScreen->depth.pitch);
|
||||
fprintf(stderr, "*** Rotated size: 0x%x offset: 0x%x pitch: %d\n",
|
||||
intelScreen->rotated.size, intelScreen->rotated.offset,
|
||||
intelScreen->rotated.pitch);
|
||||
fprintf(stderr, "*** Texture size: 0x%x offset: 0x%x\n",
|
||||
intelScreen->tex.size, intelScreen->tex.offset);
|
||||
fprintf(stderr, "*** Memory : 0x%x\n", gDRIPriv->mem);
|
||||
}
|
||||
|
||||
@@ -355,39 +222,6 @@ intelUpdateScreenFromSAREA(intelScreenPrivate * intelScreen,
|
||||
intelScreen->front.handle = sarea->front_handle;
|
||||
intelScreen->front.size = sarea->front_size;
|
||||
|
||||
#if 0
|
||||
intelScreen->back.offset = sarea->back_offset;
|
||||
intelScreen->back.pitch = sarea->pitch * intelScreen->cpp;
|
||||
intelScreen->back.handle = sarea->back_handle;
|
||||
intelScreen->back.size = sarea->back_size;
|
||||
|
||||
if (intelScreen->driScrnPriv->ddxMinor >= 8) {
|
||||
intelScreen->third.offset = sarea->third_offset;
|
||||
intelScreen->third.pitch = sarea->pitch * intelScreen->cpp;
|
||||
intelScreen->third.handle = sarea->third_handle;
|
||||
intelScreen->third.size = sarea->third_size;
|
||||
}
|
||||
|
||||
intelScreen->depth.offset = sarea->depth_offset;
|
||||
intelScreen->depth.pitch = sarea->pitch * intelScreen->cpp;
|
||||
intelScreen->depth.handle = sarea->depth_handle;
|
||||
intelScreen->depth.size = sarea->depth_size;
|
||||
|
||||
intelScreen->tex.offset = sarea->tex_offset;
|
||||
intelScreen->logTextureGranularity = sarea->log_tex_granularity;
|
||||
intelScreen->tex.handle = sarea->tex_handle;
|
||||
intelScreen->tex.size = sarea->tex_size;
|
||||
#endif
|
||||
|
||||
intelScreen->rotated.offset = sarea->rotated_offset;
|
||||
intelScreen->rotated.pitch = sarea->rotated_pitch * intelScreen->cpp;
|
||||
intelScreen->rotated.size = sarea->rotated_size;
|
||||
intelScreen->current_rotation = sarea->rotation;
|
||||
matrix23Rotate(&intelScreen->rotMatrix,
|
||||
sarea->width, sarea->height, sarea->rotation);
|
||||
intelScreen->rotatedWidth = sarea->virtualX;
|
||||
intelScreen->rotatedHeight = sarea->virtualY;
|
||||
|
||||
if (1)
|
||||
intelPrintSAREA(sarea);
|
||||
}
|
||||
@@ -495,23 +329,6 @@ intelInitDriver(__DRIscreenPrivate * sPriv)
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
/*
|
||||
* FIXME: Remove this code and its references.
|
||||
*/
|
||||
|
||||
intelScreen->tex.offset = gDRIPriv->textureOffset;
|
||||
intelScreen->logTextureGranularity = gDRIPriv->logTextureGranularity;
|
||||
intelScreen->tex.handle = gDRIPriv->textures;
|
||||
intelScreen->tex.size = gDRIPriv->textureSize;
|
||||
|
||||
#else
|
||||
intelScreen->tex.offset = 0;
|
||||
intelScreen->logTextureGranularity = 0;
|
||||
intelScreen->tex.handle = 0;
|
||||
intelScreen->tex.size = 0;
|
||||
#endif
|
||||
|
||||
intelScreen->sarea_priv_offset = gDRIPriv->sarea_priv_offset;
|
||||
|
||||
@@ -589,7 +406,9 @@ intelCreateBuffer(__DRIscreenPrivate * driScrnPriv,
|
||||
__DRIdrawablePrivate * driDrawPriv,
|
||||
const __GLcontextModes * mesaVis, GLboolean isPixmap)
|
||||
{
|
||||
#if 0
|
||||
intelScreenPrivate *screen = (intelScreenPrivate *) driScrnPriv->private;
|
||||
#endif
|
||||
|
||||
if (isPixmap) {
|
||||
return GL_FALSE; /* not implemented */
|
||||
@@ -606,77 +425,6 @@ intelCreateBuffer(__DRIscreenPrivate * driScrnPriv,
|
||||
|
||||
_mesa_initialize_framebuffer(&intel_fb->Base, mesaVis);
|
||||
|
||||
#if 0
|
||||
/* setup the hardware-based renderbuffers */
|
||||
{
|
||||
intel_fb->color_rb[0]
|
||||
= intel_create_renderbuffer(rgbFormat,
|
||||
screen->width, screen->height,
|
||||
screen->front.offset,
|
||||
screen->front.pitch,
|
||||
screen->cpp,
|
||||
screen->front.map);
|
||||
intel_set_span_functions(&intel_fb->color_rb[0]->Base);
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_FRONT_LEFT,
|
||||
&intel_fb->color_rb[0]->Base);
|
||||
}
|
||||
|
||||
if (mesaVis->doubleBufferMode) {
|
||||
intel_fb->color_rb[1]
|
||||
= intel_create_renderbuffer(rgbFormat,
|
||||
screen->width, screen->height,
|
||||
screen->back.offset,
|
||||
screen->back.pitch,
|
||||
screen->cpp,
|
||||
screen->back.map);
|
||||
intel_set_span_functions(&intel_fb->color_rb[1]->Base);
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_BACK_LEFT,
|
||||
&intel_fb->color_rb[1]->Base);
|
||||
|
||||
if (screen->third.handle) {
|
||||
struct gl_renderbuffer *tmp_rb = NULL;
|
||||
|
||||
intel_fb->color_rb[2]
|
||||
= intel_create_renderbuffer(rgbFormat,
|
||||
screen->width, screen->height,
|
||||
screen->third.offset,
|
||||
screen->third.pitch,
|
||||
screen->cpp,
|
||||
screen->third.map);
|
||||
intel_set_span_functions(&intel_fb->color_rb[2]->Base);
|
||||
_mesa_reference_renderbuffer(&tmp_rb, &intel_fb->color_rb[2]->Base);
|
||||
}
|
||||
}
|
||||
if (mesaVis->depthBits == 24 && mesaVis->stencilBits == 8) {
|
||||
/* combined depth/stencil buffer */
|
||||
struct intel_renderbuffer *depthStencilRb
|
||||
= intel_create_renderbuffer(GL_DEPTH24_STENCIL8_EXT,
|
||||
screen->width, screen->height,
|
||||
screen->depth.offset,
|
||||
screen->depth.pitch,
|
||||
screen->cpp, /* 4! */
|
||||
screen->depth.map);
|
||||
intel_set_span_functions(&depthStencilRb->Base);
|
||||
/* note: bind RB to two attachment points */
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_DEPTH,
|
||||
&depthStencilRb->Base);
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_STENCIL,
|
||||
&depthStencilRb->Base);
|
||||
}
|
||||
else if (mesaVis->depthBits == 16) {
|
||||
/* just 16-bit depth buffer, no hw stencil */
|
||||
struct intel_renderbuffer *depthRb
|
||||
= intel_create_renderbuffer(GL_DEPTH_COMPONENT16,
|
||||
screen->width, screen->height,
|
||||
screen->depth.offset,
|
||||
screen->depth.pitch,
|
||||
screen->cpp, /* 2! */
|
||||
screen->depth.map);
|
||||
intel_set_span_functions(&depthRb->Base);
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_DEPTH, &depthRb->Base);
|
||||
}
|
||||
|
||||
#else
|
||||
{
|
||||
/* fake frontbuffer */
|
||||
/* XXX allocation should only happen in the unusual case
|
||||
@@ -693,6 +441,7 @@ intelCreateBuffer(__DRIscreenPrivate * driScrnPriv,
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_BACK_LEFT,
|
||||
&intel_fb->color_rb[1]->Base);
|
||||
|
||||
#if 0
|
||||
if (screen->third.handle) {
|
||||
struct gl_renderbuffer *tmp_rb = NULL;
|
||||
|
||||
@@ -700,7 +449,9 @@ intelCreateBuffer(__DRIscreenPrivate * driScrnPriv,
|
||||
= intel_new_renderbuffer_fb(rgbFormat);
|
||||
_mesa_reference_renderbuffer(&tmp_rb, &intel_fb->color_rb[2]->Base);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if (mesaVis->depthBits == 24 && mesaVis->stencilBits == 8) {
|
||||
/* combined depth/stencil buffer */
|
||||
struct intel_renderbuffer *depthStencilRb
|
||||
@@ -718,7 +469,6 @@ intelCreateBuffer(__DRIscreenPrivate * driScrnPriv,
|
||||
_mesa_add_renderbuffer(&intel_fb->Base, BUFFER_DEPTH, &depthRb->Base);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/* now add any/all software-based renderbuffers we may need */
|
||||
_mesa_add_soft_renderbuffers(&intel_fb->Base,
|
||||
|
||||
@@ -50,17 +50,8 @@ typedef struct
|
||||
typedef struct
|
||||
{
|
||||
intelRegion front;
|
||||
intelRegion back;
|
||||
intelRegion third;
|
||||
intelRegion rotated;
|
||||
intelRegion depth;
|
||||
intelRegion tex;
|
||||
|
||||
struct intel_region *front_region;
|
||||
struct intel_region *back_region;
|
||||
struct intel_region *third_region;
|
||||
struct intel_region *depth_region;
|
||||
struct intel_region *rotated_region;
|
||||
|
||||
int deviceID;
|
||||
int width;
|
||||
|
||||
@@ -668,7 +668,9 @@ update_color_read_buffer(GLcontext *ctx, struct gl_framebuffer *fb)
|
||||
void
|
||||
_mesa_update_framebuffer(GLcontext *ctx)
|
||||
{
|
||||
/* XXX might not be quite correct for different draw/read buffers ? */
|
||||
struct gl_framebuffer *fb = ctx->DrawBuffer;
|
||||
// struct gl_framebuffer *fbread = ctx->ReadBuffer;
|
||||
|
||||
/* Completeness only matters for user-created framebuffers */
|
||||
if (fb->Name != 0) {
|
||||
|
||||
Reference in New Issue
Block a user