/****************************************************************************
**
** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.  For licensing terms and
** conditions see http://qt.digia.com/licensing.  For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file.  Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: http://www.gnu.org/copyleft/fdl.html.
** $QT_END_LICENSE$
**
****************************************************************************/


/*!
\page qtquick-effects-topic.html
\title Important Concepts In Qt Quick - Graphical Effects
\brief Overview of graphical effects concepts

\section1 Graphical Effects and Particles

Visually appealing user-interfaces are more engaging than lacklustre ones.
That said, the designer must bear in mind that visual effects simply provide
a useful way to subtlely communicate to the user (for example, which visual
item is active, or how focus is being transferred).  Over-use of visual
effects can actually detract from the user-experience.

\section1 Visual Transformation

Visual objects can be transformed.  For example, they can be scaled or rotated.
These sort of transformations can provide hints about focus or selection, and
can provide intuitive hints about what events are occurring in an application.

For information about visual transformations to visual objects, see the
page titled \l{qtquick-effects-transformations.html}
{Qt Quick Transformation Types}.

\section1 Shader Effects

Shader effects allow the full, raw power of a graphics processing unit to be
utilized directly via vertex and fragment shaders. Using too many shader effects
can result in increased power usage and sometimes slow performance, but if
used sparingly and carefully, a shader can allow complex and visually appealing
effects to be applied to a visual object (for example, ripples in water).

For information about shader effects, see the \l {ShaderEffect}
reference documentation.

\section1 Particles

A particle system allows explosions, fireworks, smoke, fog and wind effects to
be simulated and displayed to the user.  Qt Quick provides a particle system
which allows these sort of complex, 2D simulations to be performed, including
support for environmental effects like gravity and turbulence.
Particles are most commonly used to add subtle and visually appealing effects
to currently selected items in lists or in activity notifiers, and in games.

For information about particles, see the documentation about the
\l{qtquick-effects-particles.html}{Qt Quick Particle System}.

\section1 Sprites

A sprite is an animated image made up of frames.  Sprites are commonly found
in games.  Qt Quick provides a visual type to display sprites, as well as a
complex, stochastic, frame-transition controller for more complex applications
which use sprites extensively (such as games).

For information about sprite animations, see the page titled
\l{qtquick-effects-sprites.html}{Sprite Animations}.

\section1 Opacity

Visual objects can be opaque or translucent. For example, an application
can make one visual object opaque and other visual objects translucent
to focus the users attention on the opaque one. This is controlled using the
\c{opacity} property of the Item.

For more information about opacity, see the \l {Item} documentation.

*/

