Qt 5.7 | Qt 3D | Qt 3D C++ Classes

Qt 5.7.1 Reference Documentation

# Qt 3D C++ Classes

The Qt 3D module provides the foundations and core types used for near-realtime simulations built on the Qt 3D framework.

## Namespaces

Qt3DCore | Contains classes that are the foundation for Qt 3D simulation framework, as well as classes that provide the ability to render using the Qt 3D framework
Qt3DExtras | Contains classes from the Qt3DExtras module
Qt3DRender | Contains classes that enable 2D and 3D rendering
Qt3DInput | Contains classes that enable user input
Qt3DLogic | Contains classes that enable frame synchronization

## Classes

### Qt 3D Core Module

Qt3DCore::QAbstractAspect | The base class for aspects that provide a vertical slice of behavior
Qt3DCore::QAspectEngine | Responsible for handling all the QAbstractAspect subclasses that have been registered with the scene
Qt3DCore::QComponentAddedChange | Used to notify when a component is added to an entity
Qt3DCore::QComponentRemovedChange | Used to notify when a component is removed from an entity
Qt3DCore::QDynamicPropertyUpdatedChange | Used to notify when a dynamic property value is updated
Qt3DCore::QNodeCreatedChange | Used to notify when a node is created
Qt3DCore::QNodeCreatedChangeBase | The base class for all NodeCreated QSceneChange events
Qt3DCore::QNodeDestroyedChange | Used to notify when a node is destroyed
Qt3DCore::QPropertyNodeAddedChange | Used to notify when a node is added to a property
Qt3DCore::QPropertyNodeRemovedChange | Used to notify when a node is removed from a property
Qt3DCore::QPropertyUpdatedChange | Used to notify when a property value is updated
Qt3DCore::QPropertyUpdatedChangeBase | The base class for all PropertyUpdated QSceneChange events
Qt3DCore::QPropertyValueAddedChange | Used to notify when a value is added to a property
Qt3DCore::QPropertyValueAddedChangeBase | The base class for all PropertyValueAdded QSceneChange events
Qt3DCore::QPropertyValueRemovedChange | Used to notify when a value is added to a property
Qt3DCore::QPropertyValueRemovedChangeBase | The base class for all PropertyValueRemoved QSceneChange events
Qt3DCore::QSceneChange | Base class for changes that can be sent and received by Qt3D's change notification system
Qt3DCore::QStaticPropertyUpdatedChangeBase | The base class for all static PropertyUpdated QSceneChange events
Qt3DCore::QStaticPropertyValueAddedChangeBase | The base class for all static PropertyValueAdded QSceneChange events
Qt3DCore::QStaticPropertyValueRemovedChangeBase | The base class for all static PropertyValueRemoved QSceneChange events
Qt3DCore::QAspectJob | Base class for jobs executed in an aspect
Qt3DCore::QBackendNode | Base class for all Qt3D backend nodes
Qt3DCore::QBackendNodeMapper | Creates and maps backend nodes to their respective frontend nodes
Qt3DCore::QComponent | Base class of scene nodes that can be aggregated by Qt3DCore::QEntity instances as a component
Qt3DCore::QEntity | Qt3DCore::QEntity is a Qt3DCore::QNode subclass that can aggregate several Qt3DCore::QComponent instances that will specify its behavior
Qt3DCore::QNode | The base class of all Qt3D node classes used to build a Qt3D scene
Qt3DCore::QNodeId | Uniquely identifies a QNode
Qt3DCore::QTransform | Used to perform transforms on meshes
Qt3DCore::Quick::QQmlAspectEngine | Environment for the QAspectEngine and a method for instantiating QML components

### Qt 3D Input Module

Qt3DInput::QAbstractActionInput | The base class for the Action Input and all Aggregate Action Inputs
Qt3DInput::QAbstractAxisInput | QAbstractActionInput is the base class for all Axis Input
Qt3DInput::QAbstractPhysicalDevice | The base class used by Qt3d to interact with arbitrary input devices
Qt3DInput::QAction | Links a set of QAbstractActionInput that trigger the same event
Qt3DInput::QActionInput | Stores Device and Buttons used to trigger an input event
Qt3DInput::QAnalogAxisInput | An axis input controlled by an analog input The axis value is controlled like a traditional analog input such as a joystick
Qt3DInput::QAxis | Stores QAbstractAxisInputs used to trigger an input event
Qt3DInput::QAxisSetting | Stores settings for the specified list of Axis
Qt3DInput::QButtonAxisInput | An axis input controlled by buttons The axis value is controlled by buttons rather than a traditional analog input such as a joystick
Qt3DInput::QInputAspect | Responsible for creating physical devices and handling associated jobs
Qt3DInput::QInputChord | Represents a set of QAbstractActionInput's that must be triggerd at once
Qt3DInput::QInputSequence | Represents a set of QAbstractActionInput's that must be triggerd one after the other
Qt3DInput::QInputSettings | Holds the pointer to an input event source object
Qt3DInput::QKeyboardDevice | In charge of dispatching keyboard events to attached QQKeyboardHandler objects
Qt3DInput::QKeyboardHandler | Provides keyboard event notification
Qt3DInput::QKeyEvent | Event type send by KeyBoardHandler
Qt3DInput::QLogicalDevice | Allows the user to define a set of actions that they wish to use within an application
Qt3DInput::QMouseDevice | Delegates mouse events to the attached MouseHandler objects
Qt3DInput::QMouseEvent | Qt3DCore::QMouseEvent contains parameters that describe a mouse event
Qt3DInput::QWheelEvent | Contains parameters that describe a mouse wheel event
Qt3DInput::QMouseHandler | Provides a means of being notified about mouse events when attached to a QMouseDevice instance

