// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!
    \example antialiasing
    \ingroup quick3d-examples
    \title Qt Quick 3D - Antialiasing Example
    \examplecategory {Data Visualization & 3D}
    \brief Demonstrates the antialiasing modes in Qt Quick 3D.
    \image antialiasing-example.png

    The \e {Antialiasing} example demonstrates how to control antialiasing in Qt Quick
    3D. It shows a simple scene that exhibits antialiasing artifacts. There is a
    simple Qt Quick user interface that allows choosing between the antialiasing
    types, and setting the options that control them.

    \section1 The test scene

    This example shows a simple scene that contains a sphere and two rotated cubes.
    The scene is set up so that it clearly shows jagged edges when antialiasing is not enabled.

    \section1 Controlling antialiasing

    Antialiasing is controlled by the \l [QML] {SceneEnvironment} object. The
    values are set based on the selection made in the user interface.

    The \l [QML] {SceneEnvironment::antialiasingMode}{antialiasing mode} can be set to \c NoAA to disable antialiasing,
    or to one of the following:
    \list
    \li \c SSAA for supersample antialiasing
    \li \c MSAA for multisample antialiasing
    \li \c ProgressiveAA for progressive antialiasing
    \endlist

    The \l [QML] {SceneEnvironment::antialiasingQuality}{antialiasing quality} can be set to \c Medium, \c High, or \c VeryHigh.

    In addition, \l [QML] {SceneEnvironment::temporalAAEnabled}{temporal antialiasing} can be enabled independently.

    \snippet antialiasing/main.qml scene environment

    See the \l{quick3d-asset-conditioning-anti-aliasing}{Anti-Aliasing} page in the asset conditioning section for further discussion on antialiasing.
*/
