gallium/docs: clarify TGSI_SEMANTIC_SAMPLEMASK, again
authorBrian Paul <brianp@vmware.com>
Mon, 12 Jun 2017 17:33:30 +0000 (11:33 -0600)
committerBrian Paul <brianp@vmware.com>
Tue, 13 Jun 2017 14:02:43 +0000 (08:02 -0600)
I've since discovered the fragment shader sample mask system value (which
corresponds to gl_SampleMaskIn).

v2: It's a system value, not a shader input.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/docs/source/tgsi.rst

index 7fb963fde5ad8eb484246519ad6254ef0165c174..c65d721decbae44bb90bad31d6e7ba76b1514637 100644 (file)
@@ -3297,10 +3297,17 @@ and Y values are used.
 TGSI_SEMANTIC_SAMPLEMASK
 """"""""""""""""""""""""
 
-For fragment shaders, this semantic label indicates that an output contains
-the sample mask used to disable further sample processing.  The output's
-type is uint[4] but only the X component is used (i.e. gl_SampleMask[0]).
-Each bit corresponds to one sample position (up to 32x MSAA is supported).
+For fragment shaders, this semantic label can be applied to either a
+shader system value input or output.
+
+For a system value, the sample mask indicates the set of samples covered by
+the current primitive.  If MSAA is not enabled, the value is (1, 0, 0, 0).
+
+For an output, the sample mask is used to disable further sample processing.
+
+For both, the register type is uint[4] but only the X component is used
+(i.e. gl_SampleMask[0]). Each bit corresponds to one sample position (up
+to 32x MSAA is supported).
 
 TGSI_SEMANTIC_INVOCATIONID
 """"""""""""""""""""""""""