diff options
author | Topi Reinio <topi.reinio@qt.io> | 2018-04-17 12:21:10 +0200 |
---|---|---|
committer | Topi Reiniƶ <topi.reinio@qt.io> | 2018-04-20 10:17:14 +0000 |
commit | bb09fa7b64b288a68edc61c52ea8467f96eb3924 (patch) | |
tree | a34ce86e2112890f99f762639997e326c5fb5f8e /src/animation | |
parent | c5fb8786d31fa0e257c9c50a7ea74610073b2c85 (diff) |
Revert "Doc: Divide documentation into submodules"
This reverts commit c8964b8f1cf56718a189b0f57bad446cec30a8b8.
QDoc now supports documentation-specific custom module headers
and include headers that allow us to keep using a single
documentation project that covers multiple modules.
Change-Id: I84706a7149097a6b03f0f266e55d6f712a6c773e
Reviewed-by: Martin Smith <martin.smith@qt.io>
Diffstat (limited to 'src/animation')
-rw-r--r-- | src/animation/animation.pro | 2 | ||||
-rw-r--r-- | src/animation/doc/qt3danimation.qdocconf | 43 | ||||
-rw-r--r-- | src/animation/doc/src/qt3danimation-module.qdoc | 234 |
3 files changed, 0 insertions, 279 deletions
diff --git a/src/animation/animation.pro b/src/animation/animation.pro index 066985760..b7d08416c 100644 --- a/src/animation/animation.pro +++ b/src/animation/animation.pro @@ -21,6 +21,4 @@ HEADERS += \ SOURCES += \ animationlogging.cpp -QMAKE_DOCS = $$PWD/doc/qt3danimation.qdocconf - load(qt_module) diff --git a/src/animation/doc/qt3danimation.qdocconf b/src/animation/doc/qt3danimation.qdocconf deleted file mode 100644 index 74c185e7f..000000000 --- a/src/animation/doc/qt3danimation.qdocconf +++ /dev/null @@ -1,43 +0,0 @@ -include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) -include(../../doc/qt3d-config.qdocconf) - -project = Qt3DAnimation -description = Qt 3D Animation Reference Documentation -version = $QT_VERSION - -qhp.projects = Qt3DAnimation - -qhp.Qt3DAnimation.file = qt3danimation.qhp -qhp.Qt3DAnimation.namespace = org.qt-project.qt3danimation.$QT_VERSION_TAG -qhp.Qt3DAnimation.virtualFolder = qt3danimation -qhp.Qt3DAnimation.indexTitle = Qt 3D Animation -qhp.Qt3DAnimation.indexRoot = - -qhp.Qt3DAnimation.filterAttributes = qt3danimation $QT_VERSION qtrefdoc -qhp.Qt3DAnimation.customFilters.Qt.name = Qt3DAnimation $QT_VERSION -qhp.Qt3DAnimation.customFilters.Qt.filterAttributes = qt3danimation $QT_VERSION - -qhp.Qt3DAnimation.subprojects = classes qmltypes - -qhp.Qt3DAnimation.subprojects.classes.title = C++ Classes -qhp.Qt3DAnimation.subprojects.classes.indexTitle = Qt 3D Animation C++ Classes -qhp.Qt3DAnimation.subprojects.classes.selectors = class doc:headerfile -qhp.Qt3DAnimation.subprojects.classes.sortPages = true - -qhp.Qt3DAnimation.subprojects.qmltypes.title = QML Types -qhp.Qt3DAnimation.subprojects.qmltypes.indexTitle = Qt 3D Animation QML Types -qhp.Qt3DAnimation.subprojects.qmltypes.selectors = qmltype -qhp.Qt3DAnimation.subprojects.qmltypes.sortPages = true - -tagfile = qt3danimation.tags - -depends += qtcore qtgui qtqml qtquick qtdoc qmake - -# dependencies to other Qt 3D modules -depends += qt3d qt3dcore qt3drender qt3dlogic \ - qt3dinput qt3dextras qt3dscene2d - -sourcedirs += .. -headerdirs += .. -imagedirs += images -exampledirs += snippets diff --git a/src/animation/doc/src/qt3danimation-module.qdoc b/src/animation/doc/src/qt3danimation-module.qdoc deleted file mode 100644 index 918c401f9..000000000 --- a/src/animation/doc/src/qt3danimation-module.qdoc +++ /dev/null @@ -1,234 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). -** Contact: https://www.qt.io/licensing/ -** -** 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 The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/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: https://www.gnu.org/licenses/fdl-1.3.html. -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \module Qt3DAnimation - \title Qt 3D Animation C++ Classes - \preliminary - - \keyword Qt 3D Animation - \brief The Qt 3D Animation module provides a set of prebuilt elements to help - you get started with Qt 3D. - - This module is still in development but is available as a technology preview. - This means it is unstable, likely to change and provided as a convenience only. - - \ingroup modules - \ingroup qt3d-modules-preliminary - \qtvariable 3danimation - - \code - #include <Qt3DAnimation> - \endcode - - To link against the corresponding C++ library, add the following to your qmake project file: - - \badcode - QT += 3danimation - \endcode - - Classes, types, and functions are declared under the \l [Qt3DAnimation]{Qt3DAnimation} namespace. - - \section1 Overview - - The Qt 3D Animation module adds support for specifying and using animations - that can be applied to the properties of objects in your simulation. - Initially this module supports key frame based animations. That is, - properties have values 'keyed' at certain times and when played back the - property values are calculated by interpolating between the known values - within the key frames. All of the animation evaluation within the Qt 3D - Animation module takes place on the Qt 3D threadpool. This allows the - animations to run smoothly and to scale up to high throughput. - - \section2 Animation Data - - Key frame animation data can either be created programmatically via the Qt - 3D Animation APIs such as Qt3DAnimation::QKeyFrameData or it can come from - digital content creation (DCC) tools such as Blender, Maya or 3D Studio - Max. Qt 3D provides an example export script for animation data for - Blender. The format consumed by Qt 3D Animation at present is a simple JSON - based format. This allows both developers and artists to easily work with - animation data. More formats optimised for runtime consumption will be - added later. - - The key frame animation data can be loaded from file using the - Qt3DAnimation::QAnimationClipLoader class. To specify animation data - programmatically use the Qt3DAnimation::QAnimationClip class. - - By default, the key frame data is specified using cubic bezier curves. This - allows smooth animations to be created from a small number of key frame - data points. Other interpolation types will be added later. - - \section2 Playing Animations - - In addition to the animation data containing the key frames, Qt 3D - Animation also provides APIs for playing the animations and mapping the - resulting property values onto properties of objects in your simulation. - There are currently two ways of playing the animations: - - \list - \li Qt3DAnimation::QClipAnimator - \li Qt3DAnimation::QBlendedClipAnimator - \endlist - - Both of these are implemented as subclasses of Qt3DCore::QComponent meaning - that objects of these types can be aggregated by Qt3DCore::QEntity objects - to add animation capabilities to your simulated entities. - - \section2 Simple Animation Playback - - The Qt3DAnimation::QClipAnimator class allows the playback of a single - Qt3DAnimation::QAbstractAnimationClip at a time. To add an animation to an - entity, simply add an instance of the Qt3DAnimation::QClipAnimator class to - your entity's \c components property. - - The Qt 3D Animation module takes a slightly different approach to - QPropertyAnimation and AbstractAnimation. With those animation frameworks, - the animation specifies both the animation values \e {and} the target - objects and properties. The animation components in Qt 3D separate these - two orthogonal concepts. For example, the Qt3DAnimation::QClipAnimator - component has a \c clip property for specifying the animation data - (Qt3DAnimation::QAnimationClip or Qt3DAnimation::QAnimationClipLoader). - - This allows calculation of the animated values, but more information is - needed in order to map these values onto properties of objects. This is - accomplished with the a Qt3DAnimation::QChannelMapper which contains a list - of Qt3DAnimation::QChannelMapping objects. A Qt3DAnimation::QChannelMapping - is used to map a specific channel from an animation clip onto a named - property of a target object. By separating the animation data and property - mappings like this, the same animation can be applied to many objects - without needing to have multiple copies of the animation data or objects. - It also allows animation data to easily be retargeted to other objects. - - \section2 Blended Animation Playback - - The Qt3DAnimation::QBlendedClipAnimator component allows to go beyond what - is possible with Qt3DAnimation::QClipAnimator by blending several animation - clips together before applying the property changes to the target - properties. The animator component still takes a channel mapper just like - the standard Qt3DAnimation::QClipAnimator component. However, instead of - specifying a single animation clip, it is necessary to set the \c blendTree - property to point to the root node of a \e {blend tree}. - - A blend tree is a data structure representing how animation clips get - aggregated or blended together as the function of properties on the blend - tree nodes. The currently supported set of blend tree nodes are: - - \list - \li Qt3DAnimation::QClipBlendValue - \li Qt3DAnimation::QLerpClipBlend - \li Qt3DAnimation::QAdditiveClipBlend - \endlist - - The source animation clip inputs are specified as leaf nodes in the blend - tree using instances of the Qt3DAnimation::QClipBlendValue class. These - animation clips can be combined in a large number of ways. For now the Qt3D - Animation module provides linear interpolation (LERP) and additive blend - operations. More blend node types will be added over time. These are - expected to include at least a generalised LERP node and a barycentric LERP - node. - - As an example consider the following blend tree: - - \badcode - Clip0---- - | - Lerp Node---- - | | - Clip1---- Additive Node - | - Clip2---- - \endcode - - Let's assume that \c Clip0 represents a walk animation cycle with a - duration of 3 seconds and that \c Clip1 is a run animation cycle with a - duration of 2 seconds. These are both inputs (and dependencies) of the \c - Lerp blend node. The result of evaluating the \c Lerp node depends upon the - \c blendFactor property of the \c Lerp node. This could be bound to the - speed of a humanoid character entity for example. As the speed of the - character increases the animation gradually cross-fades from the walk - animation in \c Clip0 to the run animation in \c Clip1. - - Furthermore, let's assume that \c Clip2 represents some variation animation - that can be added on (waving arms or shaking head for e.g.). The amount of - this additive clip that is added can be controlled by the \c additiveFactor - property on the \c Additive blend node. - - When evaluating a blend tree, normalized time (or phase) is used so that - clips of different durations can be blended together without problems. For - example, even though the walk and run animation clips are of different - lengths, as long as they are created by the animator such that the - foot-falls line up at the same phase these can be nicely interpolated. - - The implication of this is that the duration of the blended clip is - actually a function of the blend factors of the nodes in the tree. - Considering only the \c Lerp node in the above example, when the blend - factor of the \c Lerp node is 0, only the walk animation in Clip0 is used - resulting in a duration of 3 seconds. With a blend factor of 1 the - resulting duration will be 2 seconds. For intermediate blend factors, the - duration will be linearly interpolated between 3 and 2 seconds. - - By definining your own blend trees, you have complete control over how to - combine your collection of input animation clips. The blend tree can be - configured by the properties on the blend nodes. Note also that the - properties on the blend nodes themselves are just standard properties, so - these could in turn be driven by other animations if desired. - - \section1 Reference - \list - \li \l {Qt 3D Animation C++ Classes} - \li \l {Qt 3D Examples} - \endlist - */ - -/*! - \namespace Qt3DAnimation - \inmodule Qt3DAnimation - \ingroup qt3d-namespaces - - \brief Contains classes from the Qt3DAnimation module. -*/ - -/*! - \qmlmodule Qt3D.Animation 2.9 - \title Qt 3D Qt3DAnimation QML Types - \preliminary - - \ingroup qmlmodules - \ingroup qt3d-qmlmodules-preliminary - - \brief Provides Qt 3D QML types for the animation module. - - To import and use the module's QML types, use the following statement: - - \badcode - import Qt3D.Animation 2.9 - \endcode - - \section1 QML Types -*/ |