/*********************************************************************** * Scissor state */ static enum pipe_error emit_scissor_rect( struct svga_context *svga, unsigned dirty ) { const struct pipe_scissor_state *scissor = &svga->curr.scissor; if (svga_have_vgpu10(svga)) { SVGASignedRect rect; rect.left = scissor->minx; rect.top = scissor->miny; rect.right = scissor->maxx; rect.bottom = scissor->maxy; return SVGA3D_vgpu10_SetScissorRects(svga->swc, 1, &rect); } else { SVGA3dRect rect; rect.x = scissor->minx; rect.y = scissor->miny; rect.w = scissor->maxx - scissor->minx; /* + 1 ?? */ rect.h = scissor->maxy - scissor->miny; /* + 1 ?? */ return SVGA3D_SetScissorRect(svga->swc, &rect); } }
/*********************************************************************** * Scissor state */ static enum pipe_error emit_scissor_rect( struct svga_context *svga, unsigned dirty ) { const struct pipe_scissor_state *scissor = &svga->curr.scissor; SVGA3dRect rect; rect.x = scissor->minx; rect.y = scissor->miny; rect.w = scissor->maxx - scissor->minx; /* + 1 ?? */ rect.h = scissor->maxy - scissor->miny; /* + 1 ?? */ return SVGA3D_SetScissorRect(svga->swc, &rect); }