diff options
author | Jason Ekstrand <[email protected]> | 2017-01-20 17:30:51 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-01-24 12:27:48 -0800 |
commit | 5edcc96bf642eb6a3294066e701acf5bf6a7c1d8 (patch) | |
tree | 75d7c106c88056082c81338cc2fcb1f3996ec54f | |
parent | 045f38a50759bb225cb179703bc7050f6de752b1 (diff) |
anv: Set viewport extents correctly when height is negative
As per VK_KHR_maintenance1, setting a negative height in the viewport
can be used to get flipped coordinates. This is, aparently, very useful
when porting D3D apps to Vulkan. All we need to do to support this is
to make sure we actually set the min and max correctly.
Reviewed-by: Iago Toral Quiroga <[email protected]>
Reviewed-by: Lionel Landwerlin <[email protected]>
-rw-r--r-- | src/intel/vulkan/gen8_cmd_buffer.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/intel/vulkan/gen8_cmd_buffer.c b/src/intel/vulkan/gen8_cmd_buffer.c index f22037b570f..ab68872a260 100644 --- a/src/intel/vulkan/gen8_cmd_buffer.c +++ b/src/intel/vulkan/gen8_cmd_buffer.c @@ -59,8 +59,8 @@ gen8_cmd_buffer_emit_viewport(struct anv_cmd_buffer *cmd_buffer) .YMaxClipGuardband = 1.0f, .XMinViewPort = vp->x, .XMaxViewPort = vp->x + vp->width - 1, - .YMinViewPort = vp->y, - .YMaxViewPort = vp->y + vp->height - 1, + .YMinViewPort = MIN2(vp->y, vp->y + vp->height), + .YMaxViewPort = MAX2(vp->y, vp->y + vp->height) - 1, }; GENX(SF_CLIP_VIEWPORT_pack)(NULL, sf_clip_state.map + i * 64, |