mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-06 23:11:25 +12:00
rsx: Fix transfer descriptors for partially overlapping slices in head
- Height must be corrected to skip the piece that exists before the current slice
This commit is contained in:
parent
ddd202b5ff
commit
acf51f0ead
1 changed files with 4 additions and 1 deletions
|
@ -306,12 +306,15 @@ namespace rsx
|
||||||
const u16 delta = u16(-rebased);
|
const u16 delta = u16(-rebased);
|
||||||
src_y += delta;
|
src_y += delta;
|
||||||
dst_y += delta;
|
dst_y += delta;
|
||||||
|
|
||||||
|
verify(HERE), dst_y == slice_begin;
|
||||||
}
|
}
|
||||||
|
|
||||||
verify(HERE), dst_y >= slice_begin;
|
verify(HERE), dst_y >= slice_begin;
|
||||||
|
|
||||||
|
const auto h = std::min(section_end, slice_end) - dst_y;
|
||||||
dst_y = (dst_y - slice_begin);
|
dst_y = (dst_y - slice_begin);
|
||||||
|
|
||||||
const auto h = std::min(section_end, slice_end) - section.dst_area.y;
|
|
||||||
const auto src_width = rsx::apply_resolution_scale(section.src_area.width, true);
|
const auto src_width = rsx::apply_resolution_scale(section.src_area.width, true);
|
||||||
const auto src_height = rsx::apply_resolution_scale(h, true);
|
const auto src_height = rsx::apply_resolution_scale(h, true);
|
||||||
const auto dst_width = rsx::apply_resolution_scale(section.dst_area.width, true);
|
const auto dst_width = rsx::apply_resolution_scale(section.dst_area.width, true);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue