Revert "gl: Fix clip offsets in nv3089::image_in (accelerated path only)"
This reverts commit a784ef5ee4a04870cb461b00284a954b1ed0a833.
This commit is contained in:
@@ -1100,25 +1100,16 @@ namespace gl
|
|||||||
areai src_area = { 0, 0, src_w, src_h };
|
areai src_area = { 0, 0, src_w, src_h };
|
||||||
areai dst_area = { 0, 0, dst.clip_width, dst.clip_height };
|
areai dst_area = { 0, 0, dst.clip_width, dst.clip_height };
|
||||||
|
|
||||||
//clip_x and clip_y are not insets into the scaled region!!
|
if (dst.clip_x || dst.clip_y)
|
||||||
//They seem to be absolute coordinates into the full dst texture
|
|
||||||
//Tested with persona 4 arena
|
|
||||||
if (dst.clip_x != dst.offset_x || dst.clip_y != dst.offset_y)
|
|
||||||
{
|
{
|
||||||
const s16 clip_delta_x = dst.clip_x - dst.offset_x;
|
//Reproject clip offsets onto source
|
||||||
const s16 clip_delta_y = dst.clip_y - dst.offset_x;
|
const u16 scaled_clip_offset_x = dst.clip_x / scale_x;
|
||||||
|
const u16 scaled_clip_offset_y = dst.clip_y / scale_y;
|
||||||
|
|
||||||
if (clip_delta_x || clip_delta_y)
|
src_area.x1 += scaled_clip_offset_x;
|
||||||
{
|
src_area.x2 += scaled_clip_offset_x;
|
||||||
//Reproject clip offsets onto source
|
src_area.y1 += scaled_clip_offset_y;
|
||||||
const s16 scaled_clip_offset_x = clip_delta_x / scale_x;
|
src_area.y2 += scaled_clip_offset_y;
|
||||||
const s16 scaled_clip_offset_y = clip_delta_y / scale_y;
|
|
||||||
|
|
||||||
src_area.x1 += scaled_clip_offset_x;
|
|
||||||
src_area.x2 += scaled_clip_offset_x;
|
|
||||||
src_area.y1 += scaled_clip_offset_y;
|
|
||||||
src_area.y2 += scaled_clip_offset_y;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//Create source texture if does not exist
|
//Create source texture if does not exist
|
||||||
|
|||||||
Reference in New Issue
Block a user