Revision control
++ // Copyright (C) 2024 The Qt Company Ltd.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
++
++ /*!
++ \example xr_simple
++ \ingroup quick3d-examples
++ \ingroup qt3dxr-examples
++ \title Qt Quick 3D - XR Simple Example
++ \examplecategory {3D}
++ \brief Demonstrates setting up a simple VR scene with Qt Quick 3D XR.
++ \image xrsimple-example.jpg
++ {VR scene with text Qt 6 in VR and three colored cubes}
++
++ This example gives an introductory overview of the basic \qxr features.
++
++ The main difference when writing an XR application is that the root item of
++ our main.qml is an \l XrView instead of a Window with a View3D:
++
++ \snippet xr_simple/main.qml XrView
++
++ The XrView contains the 3D scene, just like a View3D. In this example we add an
++ \l XrErrorDialog that will show an error dialog if we get an error initializing the
++ VR headset when streaming from a desktop PC. We also specify that the reference frame
++ for this application is measured from the floor of the room where the user is located.
++ That is, the floor will be at \c {y = 0}.
++
++ The origin of the reference frame is defined by the \l XrOrigin:
++
++ \snippet xr_simple/main.qml XrOrigin
++
++ In this example we add two \l XrController items, one for each hand. They will track
++ the position and orientation of the user's hands. Since XrController is a \l Node, any
++ children will automatically follow the hand movements. In this case, we use a simple
++ model of a cube to visualize the controller's position.
++
++ The rest of main.qml is a normal Qt Quick 3D scene.
++ */