[Mesa-dev] [PATCH 3/4] util/blitter: make sure the blitter can restore all viewports

Marek Olšák maraeo at gmail.com
Thu May 23 16:26:26 PDT 2013


That wouldn't be an issue if there were the start_slot parameter in
the first place. The hardware viewport count is always 16, I don't
think that can be changed. (my radeon hardware docs seem to suggest it
really can't). OpenGL doesn't provide a way to specify the viewport
count either. (even the legacy glViewport function actually updates
all 16 viewports)

The count of set scissor rectangles isn't important either (other than
telling the driver which scissors are being changed).

Marek

On Fri, May 24, 2013 at 12:05 AM, Zack Rusin <zackr at vmware.com> wrote:
>> Same as the the first patch: u_blitter doesn't really need to change
>> more than one scissor and viewport. With the start_slot parameter in
>> set_viewport_states and set_scissor_states, you can just save, set,
>> and restore the first slot. Note that the same approach is also used
>> for the vertex buffer (only the first slot is changed by u_blitter).
>
> Sure, but the count on restoring is going to be incorrect. A lot of code depends on the knowledge of how many viewports/scissors are set and unless the restoring can properly restore the count, all of it will be broken.
>
> z


More information about the mesa-dev mailing list