unsigned i;
uint32_t row_stride;
uint32_t img_stride;
+ uint32_t sample_stride;
const void *addr;
assert(num <= PIPE_MAX_SHADER_SAMPLER_VIEWS);
unsigned width = u_minify(img->width0, view->u.tex.level);
unsigned height = u_minify(img->height0, view->u.tex.level);
unsigned num_layers = img->depth0;
+ unsigned num_samples = img->nr_samples;
if (!lp_img->dt) {
/* regular texture - setup array of mipmap level offsets */
row_stride = lp_img->row_stride[view->u.tex.level];
img_stride = lp_img->img_stride[view->u.tex.level];
+ sample_stride = 0;
addr = (uint8_t *)addr + mip_offset;
}
else {
/* probably don't really need to fill that out */
row_stride = 0;
img_stride = 0;
+ sample_stride = 0;
/* everything specified in number of elements here. */
width = view->u.buf.size / view_blocksize;
PIPE_TRANSFER_READ);
row_stride = lp_img->row_stride[0];
img_stride = lp_img->img_stride[0];
+ sample_stride = 0;
assert(addr);
}
draw_set_mapped_image(lp->draw,
i,
width, height, num_layers,
addr,
- row_stride, img_stride, 0, 0);
+ row_stride, img_stride,
+ num_samples, sample_stride);
}
}
}