- Qt 6.12
- Qt Quick 3D
- Qt Quick 3D QML Types
- Qt Quick 3D | Commercial or GPLv3

# Qt Quick 3D QML Types

This is the QML frontend for using the spatial renderer and scenegraph. For the time being, all 3D content goes through offscreen textures (FBO)s so that they can be composed into Qt Quick scenes (as a QQuickItem).

Import the QtQuick3D module with the following statement:

     import QtQuick3D

## QtQuick3D QML Types

AddDefine | Adds a preprocessor define to the shader compilation for a pass
BakedLightmap | Specifies baked lightmap settings for a model
Buffer | Creates or references a color buffer to be used for a pass of an Effect
BufferInput | Defines an input buffer to be used as input for a pass of an Effect
Camera | Defines an abstract base for Cameras
ColorAttachment | Defines a color attachment for a pass
Command | Supertype of commands to be performed as part of a pass in an Effect
ContentLayer | Singleton providing layer flag constants for grouping and filtering scene nodes
CubeMapTexture | Defines a cube map texture for use in 3D scenes
CustomCamera | Defines a Camera with a custom projection matrix
CustomMaterial | Base component for creating custom materials used to shade models
DebugSettings | Used to configure debug settings
DepthStencilAttachment | Defines a depth-stencil attachment for a RenderPass
DepthTextureAttachment | Defines a depth texture attachment for a pass
DirectionalLight | Defines a directional light in the scene
Effect | Base component for creating a post-processing effect
FileInstancing | Allows reading instance tables from file
Fog | Specifies fog settings for a scene
FrustumCamera | Defines a PerspectiveCamera with a custom frustum
Geometry | Base type for custom geometry
InstanceList | Allows manually specifying instancing in QML
InstanceListEntry | Specifies an instance in an InstanceList
Instancing | Base type for instance tables
Joint | Defines a node in a skeletal animation hierarchy
Light | An uncreatable abstract base type for all lights
Lightmapper | Specifies lightmap baking settings for a scene
Loader3D | Allows dynamic loading of a 3D subtree from a URL or Component
Material | Abstract base type providing functionality common to materials
Model | Lets you load a 3D model data
MorphTarget | Defines the properties of a morph target
Node | Base component for an object that exists in a 3D scene
Object3D | Abstract base type of all 3D nodes and resources
OrthographicCamera | Defines an Camera with an orthographic projection matrix
Pass | Defines a render pass in an Effect
PerspectiveCamera | Defines a Perspective Camera for viewing the content of a 3D scene
PipelineStateOverride | Defines pipeline state overrides for a single pass
PointLight | Defines a point light in the scene
PrincipledMaterial | Lets you define a material for 3D items using the metal/roughness workflow
Quaternion | Provides utility functions for quaternion
QuaternionAnimation | A PropertyAnimation for quaternions
ReflectionProbe | Defines a reflection probe in the scene
RenderExtension | An uncreatable abstract base type for render extensions
RenderPass | Defines a custom render pass for rendering 3D content
RenderPassTexture | Defines a texture to be used as a render target in a pass
RenderStats | Provides information of the scene rendering
RenderablesFilter | Defines a filter for selecting which renderables to affect in a pass
Repeater3D | Instantiates a number of Node-based components using a provided model
ResourceLoader | Allows pre-loading of 3D resources
SceneEnvironment | Lets you configure how a scene is rendered
SetUniformValue | Defines a value to be set during a single pass
Shader | Container component for defining shader code used by post-processing effects
Skeleton | Defines a skeletal animation hierarchy
Skin | Defines a skinning animation
SkyMaterial | Renders a procedural sky and generates image-based lighting data
SpecularGlossyMaterial | Lets you define a material for 3D items using the specular/glossiness workflow
SpotLight | Defines a spot light in the scene
SubRenderPass | Renders a sub-section of work within the same render target as the parent RenderPass
Texture | Defines a texture for use in 3D scenes
TextureData | Base type for custom texture data
TextureInput | Specifies a texture exposed to the shaders of a CustomMaterial or Effect
TextureProviderExtension | Abstract base type for render extensions that produce a texture
View3D | Provides a viewport on which to render a 3D scene

### QML Value Types

bounds | Specifies the bounds of a model
pickResult | Contains the results of a pick
renderTargetBlend | Defines blending parameters for a single color attachment of a render pass

## QtQuick3D.Helpers QML Types

Import the QtQuick3D.Helpers module with the following statement:

     import QtQuick3D.Helpers

