diff options
author | Johanna Vanhatapio <johanna.vanhatapio@qt.io> | 2021-08-23 17:29:27 +0300 |
---|---|---|
committer | Johanna Vanhatapio <johanna.vanhatapio@qt.io> | 2021-08-24 13:00:58 +0000 |
commit | 4c6d7c63b7d0af75977e5f99244e4376ef3d4dc6 (patch) | |
tree | ebb3c4a9f62c26b63e58f3933cc556e7afef70cd | |
parent | da822530956fc7ea0c79ef19b5c1466315bc724e (diff) |
Doc: Describe Joint and Skeleton components
Task-number: QDS-4888
Change-Id: I9a9664cb327f2ddad2025d5c38bb2f3b1bebb887
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Inho Lee <inho.lee@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
8 files changed, 82 insertions, 2 deletions
diff --git a/doc/qtcreator/src/qtcreator-toc.qdoc b/doc/qtcreator/src/qtcreator-toc.qdoc index dfb84f20f7..4339674313 100644 --- a/doc/qtcreator/src/qtcreator-toc.qdoc +++ b/doc/qtcreator/src/qtcreator-toc.qdoc @@ -132,6 +132,7 @@ \li \l{Animations} \li \l{3D Views} \li \l{Group} + \li \l{Skeletal Animation} \li \l{3D Models} \li \l{Materials and Shaders} \li \l{Textures} diff --git a/doc/qtcreator/src/qtquick/library/qtquick-preset-components.qdoc b/doc/qtcreator/src/qtquick/library/qtquick-preset-components.qdoc index d9ac4b9387..68c1875c06 100644 --- a/doc/qtcreator/src/qtquick/library/qtquick-preset-components.qdoc +++ b/doc/qtcreator/src/qtquick/library/qtquick-preset-components.qdoc @@ -70,6 +70,7 @@ \list \li \l {3D Views} \li \l {Group} + \li \l {Skeletal Animation} \li \l {3D Models} \li \l {Materials and Shaders} \li \l {Textures} diff --git a/doc/qtcreator/src/qtquick/qtquick-library.qdoc b/doc/qtcreator/src/qtquick/qtquick-library.qdoc index 8dc9c3c44a..ae206f3e4f 100644 --- a/doc/qtcreator/src/qtquick/qtquick-library.qdoc +++ b/doc/qtcreator/src/qtquick/qtquick-library.qdoc @@ -71,6 +71,7 @@ \li \l Animations \li \l{3D Views} \li \l{Group} + \li \l{Skeletal Animation} \li \l{3D Models} \li \l{Materials and Shaders} \li \l{Textures} diff --git a/doc/qtdesignstudio/images/studio-3d-joint-properties.png b/doc/qtdesignstudio/images/studio-3d-joint-properties.png Binary files differnew file mode 100644 index 0000000000..71beb6fd3e --- /dev/null +++ b/doc/qtdesignstudio/images/studio-3d-joint-properties.png diff --git a/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc b/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc index 9442cbfd6d..ceb5d45861 100644 --- a/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc +++ b/doc/qtdesignstudio/src/qtdesignstudio-toc.qdoc @@ -89,6 +89,7 @@ \li \l Animations \li \l{3D Views} \li \l{Group} + \li \l{Skeletal Animation} \li \l{3D Models} \li \l{Materials and Shaders} \li \l{Textures} diff --git a/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-model.qdoc b/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-model.qdoc index 2a7b346d60..26d0685296 100644 --- a/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-model.qdoc +++ b/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-model.qdoc @@ -27,7 +27,7 @@ /*! \page studio-3d-model.html - \previouspage studio-3d-node.html + \previouspage studio-skeletal-components.html \nextpage studio-3d-materials.html \title 3D Models diff --git a/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-node.qdoc b/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-node.qdoc index 701683979c..9c50ec4232 100644 --- a/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-node.qdoc +++ b/doc/qtdesignstudio/src/qtquick3d-editor/qtdesignstudio-3d-node.qdoc @@ -26,7 +26,7 @@ /*! \page studio-3d-node.html \previouspage quick-animations.html - \nextpage studio-3d-model.html + \nextpage studio-skeletal-components.html \title Group diff --git a/doc/qtdesignstudio/src/qtquick3d-editor/studio-skeletal-components.qdoc b/doc/qtdesignstudio/src/qtquick3d-editor/studio-skeletal-components.qdoc new file mode 100644 index 0000000000..c6edcc7197 --- /dev/null +++ b/doc/qtdesignstudio/src/qtquick3d-editor/studio-skeletal-components.qdoc @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2021 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Design Studio documentation. +** +** 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. +** +****************************************************************************/ + +/*! + \page studio-skeletal-components.html + \previouspage studio-3d-node.html + \nextpage studio-3d-model.html + + \title Skeletal Animation + + Skeletal animation is a technique used in computer animation. In skeletal + animation, a character is represented in the form of a surface representation + (skin or mesh), and a skeleton. This portrays how the character can move, + inspired by how a physical skeleton works for vertebrates. The "bones" of the + skeleton are represented by a hierarchy of joint nodes. + + The normal workflow is to use an external content creation tool to define + the skeleton and the skin (this is sometimes also referred to as rigging), + and import them to \QDS. You can then create skeletal animations using + \uicontrol Skeleton and \uicontrol Joint components available in + \uicontrol Library > \uicontrol Components > \uicontrol {Qt Quick 3D} > + \uicontrol {Qt Quick 3D}. + + \section1 Skeleton + + A \uicontrol Skeleton component determines a skeletal animation hierarchy + and defines how a model can be animated using skeletal animation. + It contains a hierarchy of \uicontrol Joint nodes. Each joint can be + transformed for a skinning animation. + + \section1 Joint + + A \uicontrol Joint defines a node in a skeletal animation hierarchy + and functions similarly to joints between bones in a human skeleton. + It is a transformable node that must be contained inside a + \uicontrol Skeleton component. + + Define properties for \uicontrol Joint components in \uicontrol Properties + > \uicontrol Joint. + + \image studio-3d-joint-properties.png "Joint properties in the Properties view" + + Use the \uicontrol Index property to define the index of this joint. + This index value is used in the \uicontrol {Joint semantic} custom geometry + attribute. + + \note The \uicontrol Index values must be unique within the same + \uicontrol Skeleton. + + Use the \uicontrol {Skeleton root} property to define the \uicontrol Skeleton + that contains the \uicontrol Joint. Do note that all the \uicontrol Joints + in the \uicontrol Skeleton must have the same \uicontrol {Skeleton root} + for the animation to work properly. +*/ |