[Mesa-dev] [PATCH] gallium/docs: beef up the docs related to color clamping

Marek Olšák maraeo at gmail.com
Thu May 24 13:21:50 PDT 2012


Hi Brian,

This looks good to me.

Marek

On Thu, May 24, 2012 at 7:41 PM, Brian Paul <brianp at vmware.com> wrote:
> ---
>  src/gallium/docs/source/cso/rasterizer.rst |    9 +++++++++
>  src/gallium/docs/source/screen.rst         |   12 +++++++++---
>  2 files changed, 18 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/docs/source/cso/rasterizer.rst b/src/gallium/docs/source/cso/rasterizer.rst
> index 150e6df..f4e24f0 100644
> --- a/src/gallium/docs/source/cso/rasterizer.rst
> +++ b/src/gallium/docs/source/cso/rasterizer.rst
> @@ -20,6 +20,11 @@ OpenGL: glClampColor(GL_CLAMP_VERTEX_COLOR) in GL 3.0 or GL_ARB_color_buffer_flo
>
>  D3D11: seems always disabled
>
> +Note the PIPE_CAP_VERTEX_COLOR_CLAMPED query indicates whether or not the
> +driver supports this control.  If it's not supported, the state tracker may
> +have to insert extra clamping code.
> +
> +
>  clamp_fragment_color
>  ^^^^^^^^^^^^^^^^^^^^
>
> @@ -30,6 +35,10 @@ OpenGL: glClampColor(GL_CLAMP_FRAGMENT_COLOR) in GL 3.0 or ARB_color_buffer_floa
>
>  D3D11: seems always disabled
>
> +Note the PIPE_CAP_FRAGMENT_COLOR_CLAMPED query indicates whether or not the
> +driver supports this control.  If it's not supported, the state tracker may
> +have to insert extra clamping code.
> +
>
>  Shading
>  -------
> diff --git a/src/gallium/docs/source/screen.rst b/src/gallium/docs/source/screen.rst
> index 2bddf1b..17adf4d 100644
> --- a/src/gallium/docs/source/screen.rst
> +++ b/src/gallium/docs/source/screen.rst
> @@ -83,17 +83,23 @@ The integer capabilities:
>  * ``PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR``: Whether the driver supports
>   per-instance vertex attribs.
>  * ``PIPE_CAP_FRAGMENT_COLOR_CLAMPED``: Whether fragment color clamping is
> -  supported.
> +  supported.  That is, is the pipe_rasterizer_state::clamp_fragment_color
> +  flag supported by the driver?  If not, the state tracker will insert
> +  clamping code into the fragment shaders when needed.
> +
>  * ``PIPE_CAP_MIXED_COLORBUFFER_FORMATS``: Whether mixed colorbuffer formats are
>   supported, e.g. RGBA8 and RGBA32F as the first and second colorbuffer, resp.
>  * ``PIPE_CAP_VERTEX_COLOR_UNCLAMPED``: Whether the driver is capable of
>   outputting unclamped vertex colors from a vertex shader. If unsupported,
>   the vertex colors are always clamped. This is the default for DX9 hardware.
>  * ``PIPE_CAP_VERTEX_COLOR_CLAMPED``: Whether the driver is capable of
> -  clamping vertex colors when they come out of a vertex shader. If unsupported,
> +  clamping vertex colors when they come out of a vertex shader, as specified
> +  by the pipe_rasterizer_state::clamp_vertex_color flag.  If unsupported,
>   the vertex colors are never clamped. This is the default for DX10 hardware.
>   If both clamped and unclamped CAPs are supported, the clamping can be
> -  controlled through pipe_rasterizer_state.
> +  controlled through pipe_rasterizer_state.  If the driver cannot do vertex
> +  color clamping, the state tracker may insert clamping code into the vertex
> +  shader.
>  * ``PIPE_CAP_GLSL_FEATURE_LEVEL``: Whether the driver supports features
>   equivalent to a specific GLSL version. E.g. for GLSL 1.3, report 130.
>  * ``PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION``: Whether quads adhere to
> --
> 1.7.3.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list