summaryrefslogtreecommitdiffstats
path: root/src/gallium/docs
diff options
context:
space:
mode:
authorZack Rusin <zackr@vmware.com>2013-06-10 23:36:59 -0400
committerZack Rusin <zackr@vmware.com>2013-06-13 12:13:11 -0400
commit5507c11f85dda4fbcdc9b36494551c933471a070 (patch)
treeded8a6152801200b5b6d79f02a180f838e7af763 /src/gallium/docs
parentb63eeaf7b7df83a2c52c5ddb701454fd8a49b987 (diff)
downloadexternal_mesa3d-5507c11f85dda4fbcdc9b36494551c933471a070.zip
external_mesa3d-5507c11f85dda4fbcdc9b36494551c933471a070.tar.gz
external_mesa3d-5507c11f85dda4fbcdc9b36494551c933471a070.tar.bz2
gallium/draw: add limits to the clip and cull distances
There are strict limits on those registers. Define the maximums and use them instead of magic numbers. Also allows us to add some extra sanity checks. Suggested by Brian. Signed-off-by: Zack Rusin <zackr@vmware.com> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Diffstat (limited to 'src/gallium/docs')
-rw-r--r--src/gallium/docs/source/tgsi.rst23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst
index f3aebb3..3f48b51 100644
--- a/src/gallium/docs/source/tgsi.rst
+++ b/src/gallium/docs/source/tgsi.rst
@@ -2435,6 +2435,29 @@ float32 signed distance to a plane. Primitives will be completely
discarded if the plane distance for all of the vertices in the
primitive are < 0. If a vertex has a cull distance of NaN, that
vertex counts as "out" (as if its < 0);
+The limits on both clip and cull distances are bound
+by the PIPE_MAX_CLIP_OR_CULL_DISTANCE_COUNT define which defines
+the maximum number of components that can be used to hold the
+distances and by the PIPE_MAX_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT
+which specifies the maximum number of registers which can be
+annotated with those semantics.
+
+
+TGSI_SEMANTIC_CLIPDIST
+""""""""""""""""""""""
+
+When components of vertex elements are identified this way, these
+values are each assumed to be a float32 signed distance to a plane.
+Primitive setup only invokes rasterization on pixels for which
+the interpolated plane distances are >= 0. Multiple clip planes
+can be implemented simultaneously, by annotating multiple
+components of one or more vertex elements with the above specified
+semantic. The limits on both clip and cull distances are bound
+by the PIPE_MAX_CLIP_OR_CULL_DISTANCE_COUNT define which defines
+the maximum number of components that can be used to hold the
+distances and by the PIPE_MAX_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT
+which specifies the maximum number of registers which can be
+annotated with those semantics.
Declaration Interpolate