gallium/docs: improve documentation of render condition wrt blits.
authorRoland Scheidegger <sroland@vmware.com>
Wed, 28 May 2014 23:21:20 +0000 (01:21 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Sat, 31 May 2014 20:05:14 +0000 (22:05 +0200)
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
src/gallium/docs/source/context.rst
src/gallium/include/pipe/p_state.h

index 571ee87..a9625f3 100644 (file)
@@ -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
index 07ce88e..7257604 100644 (file)
@@ -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 */
 };