Lines Matching refs:dst
40 struct d3d12_resource *dst,
47 ID3D12Resource *dst_buf = d3d12_resource_underlying(dst, &dst_off);
59 info->dst.resource->nr_samples <= 1;
72 if (util_format_get_mask(info->dst.format) != info->mask ||
86 struct d3d12_resource *dst = d3d12_resource(info->dst.resource);
87 if (src->dxgi_format != dst->dxgi_format)
94 if (info->src.box.width != info->dst.box.width ||
95 info->src.box.height != info->dst.box.height)
103 info->dst.box.width != (int)u_minify(info->dst.resource->width0,
104 info->dst.level) ||
105 info->dst.box.height != (int)u_minify(info->dst.resource->height0,
106 info->dst.level))
117 struct d3d12_resource *dst = d3d12_resource(info->dst.resource);
122 d3d12_transition_resource_state(ctx, dst,
129 d3d12_batch_reference_resource(batch, dst, true);
133 assert(src->dxgi_format == dst->dxgi_format);
135 d3d12_resource_resource(dst), info->dst.level,
141 formats_are_copy_compatible(enum pipe_format src, enum pipe_format dst)
143 if (src == dst)
147 if (util_format_get_depth_only(src) == dst ||
148 util_format_get_depth_only(dst) == src)
183 MAX2(info->src.resource->nr_samples, 1) != MAX2(info->dst.resource->nr_samples, 1)) {
187 if (!formats_are_copy_compatible(info->src.format, info->dst.format))
195 if (util_format_get_mask(info->dst.format) != info->mask ||
200 if (abs(info->src.box.height) != info->dst.box.height) {
204 if (info->src.box.height != info->dst.box.height &&
211 if (!box_fits(&info->dst.box, info->dst.resource, info->dst.level)) {
218 if (info->src.box.width != info->dst.box.width) {
222 if (info->src.box.depth != info->dst.box.depth) {
229 info->dst.resource->bind & PIPE_BIND_DEPTH_STENCIL)) ||
230 info->src.resource->nr_samples != info->dst.resource->nr_samples) {
232 if (info->dst.box.x != 0 ||
233 info->dst.box.y != 0 ||
234 info->dst.box.z != 0)
266 struct d3d12_resource *dst,
279 int dst_subres_stride = dst->base.b.last_level + 1;
282 int dst_array_size = dst->base.b.array_size;
284 if (dst->base.b.target == PIPE_TEXTURE_CUBE)
296 if (dst->base.b.format == PIPE_FORMAT_Z24_UNORM_S8_UINT ||
297 dst->base.b.format == PIPE_FORMAT_S8_UINT_Z24_UNORM ||
298 dst->base.b.format == PIPE_FORMAT_Z32_FLOAT_S8X24_UINT) {
305 dst->base.b.format == PIPE_FORMAT_Z32_FLOAT_S8X24_UINT) {
325 dst_loc.SubresourceIndex = get_subresource_id(dst->base.b.target, dst_level, dst_subres_stride, dstz, &dstz, dst_array_size, dst->plane_slice) +
327 dst_loc.pResource = d3d12_resource_resource(dst);
337 (!util_format_is_depth_or_stencil(dst->base.b.format) &&
339 dst->base.b.nr_samples == src->base.b.nr_samples));
355 (!util_format_is_depth_or_stencil(dst->base.b.format) &&
357 dst->base.b.nr_samples == src->base.b.nr_samples);
367 struct d3d12_resource *dst,
381 util_format_name(dst->base.b.format), dst_level,
396 copy_subregion_no_barriers(ctx, dst, dst_level,
404 struct d3d12_resource *dst,
416 unsigned dst_subres = get_subresource_id(dst->base.b.target, dst_level, dst->base.b.last_level + 1,
417 pdst_box->z, nullptr, dst->base.b.array_size, dst->plane_slice);
429 d3d12_transition_subresources_state(ctx, dst, dst_subres, 1, 0, 1,
430 d3d12_get_format_start_plane(dst->base.b.format),
431 d3d12_get_format_num_planes(dst->base.b.format),
438 d3d12_batch_reference_resource(batch, dst, true);
441 copy_buffer_region_no_barriers(ctx, dst, pdst_box->x,
445 copy_subregion_no_barriers(ctx, dst, dst_level,
450 copy_resource_y_flipped_no_barriers(ctx, dst, dst_level, pdst_box,
459 d3d12_resource_resource(d3d12_resource(info->dst.resource)) &&
460 info->src.level == info->dst.level;
594 new_info.dst.format = PIPE_FORMAT_R8_UINT;
603 tpl.width0 = info->dst.box.width;
604 tpl.height0 = info->dst.box.height;
605 tpl.depth0 = info->dst.box.depth;
608 tpl.target = info->dst.resource->target;
609 tpl.nr_samples = info->dst.resource->nr_samples;
610 tpl.nr_storage_samples = info->dst.resource->nr_storage_samples;
772 debug_printf("D3D12: failed to create stencil-resolve dst-surface\n");
789 get_stencil_resolve_fs(ctx, info->src.box.height == info->dst.box.height));
806 /* resolve depth into dst */
819 /* copy resolved stencil into dst */
820 struct d3d12_resource *dst = d3d12_resource(info->dst.resource);
825 d3d12_transition_subresources_state(ctx, dst,
833 d3d12_batch_reference_resource(batch, dst, true);
849 dst_loc.pResource = d3d12_resource_resource(dst);
851 ctx->cmdlist->CopyTextureRegion(&dst_loc, info->dst.box.x,
852 info->dst.box.y, info->dst.box.z,
886 /* resolve depth into dst */
893 util_blitter_stencil_fallback(ctx->blitter, info->dst.resource,
894 info->dst.level,
895 &info->dst.box,
921 util_format_name(info->dst.format), info->dst.level,
922 info->dst.resource->nr_samples,
923 info->dst.box.x, info->dst.box.y, info->dst.box.z,
924 info->dst.box.width, info->dst.box.height, info->dst.box.depth);
943 util_format_short_name(info->dst.resource->format));
946 d3d12_direct_copy(ctx, d3d12_resource(info->dst.resource),
947 info->dst.level, &info->dst.box,
957 util_format_short_name(info->dst.resource->format));
977 struct d3d12_resource *dst = d3d12_resource(pdst);
995 if (d3d12_resource_resource(dst) == d3d12_resource_resource(src) && dst_level == src_level) {
1008 d3d12_direct_copy(ctx, dst, dst_level, &dst_box,