[Mesa-dev] [PATCH 1/3] gallium/docs: improve documentation of render condition wrt blits.
Brian Paul
brianp at vmware.com
Thu May 29 06:53:32 PDT 2014
On 05/28/2014 05:23 PM, sroland at vmware.com wrote:
> From: Roland Scheidegger <sroland at vmware.com>
>
> ---
> src/gallium/docs/source/context.rst | 10 +++++++---
> src/gallium/include/pipe/p_state.h | 4 ++--
> 2 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/src/gallium/docs/source/context.rst b/src/gallium/docs/source/context.rst
> index 571ee87..a9625f3 100644
> --- a/src/gallium/docs/source/context.rst
> +++ b/src/gallium/docs/source/context.rst
> @@ -392,8 +392,10 @@ Conditional Rendering
> A drawing command can be skipped depending on the outcome of a query
> (typically an occlusion query, or streamout overflow predicate).
> The ``render_condition`` function specifies the query which should be checked
> -prior to rendering anything. Functions honoring render_condition include
> +prior to rendering anything. Functions always honoring render_condition include
> (and are limited to) draw_vbo, clear, clear_render_target, clear_depth_stencil.
> +The blit function (but not resource_copy_region, which seems inconsistent)
> +can also optionally honor the current render condition.
>
> If ``render_condition`` is called with ``query`` = NULL, conditional
> rendering is disabled and drawing takes place normally.
> @@ -465,8 +467,10 @@ but overlapping blits are not permitted.
> This can be considered the equivalent of a CPU memcpy.
>
> ``blit`` blits a region of a resource to a region of another resource, including
> -scaling, format conversion, and up-/downsampling, as well as
> -a destination clip rectangle (scissors).
> +scaling, format conversion, and up-/downsampling, as well as a destination clip
> +rectangle (scissors). It can also optionally honor the current render condition
> +(but either way the blit itself never contributes anything to queries currently
> +gathering data).
> As opposed to manually drawing a textured quad, this lets the pipe driver choose
> the optimal method for blitting (like using a special 2D engine), and usually
> offers, for example, accelerated stencil-only copies even where
> diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h
> index 07ce88e..7257604 100644
> --- a/src/gallium/include/pipe/p_state.h
> +++ b/src/gallium/include/pipe/p_state.h
> @@ -592,8 +592,8 @@ struct pipe_blit_info
> boolean scissor_enable;
> struct pipe_scissor_state scissor;
>
> - boolean render_condition_enable; /**< whether to leave current render
> - condition enabled */
> + boolean render_condition_enable; /**< whether the blit should honor the
> + current render condition */
> };
>
>
>
For the series: Reviewed-by: Brian Paul <brianp at vmware.com>
Should patches 2 and 3 be tagged for the 10.1 and 10.2 branches?
-Brian
More information about the mesa-dev
mailing list