mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-18 23:48:22 +02:00
radv: fix scissor computation when using half-pixel viewport offset
'scale[i]' can be non-integer. Original patch by Philip Rebohle. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106074 Fixes:0f3de89a56("radv: Use the guard band.") Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Niuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit893e19efb7)
This commit is contained in:
parent
f581dc608b
commit
b62b3eb259
1 changed files with 4 additions and 4 deletions
|
|
@ -647,10 +647,10 @@ static VkRect2D si_scissor_from_viewport(const VkViewport *viewport)
|
|||
|
||||
get_viewport_xform(viewport, scale, translate);
|
||||
|
||||
rect.offset.x = translate[0] - abs(scale[0]);
|
||||
rect.offset.y = translate[1] - abs(scale[1]);
|
||||
rect.extent.width = ceilf(translate[0] + abs(scale[0])) - rect.offset.x;
|
||||
rect.extent.height = ceilf(translate[1] + abs(scale[1])) - rect.offset.y;
|
||||
rect.offset.x = translate[0] - fabs(scale[0]);
|
||||
rect.offset.y = translate[1] - fabs(scale[1]);
|
||||
rect.extent.width = ceilf(translate[0] + fabs(scale[0])) - rect.offset.x;
|
||||
rect.extent.height = ceilf(translate[1] + fabs(scale[1])) - rect.offset.y;
|
||||
|
||||
return rect;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue