
Name

    SGIX_tag_sample_buffer

Name Strings

    GL_SGIX_tag_sample_buffer

Version

    $Date: 2005/06/02 18:12:32 $ $Revision: 1.1 $

Number

    58

Dependencies

    SGIS_multisample is required.

Overview

    The extensions defines a special purpose fast multisample clear.
    This clear can be used with some restrictions as a significantly
    faster alternative to Clear(DEPTH_BUFFER_BIT).
     
    The extension is based on the RealityEngine architecture and will
    probably never be supported by any other architecture.

New Procedures and Functions

    void TagSampleBufferSGIX(void);

New Tokens

    None.
    
Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation)

    None.

Additions to Chapter 3 of the 1.0 Specification (Rasterization)

    None.

Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations
and the Frame Buffer)

    The specification of the sample buffer tagging operation is added
    to the GL Specification in section 4.2.3 "Clearing the Buffers".

    Each sample in the multisample buffer carries a tag that can be
    either set or cleared.  When a tag of a sample is set, a depth
    test against that sample always succeeds.  Note, however, that the
    stencil test (if enabled) still uses the stencil value that is
    stored at the sample. When a color is written into a sample, its
    tag is cleared.  Depth tests against a sample with a cleared tag
    use the depth value stored at the sample.  Initially the state of
    the tags of all samples is undefined.  Clearing the main color
    buffer clears all the tags. For a given pixel, the color values
    stored in the sample buffer are resolved into the main color
    buffer only when the tags of all samples of that pixel are
    cleared.

    The tags of all the samples can be set by calling TagSampleBuffer.
    
    When using TagSampleBuffer, it is the responsibility of the
    application to ensure that the tags of all samples are cleared
    (i.e., that a color is stored into each sample least once) before
    the frame is completed, as color values are only resolved for
    pixels for which all tags are cleared.

    The result of blending a color into a sample whose tag is set is
    undefined.

    When SAMPLE_BUFFER_SGIS is 0, TagSampleBuffer has no effect.
    
Additions to Chapter 5 of the 1.0 Specification (Special Functions)

    None.

Additions to Chapter 6 of the 1.0 Specification (State and State Requests)

    None.

Additions to the GLX Specification

    None.

Errors

    INVALID_OPERATION is generated if TagSampleBufferSGIX is called
    between the execution of Begin and the execution of the
    corresponding End.

New State

    None.
    
New Implementation Dependent State

    None.
