up_consts(struct pp_queue_t *ppq)
{
struct pipe_context *pipe = ppq->p->pipe;
- struct pipe_box box;
-
- u_box_2d(0, 0, sizeof(constants), 1, &box);
- pipe->transfer_inline_write(pipe, ppq->constbuf, 0, PIPE_TRANSFER_WRITE,
- &box, constants, sizeof(constants),
- sizeof(constants));
+ pipe->buffer_subdata(pipe, ppq->constbuf, PIPE_TRANSFER_WRITE,
+ 0, sizeof(constants), constants);
}
/** Run function of the MLAA filter. */
pp_filter_set_fb(p);
pp_filter_misc_state(p);
cso_set_depth_stencil_alpha(p->cso, &mstencil);
- p->pipe->clear(p->pipe, PIPE_CLEAR_STENCIL | PIPE_CLEAR_COLOR,
+ p->pipe->clear(p->pipe, PIPE_CLEAR_STENCIL | PIPE_CLEAR_COLOR0,
&p->clear_color, 0, 0);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 0, &p->sampler_point);
- cso_single_sampler_done(p->cso, PIPE_SHADER_FRAGMENT);
+ {
+ const struct pipe_sampler_state *samplers[] = {&p->sampler_point};
+ cso_set_samplers(p->cso, PIPE_SHADER_FRAGMENT, 1, samplers);
+ }
cso_set_sampler_views(p->cso, PIPE_SHADER_FRAGMENT, 1, &p->view);
cso_set_vertex_shader_handle(p->cso, ppq->shaders[n][1]); /* offsetvs */
pp_filter_set_clear_fb(p);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 0, &p->sampler_point);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 1, &p->sampler_point);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 2, &p->sampler);
- cso_single_sampler_done(p->cso, PIPE_SHADER_FRAGMENT);
+ {
+ const struct pipe_sampler_state *samplers[] =
+ {&p->sampler_point, &p->sampler_point, &p->sampler};
+ cso_set_samplers(p->cso, PIPE_SHADER_FRAGMENT, 3, samplers);
+ }
arr[0] = p->view;
cso_set_sampler_views(p->cso, PIPE_SHADER_FRAGMENT, 3, arr);
u_sampler_view_default_template(&v_tmp, in, in->format);
arr[0] = p->pipe->create_sampler_view(p->pipe, in, &v_tmp);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 0, &p->sampler_point);
- cso_single_sampler(p->cso, PIPE_SHADER_FRAGMENT, 1, &p->sampler_point);
- cso_single_sampler_done(p->cso, PIPE_SHADER_FRAGMENT);
+ {
+ const struct pipe_sampler_state *samplers[] =
+ {&p->sampler_point, &p->sampler_point};
+ cso_set_samplers(p->cso, PIPE_SHADER_FRAGMENT, 2, samplers);
+ }
arr[1] = p->view;
cso_set_sampler_views(p->cso, PIPE_SHADER_FRAGMENT, 2, arr);
tmp_text = CALLOC(sizeof(blend2fs_1) + sizeof(blend2fs_2) +
IMM_SPACE, sizeof(char));
- if (tmp_text == NULL) {
+ if (!tmp_text) {
pp_debug("Failed to allocate shader space\n");
return FALSE;
}
ppq->constbuf = pipe_buffer_create(ppq->p->screen,
PIPE_BIND_CONSTANT_BUFFER,
- PIPE_USAGE_STATIC,
+ PIPE_USAGE_DEFAULT,
sizeof(constants));
if (ppq->constbuf == NULL) {
pp_debug("Failed to allocate constant buffer\n");
res.format = PIPE_FORMAT_R8G8_UNORM;
res.width0 = res.height0 = 165;
res.bind = PIPE_BIND_SAMPLER_VIEW;
- res.usage = PIPE_USAGE_STATIC;
+ res.usage = PIPE_USAGE_DEFAULT;
res.depth0 = res.array_size = res.nr_samples = 1;
if (!ppq->p->screen->is_format_supported(ppq->p->screen, res.format,
u_box_2d(0, 0, 165, 165, &box);
- ppq->p->pipe->transfer_inline_write(ppq->p->pipe, ppq->areamaptex, 0,
- PIPE_TRANSFER_WRITE, &box,
- areamap, 165 * 2, sizeof(areamap));
+ ppq->p->pipe->texture_subdata(ppq->p->pipe, ppq->areamaptex, 0,
+ PIPE_TRANSFER_WRITE, &box,
+ areamap, 165 * 2, sizeof(areamap));
ppq->shaders[n][1] = pp_tgsi_to_state(ppq->p->pipe, offsetvs, true,
"offsetvs");
pp_jimenezmlaa(struct pp_queue_t *ppq, struct pipe_resource *in,
struct pipe_resource *out, unsigned int n)
{
+ if (!ppq->depth) {
+ return;
+ }
pp_jimenezmlaa_run(ppq, in, out, n, false);
}
pp_jimenezmlaa_free(struct pp_queue_t *ppq, unsigned int n)
{
if (ppq->areamaptex) {
- ppq->p->screen->resource_destroy(ppq->p->screen, ppq->areamaptex);
- ppq->areamaptex = NULL;
+ pipe_resource_reference(&ppq->areamaptex, NULL);
}
if (ppq->constbuf) {
- ppq->p->screen->resource_destroy(ppq->p->screen, ppq->constbuf);
- ppq->constbuf = NULL;
+ pipe_resource_reference(&ppq->constbuf, NULL);
}
}