AxisHelper | Visual helper for showing the 3 axes and a grid in a 3D scene
CapsuleGeometry | Provides geometry for a capsule
ConeGeometry | Provides geometry for a cone
CuboidGeometry | Provides geometry for a cuboid
CylinderGeometry | Provides geometry for a cylinder
DebugView | View to show rendering statistics and perform debug and developer actions
ExtendedSceneEnvironment | A SceneEnvironment providing commonly used rendering effects
ExtrudedTextGeometry | Provides geometry for extruded text
GridGeometry | A custom geometry provider for rendering grids
HeightFieldGeometry | A height field geometry
InfiniteGrid | Shows an infinite grid
InstanceModel | Defines a data model based on an instance table
InstanceRange | Specifies a range for RandomInstancing
InstanceRepeater | Instantiates components based on an instance table
LodManager | Manager that handles level of detail visibility changes
LookAtNode | A helper node that is automatically kept pointing at another node
OrbitCameraController | Camera Controller which rotates around an origin
PlaneGeometry | Provides geometry for a plane
ProceduralMesh | Allows creation of Geometry from QML
ProceduralMeshSubset | Defines a subset of a ProceduralMesh
ProceduralSkyTextureData | Generates an HDR skybox cubemap
ProceduralTextureData | Allows creation and population of TextureData from QML
QuadTextureProvider | Used to render a quad texture using a custom fragment shader
RandomInstancing | Generates a random instancing table
RenderOutputProvider | Used as a bridge to access textures provided in passes
SimpleQuadRenderer | Renders a full-screen textured quad to the main render target
SphereGeometry | Provides geometry for a sphere
TorusGeometry | Provides geometry for a torus
WasdController | Control node position and orientation with keys and mouse

## QtQuick3D.AssetUtils QML Types

Import the QtQuick3D.AssetUtils module with the following statement:

     import QtQuick3D.AssetUtils

RuntimeLoader | Imports a 3D asset at runtime

## QtQuick3D.Particles3D QML Types

Import the QtQuick3D.Particles3D module with the following statement:

     import QtQuick3D.Particles3D

Affector3D | Affectors modify the attributes of particles during their lifetime
Attractor3D | Attracts particles towards a position or a shape
Direction3D | Directions assign velocity for the emitted particles
DynamicBurst3D | Dynamic emitter bursts
EmitBurst3D | Declarative emitter bursts
Gravity3D | Accelerates particles to a vector of the specified magnitude in the specified direction
LineParticle3D | Line particle
ModelBlendParticle3D | Blends particle effect with a 3D model
ModelParticle3D | Particle using a Qt Quick 3D Model
Particle3D | Abstract logical particle
ParticleAbstractShape3D | Abstract base type of particle shapes
ParticleCustomShape3D | Loads custom particle shapes for emitters and affectors
ParticleEmitter3D | Emitter for logical particles
ParticleModelShape3D | Offers particle shape from model for emitters and affectors
ParticleSceneShape3D | Offers particle shape from a scene for emitters and affectors
ParticleShape3D | Offers 3D shapes for emitters and affectors
ParticleSystem3D | A system which includes particle, emitter, and affector types
ParticleSystem3DLogging | Provides information of the particle system
PointRotator3D | Rotates particles around a pivot point
Repeller3D | Particle repeller
ScaleAffector3D | Particle scale affector
SpriteParticle3D | Particle using a 2D sprite texture
SpriteSequence3D | Provides image sequence features for the Sprite particles
TargetDirection3D | For specifying a direction towards the target position
TrailEmitter3D | Emitter for logical particles from other particles
VectorDirection3D | For specifying a direction towards the target direction
Wander3D | Applies random wave curves to particles

## QtQuick3D.Xr QML Types

Import the QtQuick3D.Xr module with the following statement:

     import QtQuick3D.Xr

XrCamera | Tracks spatial position and orientation from which the user views an XR scene
XrController | A tracked spatial node that tracks the position and orientation of an input controller
XrErrorDialog | Custom error dialog for PCVR applications
XrHandModel | Represents a 3D model for a hand
XrHapticEffect | Represents a haptic effect
XrHapticFeedback | Controls haptic feedback for an XR controller
XrInputAction | Represents an action from an input controller
XrItem | A virtual surface in 3D space that can hold 2D user interface content
XrOrigin | Origin location for the XrView
XrRuntimeInfo | Displays information about the XR runtime
XrSimpleHapticEffect | Allows setting controller haptics using amplitude, duration and frequency
XrSpatialAnchor | Tracks a specific location or object in real space
XrSpatialAnchorListModel | Provides a model containing spatial anchors
XrView | Sets up the view for an Xr application
XrVirtualMouse | Maps 3D controller input to mouse input in 2D items

## Obsolete QML Types

The following QML types are now obsolete. Obsolete types are no longer maintained. They are provided to keep old source code working, but they can be removed in a future release. We strongly advise against using these classes in new code.

A
  AdditiveColorGradient

B
  Blur
  BrushStrokes

C
  ChromaticAberration
  ColorMaster

D
  DefaultMaterial
  DepthOfFieldHQBlur
  Desaturate
  DistortionRipple
  DistortionSphere
  DistortionSpiral

E
  EdgeDetect
  Emboss

F
  Flip
  FunctionSorter
  Fxaa

G
  GaussianBlur

H
  HDRBloomTonemap

M
  MotionBlur

S
  Scatter
  SCurveTonemap
  Settings

T
  TiltShift

V
  Vignette

## QML Types with Obsolete Properties or Methods

The following QML types contain one or more properties or methods that are now obsolete. Obsolete members are no longer maintained. They are provided to keep old source code working, but they can be removed in a future release. We strongly advise against using these obsolete members in new code. Click on a type to see its deprecated members.

A
  Application

B
  BakedLightmap

C
  Canvas

D
  DragHandler

G
  Gravity

H
  HeightFieldGeometry

L
  Light
  Locale

M
  Model
  MouseEvent

P
  PinchHandler

Q
  Qt

S
  Screen
  SortFilterProxyModel

T
  TableView
  Text
  TouchPoint

X
  XrInputAction