mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-07 23:41:26 +12:00
rsx: Fixup
- Destination Y coordinate must be 'rebased' onto the current slice by subtracting its offset. Only the local path was affected this time
This commit is contained in:
parent
049e392a97
commit
b6422c9a33
1 changed files with 9 additions and 9 deletions
|
@ -304,7 +304,7 @@ namespace rsx
|
||||||
|
|
||||||
const u16 dst_w = static_cast<u16>(std::get<2>(clipped).width);
|
const u16 dst_w = static_cast<u16>(std::get<2>(clipped).width);
|
||||||
const u16 src_w = static_cast<u16>(dst_w * attr.bpp) / section_bpp;
|
const u16 src_w = static_cast<u16>(dst_w * attr.bpp) / section_bpp;
|
||||||
const u16 height = static_cast<u16>(std::get<2>(clipped).height);
|
const u16 height = static_cast<u16>(dst_h);
|
||||||
|
|
||||||
if (scaling)
|
if (scaling)
|
||||||
{
|
{
|
||||||
|
@ -314,10 +314,10 @@ namespace rsx
|
||||||
section->get_raw_texture(),
|
section->get_raw_texture(),
|
||||||
surface_transform::identity,
|
surface_transform::identity,
|
||||||
0,
|
0,
|
||||||
static_cast<u16>(std::get<0>(clipped).x),
|
static_cast<u16>(std::get<0>(clipped).x), // src.x
|
||||||
static_cast<u16>(std::get<0>(clipped).y),
|
static_cast<u16>(std::get<0>(clipped).y), // src.y
|
||||||
rsx::apply_resolution_scale(static_cast<u16>(std::get<1>(clipped).x), true),
|
rsx::apply_resolution_scale(static_cast<u16>(std::get<1>(clipped).x), true), // dst.x
|
||||||
rsx::apply_resolution_scale(static_cast<u16>(std::get<1>(clipped).y), true),
|
rsx::apply_resolution_scale(static_cast<u16>(dst_y - slice_begin), true), // dst.y
|
||||||
slice,
|
slice,
|
||||||
src_w,
|
src_w,
|
||||||
height,
|
height,
|
||||||
|
@ -332,10 +332,10 @@ namespace rsx
|
||||||
section->get_raw_texture(),
|
section->get_raw_texture(),
|
||||||
surface_transform::identity,
|
surface_transform::identity,
|
||||||
0,
|
0,
|
||||||
static_cast<u16>(std::get<0>(clipped).x),
|
static_cast<u16>(std::get<0>(clipped).x), // src.x
|
||||||
static_cast<u16>(std::get<0>(clipped).y),
|
static_cast<u16>(std::get<0>(clipped).y), // src.y
|
||||||
static_cast<u16>(std::get<1>(clipped).x),
|
static_cast<u16>(std::get<1>(clipped).x), // dst.x
|
||||||
static_cast<u16>(std::get<1>(clipped).y),
|
static_cast<u16>(dst_y - slice_begin), // dst.y
|
||||||
0,
|
0,
|
||||||
src_w,
|
src_w,
|
||||||
height,
|
height,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue