Qt 3D Studio OpenGL Runtime C++ Classes | OpenGL Runtime 2.7.0

OpenGL Runtime | OpenGL Runtime | Qt 3D Studio OpenGL Runtime C++ Classes

Qt 3D Studio OpenGL Runtime 2.7 Manual

# Qt 3D Studio OpenGL Runtime C++ Classes

The Qt 3D Studio OpenGL Runtime provides a number of C++ classes to integrate and control Qt 3D Studio presentations in Qt applications. More...

## Classes

Q3DSDataInput | Controls a data input entry in a Qt 3D Studio presentation. This class is a convenience class for controlling a data input in a presentation. DataInput provides a clean contract between the presentation design and the code. It hides the presentation details from the code while providing a contractual access point to code for controlling aspects of the presentation (e.g. timeline of a subpresentation). It also allows the design to use a single DataInput to drive multiple aspects of the design (e.g. DataInput for speed can change the color of the speedometer, angle of the needle)
Q3DSDataOutput | Provides notifications from data output entries in Qt 3D Studio presentation
Q3DSElement | Controls a scene object (element) in a Qt 3D Studio presentation
Q3DSGeometry | Represents a mesh geometry
Q3DSPresentation | Represents a Qt 3D Studio presentation
Q3DSQmlStream | Allows streaming of QML as subpresentation
Q3DSSceneElement | Controls the special Scene or Component scene objects in a Qt 3D Studio presentation
Q3DSSubPresentationSettings | Settings for subpresentations
Q3DSSurfaceViewer | Renders a Qt 3D Studio presentation on a QWindow or an offscreen render target using OpenGL
Q3DSViewerSettings | Qt 3D Studio presentation viewer settings

## Detailed Description

To include the definitions of the module's classes, use the following directive:

      #include <QtStudio3D>

To link against the module, add this line to your qmake `.pro` file:

      QT += studio3d

### Integrating

The main class is Q3DSSurfaceViewer. Q3DSSurfaceViewer allows targeting a QWindow or an offscreen render target (an OpenGL texture).

Note: Qt applications based on QML and Qt Quick will rather want to use the Studio3D type from Qt 3D Studio OpenGL Runtime QML Types.

### Controlling

Each Q3DSSurfaceViewer instance exposes a Q3DSPresentation. This, possibly in combination with Q3DSDataInput or Q3DSElement objects, allows:

- changing scene object properties (for example, the transform of a model, colors and other settings of a material, etc.),
- changing slides (thus starting the relevant animations and applying the scene object property changes associated with the new slide),
- and controlling the timeline (the current playback position for the key-frame based animations) both on the main scene and on individual Component nodes.

### Classes