merge gallium docs into main docs
[mesa.git] / src / gallium / docs / source / cso / blend.rst
diff --git a/src/gallium/docs/source/cso/blend.rst b/src/gallium/docs/source/cso/blend.rst
deleted file mode 100644 (file)
index be5a2ef..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-.. _blend:
-
-Blend
-=====
-
-This state controls blending of the final fragments into the target rendering
-buffers.
-
-Blend Factors
--------------
-
-The blend factors largely follow the same pattern as their counterparts
-in other modern and legacy drawing APIs.
-
-Dual source blend factors are supported for up to 1 MRT, although
-you can advertise > 1 MRT, the stack cannot handle them for a few reasons.
-There is no definition on how the 1D array of shader outputs should be mapped
-to something that would be a 2D array (location, index). No current hardware
-exposes > 1 MRT, and we should revisit this issue if anyone ever does.
-
-Logical Operations
-------------------
-
-Logical operations, also known as logicops, lops, or rops, are supported.
-Only two-operand logicops are available. When logicops are enabled, all other
-blend state is ignored, including per-render-target state, so logicops are
-performed on all render targets.
-
-.. warning::
-   The blend_enable flag is ignored for all render targets when logical
-   operations are enabled.
-
-For a source component `s` and destination component `d`, the logical
-operations are defined as taking the bits of each channel of each component,
-and performing one of the following operations per-channel:
-
-* ``CLEAR``: 0
-* ``NOR``: :math:`\lnot(s \lor d)`
-* ``AND_INVERTED``: :math:`\lnot s \land d`
-* ``COPY_INVERTED``: :math:`\lnot s`
-* ``AND_REVERSE``: :math:`s \land \lnot d`
-* ``INVERT``: :math:`\lnot d`
-* ``XOR``: :math:`s \oplus d`
-* ``NAND``: :math:`\lnot(s \land d)`
-* ``AND``: :math:`s \land d`
-* ``EQUIV``: :math:`\lnot(s \oplus d)`
-* ``NOOP``: :math:`d`
-* ``OR_INVERTED``: :math:`\lnot s \lor d`
-* ``COPY``: :math:`s`
-* ``OR_REVERSE``: :math:`s \lor \lnot d`
-* ``OR``: :math:`s \lor d`
-* ``SET``: 1
-
-.. note::
-   The logical operation names and definitions match those of the OpenGL API,
-   and are similar to the ROP2 and ROP3 definitions of GDI. This is
-   intentional, to ease transitions to Gallium.
-
-Members
--------
-
-These members affect all render targets.
-
-dither
-%%%%%%
-
-Whether dithering is enabled.
-
-.. note::
-   Dithering is completely implementation-dependent. It may be ignored by
-   drivers for any reason, and some render targets may always or never be
-   dithered depending on their format or usage flags.
-
-logicop_enable
-%%%%%%%%%%%%%%
-
-Whether the blender should perform a logicop instead of blending.
-
-logicop_func
-%%%%%%%%%%%%
-
-The logicop to use. One of ``PIPE_LOGICOP``.
-
-independent_blend_enable
-   If enabled, blend state is different for each render target, and
-   for each render target set in the respective member of the rt array.
-   If disabled, blend state is the same for all render targets, and only
-   the first member of the rt array contains valid data.
-rt
-   Contains the per-rendertarget blend state.
-alpha_to_coverage
-   If enabled, the fragment's alpha value is used to override the fragment's
-   coverage mask.  The coverage mask will be all zeros if the alpha value is
-   zero.  The coverage mask will be all ones if the alpha value is one.
-   Otherwise, the number of bits set in the coverage mask will be proportional
-   to the alpha value.  Note that this step happens regardless of whether
-   multisample is enabled or the destination buffer is multisampled.
-alpha_to_one
-   If enabled, the fragment's alpha value will be set to one.  As with
-   alpha_to_coverage, this step happens regardless of whether multisample
-   is enabled or the destination buffer is multisampled.
-max_rt
-   The index of the max render target (irrespecitive of whether independent
-   blend is enabled), ie. the number of MRTs minus one.  This is provided
-   so that the driver can avoid the overhead of programming unused MRTs.
-
-
-Per-rendertarget Members
-------------------------
-
-blend_enable
-   If blending is enabled, perform a blend calculation according to blend
-   functions and source/destination factors. Otherwise, the incoming fragment
-   color gets passed unmodified (but colormask still applies).
-rgb_func
-   The blend function to use for rgb channels. One of PIPE_BLEND.
-rgb_src_factor
-   The blend source factor to use for rgb channels. One of PIPE_BLENDFACTOR.
-rgb_dst_factor
-   The blend destination factor to use for rgb channels. One of PIPE_BLENDFACTOR.
-alpha_func
-   The blend function to use for the alpha channel. One of PIPE_BLEND.
-alpha_src_factor
-   The blend source factor to use for the alpha channel. One of PIPE_BLENDFACTOR.
-alpha_dst_factor
-   The blend destination factor to use for alpha channel. One of PIPE_BLENDFACTOR.
-colormask
-   Bitmask of which channels to write. Combination of PIPE_MASK bits.