### Qt 3D Logic Module

Qt3DLogic::QFrameAction | Provides a way to have a synchronous function executed each frame
Qt3DLogic::QLogicAspect | Responsible for handling frame synchronization jobs

### Qt 3D Render Module

Qt3DRender::AssimpIO | Provides a generic way of loading various 3D assets format into a Qt3D scene
Qt3DRender::QCameraSelector | Class to allow for selection of camera to be used
Qt3DRender::QClearBuffers | Class to clear buffers
Qt3DRender::QDispatchCompute | Allows a glDispatchCompute call to be issued to do work in a compute shader on the GPU
Qt3DRender::QFrameGraphNode | Base class of all FrameGraph configuration nodes
Qt3DRender::QFrustumCulling | If present, only tries to draw entities that are in the view of the camera. The camera is selected by a QCameraSelector frame graph node in the current hierarchy
Qt3DRender::QLayerFilter | Controls layers Drawn in a frame graph branch
Qt3DRender::QNoDraw | When a QNoDraw node is present in a FrameGraph branch, this prevents the renderer from rendering any primitive
Qt3DRender::QRenderPassFilter | Provides storage for vectors of Filter Keys and Parameters
Qt3DRender::QRenderStateSet | FrameGraph node offers a way of specifying a set of QRenderState objects to be applied during the execution of a framegraph branch
Qt3DRender::QRenderSurfaceSelector | Provides a way of specifying the render surface
Qt3DRender::QRenderTargetSelector | Provides a way of specifying a render target
Qt3DRender::QSortPolicy | Provides storage for the sort types to be used
Qt3DRender::QTechniqueFilter | Provides storage for vectors of Filter Keys and Parameters
Qt3DRender::QViewport | A viewport on the Qt3D Scene
Qt3DRender::QAbstractFunctor | Abstract base class for all functors
Qt3DRender::QCamera | Defines a view point through which the scene will be rendered
Qt3DRender::QCameraLens | Qt3DRender::QCameraLens specifies the projection matrix that will be used to define a Camera for a 3D scene
Qt3DRender::QComputeCommand | QComputerCommand class
Qt3DRender::QLayer | Way of filtering which entities will be rendered
Qt3DRender::QPickingSettings | Specifies how entity picking is handled
Qt3DRender::QRenderAspect |
Qt3DRender::QRenderSettings | Holds settings related to rendering process and host the active FrameGraph
Qt3DRender::QRenderTarget | Encapsulates a target (usually a frame buffer object) which the renderer can render into
Qt3DRender::QRenderTargetOutput | Allows the specification of an attachment of a render target (whether it is a color texture, a depth texture, etc... )
Qt3DRender::QAttribute | Defines an attribute and how data should be read from a QBuffer
Qt3DRender::QBuffer | Provides a data store for raw data to later be used as vertices or uniforms
Qt3DRender::QGeometry
Qt3DRender::QGeometryRenderer
Qt3DRender::QMesh | A custom mesh
Qt3DRender::QSceneLoader | Provides the facility to load an existing Scene
Qt3DRender::QAbstractLight | Encapsulate a QAbstractLight object in a Qt 3D scene
Qt3DRender::QDirectionalLight | Encapsulate a Directional Light object in a Qt 3D scene
Qt3DRender::QPointLight | Encapsulate a Point Light object in a Qt 3D scene
Qt3DRender::QSpotLight | Encapsulate a Spot Light object in a Qt 3D scene
Qt3DRender::QEffect | Base class for effects in a Qt 3D scene
Qt3DRender::QFilterKey | Storage for filter keys and their values
Qt3DRender::QGraphicsApiFilter | Identifies the API required for the attached QTechnique
Qt3DRender::QMaterial | Provides an abstract class that should be the base of all material component classes in a scene
Qt3DRender::QParameter | Provides storage for a name and value pair
Qt3DRender::QRenderPass | Encapsulates a Render Pass
Qt3DRender::QShaderData | Provides a way of specifying values of a Uniform Block or a shader structure
Qt3DRender::QShaderProgram | Encapsulates a Shader Program
Qt3DRender::QTechnique | Encapsulates a Technique
Qt3DRender::QObjectPicker | Instantiates a component that can be used to interact with a QEntity by a process known as picking
Qt3DRender::QPickEvent | Holds information when an object is picked
Qt3DRender::QPickTriangleEvent | Holds information when a triangle is picked
Qt3DRender::QBlendEquation | Specifies the equation used for both the RGB blend equation and the Alpha blend equation
Qt3DRender::QBlendEquationArguments | Encapsulates blending information: specifies how the incoming values (what's going to be drawn) are going to affect the existing values (what is already drawn)
Qt3DRender::QClipPlane | Enables an additional OpenGL clipping plane that can be in shaders using gl_ClipDistance
Qt3DRender::QColorMask | Allows specifying which color components should be written to the currently bound frame buffer
Qt3DRender::QPointSize | Specifies the size of rasterized points. May either be set statically or by shader programs
Qt3DRender::QAbstractTexture | A base class to be used to provide textures
Qt3DRender::QAbstractTextureImage | Encapsulates the necessary information to create an OpenGL texture image
Qt3DRender::QTexture1D | A QAbstractTexture with a Target1D target format
Qt3DRender::QTexture1DArray | A QAbstractTexture with a Target1DArray target format
Qt3DRender::QTexture2D | A QAbstractTexture with a Target2D target format
Qt3DRender::QTexture2DArray | A QAbstractTexture with a Target2DArray target format
Qt3DRender::QTexture2DMultisample | A QAbstractTexture with a Target2DMultisample target format
Qt3DRender::QTexture2DMultisampleArray | A QAbstractTexture with a Target2DMultisampleArray target format
Qt3DRender::QTexture3D | A QAbstractTexture with a Target3D target format
Qt3DRender::QTextureBuffer | A QAbstractTexture with a TargetBuffer target format
Qt3DRender::QTextureCubeMap | A QAbstractTexture with a TargetCubeMap target format
Qt3DRender::QTextureCubeMapArray | A QAbstractTexture with a TargetCubeMapArray target format
Qt3DRender::QTextureRectangle | A QAbstractTexture with a TargetRectangle target format
Qt3DRender::QTextureData | Stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled
Qt3DRender::QTextureImage | Encapsulates the necessary information to create an OpenGL texture image from an image source
Qt3DRender::QTextureImageData | Stores data representing a texture
Qt3DRender::QTextureImageDataGenerator | Provides texture image data for QAbstractTextureImage
Qt3DRender::QTextureWrapMode | Defines the wrap mode a Qt3DRender::QAbstractTexture should apply to a texture

### Qt 3D Extras Module

Qt3DExtras::QDiffuseMapMaterial | Default implementation of the phong lighting effect where the diffuse light component is read from a texture map
Qt3DExtras::QDiffuseSpecularMapMaterial | Default implementation of the phong lighting effect where the diffuse and specular light components are read from texture maps
Qt3DExtras::QFirstPersonCameraController | Allows controlling the scene camera from the first person perspective
Qt3DExtras::QForwardRenderer | Default FrameGraph implementation of a forward renderer
Qt3DExtras::QGoochMaterial | Material that implements the Gooch shading model, popular in CAD and CAM applications
Qt3DExtras::QNormalDiffuseMapAlphaMaterial | Specialization of QNormalDiffuseMapMaterial with alpha coverage and a depth test performed in the rendering pass
Qt3DExtras::QNormalDiffuseMapMaterial | Default implementation of the phong lighting and bump effect where the diffuse light component is read from a texture map and the normals of the mesh being rendered from a normal texture map
Qt3DExtras::QNormalDiffuseSpecularMapMaterial | Default implementation of the phong lighting and bump effect where the diffuse and specular light components are read from texture maps and the normals of the mesh being rendered from a normal texture map
Qt3DExtras::QOrbitCameraController | Allows controlling the scene camera along orbital path
Qt3DExtras::QPerVertexColorMaterial | Default implementation for rendering the color properties set for each vertex
Qt3DExtras::QPhongAlphaMaterial | Default implementation of the phong lighting effect with alpha
Qt3DExtras::QPhongMaterial | Default implementation of the phong lighting effect
Qt3DExtras::QConeGeometry | Allows creation of a cone in 3D space
Qt3DExtras::QConeMesh | A conical mesh
Qt3DExtras::QCuboidGeometry | Allows creation of a cuboid in 3D space
Qt3DExtras::QCuboidMesh | A cuboid mesh
Qt3DExtras::QCylinderGeometry | Allows creation of a cylinder in 3D space
Qt3DExtras::QCylinderMesh | A cylindrical mesh
Qt3DExtras::QPlaneGeometry | Allows creation of a plane in 3D space
Qt3DExtras::QPlaneMesh | A square planar mesh
Qt3DExtras::QSphereGeometry | Allows creation of a sphere in 3D space
Qt3DExtras::QSphereMesh | A spherical mesh
Qt3DExtras::QTorusGeometry | Allows creation of a torus in 3D space
Qt3DExtras::QTorusMesh | A toroidal mesh