void pp_free_fbos(struct pp_queue_t *);
void pp_debug(const char *, ...);
struct program *pp_init_prog(struct pp_queue_t *, struct pipe_screen *);
-void pp_init_fbos(struct pp_queue_t *, unsigned int, unsigned int,
- struct pipe_resource *);
+void pp_init_fbos(struct pp_queue_t *, unsigned int, unsigned int);
/* The filters */
pipe_surface_reference(&ppq->inner_tmps[i], NULL);
pipe_resource_reference(&ppq->inner_tmp[i], NULL);
}
- pipe_resource_reference(&ppq->depth, NULL);
pipe_surface_reference(&ppq->stencils, NULL);
pipe_resource_reference(&ppq->stencil, NULL);
/** Allocate the temp FBOs. Called on makecurrent and resize. */
void
pp_init_fbos(struct pp_queue_t *ppq, unsigned int w,
- unsigned int h, struct pipe_resource *indepth)
+ unsigned int h)
{
struct program *p = ppq->p; /* The lazy will inherit the earth */
goto error;
}
- tmp_res.format = p->surf.format = indepth->format;
tmp_res.bind = p->surf.usage = PIPE_BIND_DEPTH_STENCIL;
- pipe_resource_reference(&ppq->depth, indepth);
- if (!ppq->depth)
- goto error;
tmp_res.format = p->surf.format = PIPE_FORMAT_S8_UINT_Z24_UNORM;
in->height0 != ppq->p->framebuffer.height) {
pp_debug("Resizing the temp pp buffers\n");
pp_free_fbos(ppq);
- pp_init_fbos(ppq, in->width0, in->height0, indepth);
+ pp_init_fbos(ppq, in->width0, in->height0);
}
if (in == out && ppq->n_filters == 1) {
if (draw->textures[ST_ATTACHMENT_BACK_LEFT] && draw->textures[ST_ATTACHMENT_DEPTH_STENCIL]
&& ctx->pp)
pp_init_fbos(ctx->pp, draw->textures[ST_ATTACHMENT_BACK_LEFT]->width0,
- draw->textures[ST_ATTACHMENT_BACK_LEFT]->height0,
- draw->textures[ST_ATTACHMENT_DEPTH_STENCIL]);
+ draw->textures[ST_ATTACHMENT_BACK_LEFT]->height0);
return GL_TRUE;
}