[Mesa-dev] [PATCH 0/40] Implement GL_ARB_viewport_array

Ian Romanick idr at freedesktop.org
Tue Jan 14 10:57:32 PST 2014


On 01/11/2014 03:43 PM, Kenneth Graunke wrote:
> On 01/10/2014 05:44 PM, Ian Romanick wrote:
>> (Sent after the fact... sorry.)
>>
>> This represents a medling of GL_ARB_viewport_array code written by
>> Courtney Goeltzenleuchter (LunarG) and myself over the last couple
>> months.  It implements all of the core Mesa code for the extension and
>> enables it in the i965 driver.
>>
>> Like layered rendering, this extension depends on geometry shaders, so
>> it is currently only enabled in core profiles.  There is one bit of core
>> Mesa code that behaves differently when the extension is enabled (see
>> "mesa: Add new viewport and depth-range entry points for
>> GL_ARB_viewport_array"), so the enable flag is only set by the i965
>> driver in core profile.
>>
>> When multiple viewports, depth ranges, or scissor rectangles are updated
>> in one API call, the driver is only notified once, at the end.  There is
>> also no per-viewport "dirty" tracking.  The i965 driver has to send all
>> of the data when anything changes, so it didn't need that feature.  If
>> some other hardware could use per-viewport dirty tracking as an
>> optimization, it would be trivial to add that tracking to the
>> gl_context.  Then the driver state update (or
>> dd_function_table::Viewport) function could consult the appropriate
>> dirty bits before doing the update.
> 
> I've finished reviewing this series.  Other than what I've commented on,
> this series is:
> Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> 
> Nice work, both of you!

Thanks.  I'll push the first 5 patches later today, and I'll get a new
series incorporating your feedback out soon.



More information about the mesa-dev mailing list