Qt 3D C++ 类

Qt 3D 模块为基于Qt 3D 框架的近实时模拟提供基础和核心类型。

命名空间

Qt3DAnimation

包含 Qt3DAnimation 模块中的类

Qt3DCore

包含作为Qt 3D 仿真框架基础的类,以及提供使用Qt 3D 框架渲染能力的类

Qt3DCore::Quick

包含用于在 Qt3D 应用程序中实现 QML 功能的类

Qt3DExtras

包含 Qt3DExtras 模块中的类

Qt3DInput

包含支持用户输入的类

Qt3DLogic

包含实现帧同步的类

Qt3DRender

包含实现 2D 和 3D 渲染的类

Qt 3D 核心模块

Qt3DCore::QAbstractAspect

提供垂直行为切片的基类

Qt3DCore::QAbstractFunctor

所有函数的抽象基类

Qt3DCore::QAbstractSkeleton

骨架包含蒙皮网格的关节点

Qt3DCore::QArmature

用于计算蒙皮变换矩阵并将其设置在着色器上

Qt3DCore::QAspectEngine

负责处理已在场景中注册的所有 QAbstractAspect 子类

Qt3DCore::QAspectJob

在一个方面中执行作业的基类

Qt3DCore::QAttribute

定义属性以及从 QBuffer 中读取数据的方式

Qt3DCore::QBackendNode

所有 Qt3D 后端节点的基类

Qt3DCore::QBackendNodeMapper

创建后端节点并将其映射到各自的前端节点

Qt3DCore::QBoundingVolume

可用于覆盖实体的边界体积

Qt3DCore::QBuffer

为原始数据提供数据存储空间,以便日后作为顶点或制服使用

Qt3DCore::QComponent

可由 Qt3DCore::QEntity 实例聚合为组件的场景节点基类

Qt3DCore::QCoreSettings

保存与核心数据处理过程相关的设置

Qt3DCore::QEntity

Qt3DCore::QEntity是Qt3DCore::QNode子类,它可以聚合多个Qt3DCore::QComponent实例,这些实例将指定其行为

Qt3DCore::QGeometry

封装几何图形

Qt3DCore::QGeometryView

封装几何细节

Qt3DCore::QJoint

用于变换蒙皮网格的部分内容

Qt3DCore::QNode

用于构建 Qt3D 场景的所有 Qt3D 节点类的基类

Qt3DCore::QNodeId

唯一标识一个 QNode

Qt3DCore::QSkeleton

保存与蒙皮网格一起使用的骨架数据

Qt3DCore::QSkeletonLoader

用于从文件中加载关节骨架

Qt3DCore::QTransform

用于对网格执行变换

Qt3DCore::Quick::QQmlAspectEngine

QAspectEngine 的环境和实例化 QML 组件的方法

Qt 3D 输入模块

Qt3DInput::QAbstractActionInput

动作输入和所有聚合动作输入的基类

Qt3DInput::QAbstractAxisInput

QAbstractActionInput 是所有轴输入的基类

Qt3DInput::QAbstractPhysicalDevice

Qt3d 用于与任意输入设备交互的基类

Qt3DInput::QAbstractPhysicalDeviceProxy

Qt3DInput::QAbstractPhysicalDeviceProxy 作为一个实际的 Qt3DInput::QQAbstractPhysicalDevice 设备的代理。

Qt3DInput::QAction

链接一组触发相同事件的 QAbstractActionInput

Qt3DInput::QActionInput

存储用于触发输入事件的设备和按钮

Qt3DInput::QAnalogAxisInput

由模拟输入控制的轴输入 轴值的控制方式与操纵杆等传统模拟输入类似

Qt3DInput::QAxis

存储用于触发输入事件的 QAbstractAxisInputs

Qt3DInput::QAxisAccumulator

处理来自 QAxis 的速度或加速度数据

Qt3DInput::QAxisSetting

存储指定轴列表的设置

Qt3DInput::QButtonAxisInput

由按钮控制的轴输入 轴值由按钮而非操纵杆等传统模拟输入控制

Qt3DInput::QInputAspect

负责创建物理设备和处理相关作业

Qt3DInput::QInputChord

代表一组必须同时触发的 QAbstractActionInput

Qt3DInput::QInputDeviceIntegration

用于定义游戏控制器等新输入法的抽象基类

Qt3DInput::QInputSequence

代表一组必须一个接一个触发的 QAbstractActionInput

Qt3DInput::QInputSettings

持有指向输入事件源对象的指针

Qt3DInput::QKeyEvent

由键盘处理程序发送的事件类型

Qt3DInput::QKeyboardDevice

负责向附加的 QQKeyboardHandler 对象发送键盘事件

Qt3DInput::QKeyboardHandler

提供键盘事件通知

Qt3DInput::QLogicalDevice

允许用户定义一组他们希望在应用程序中使用的操作

Qt3DInput::QMouseDevice

将鼠标事件委托给附加的 MouseHandler 对象

Qt3DInput::QMouseEvent

Qt3DCore::QMouseEvent 包含描述鼠标事件的参数

Qt3DInput::QMouseHandler

当附加到一个 QMouseDevice 实例时,提供了一种获得鼠标事件通知的方法

Qt3DInput::QWheelEvent

包含描述鼠标滚轮事件的参数

Qt 3D 逻辑模块

Qt3DLogic::QFrameAction

提供一种在每一帧执行同步函数的方法

Qt3DLogic::QLogicAspect

负责处理帧同步工作

Qt 3D 渲染模块

Qt3DRender::QAbstractLight

Qt 3D 场景中封装 QAbstractLight 对象

Qt3DRender::QAbstractRayCaster

用于 3D 场景中光线投射的抽象基类

Qt3DRender::QAbstractTexture

用于提供纹理的基类

Qt3DRender::QAbstractTextureImage

封装了创建 OpenGL 纹理图像的必要信息

Qt3DRender::QAlphaCoverage

启用阿尔法覆盖多重采样模式

Qt3DRender::QAlphaTest

指定 alpha 参考测试

Qt3DRender::QBlendEquation

指定用于 RGB 混合方程和 Alpha 混合方程的等式

Qt3DRender::QBlendEquationArguments

封装混合信息:指定输入值(将要绘制的内容)如何影响现有值(已绘制的内容)

Qt3DRender::QBlitFramebuffer

FrameGraph 节点用于将像素值矩形从渲染目标的一个区域传输到另一个区域

Qt3DRender::QBufferCapture

在 GPU 和 CPU 之间交换缓冲区数据

Qt3DRender::QCamera

定义一个视点,通过该视点渲染场景

Qt3DRender::QCameraLens

Qt3DRender::QCameraLens 指定投影矩阵,用于为 3D 场景定义相机

Qt3DRender::QCameraSelector

允许选择要使用的相机的类

Qt3DRender::QClearBuffers

用于清除缓冲区的类

Qt3DRender::QClipPlane

使用 gl_ClipDistance 在着色器中启用额外的 OpenGL 剪贴平面

Qt3DRender::QColorMask

允许指定哪些颜色组件应被写入当前绑定的帧缓冲区

Qt3DRender::QComputeCommand

为 GPU 上的计算着色器发布工作的 QComponent

Qt3DRender::QCullFace

指定启用正面还是背面剔除

Qt3DRender::QDebugOverlay

启用场景细节视觉叠加

Qt3DRender::QDepthRange

启用重映射写入深度缓冲区的深度值

Qt3DRender::QDepthTest

根据写入样本的深度测试片段着色器的深度值

Qt3DRender::QDirectionalLight

Qt 3D 场景中封装定向光对象

Qt3DRender::QDispatchCompute

为 GPU 上的计算着色器发布工作的 FrameGraph 节点

Qt3DRender::QDithering

启用抖动

Qt3DRender::QEffect

Qt 3D 场景中特效的基类

Qt3DRender::QEnvironmentLight

Qt 3D 场景中封装环境光对象

Qt3DRender::QFilterKey

存储滤镜键及其值

Qt3DRender::QFrameGraphNode

所有 FrameGraph 配置节点的基类

Qt3DRender::QFrontFace

定义前后多边形

Qt3DRender::QFrustumCulling

为 FrameGraph 启用凹面剔除功能

Qt3DRender::QGeometryRenderer

封装几何图形渲染

Qt3DRender::QGraphicsApiFilter

确定附加 QTechnique 所需的 API

Qt3DRender::QLayer

过滤将被渲染的实体的方法

Qt3DRender::QLayerFilter

控制在框架图形分支中绘制的图层

Qt3DRender::QLevelOfDetail

根据屏幕尺寸控制渲染实体复杂度的方法

Qt3DRender::QLevelOfDetailBoundingSphere

由中心和半径定义的简单球形体积

Qt3DRender::QLevelOfDetailSwitch

提供一种根据距离或屏幕尺寸启用子实体的方法

Qt3DRender::QLineWidth

指定光栅化线条的宽度

Qt3DRender::QMaterial

提供一个抽象类,作为场景中所有材质组件类的基础

Qt3DRender::QMemoryBarrier

用于设置内存障碍的类

Qt3DRender::QMesh

自定义网格加载器

Qt3DRender::QMultiSampleAntiAliasing

启用多采样抗锯齿

Qt3DRender::QNoDepthMask

禁用深度写入

Qt3DRender::QNoDraw

当一个 Qt3DRender::QNoDraw 节点出现在一个 FrameGraph 分支中时,这会阻止渲染器渲染任何基元。

Qt3DRender::QNoPicking

当一个 Qt3DRender::QNoPicking 节点出现在一个 FrameGraph 分支中时,这会阻止渲染器对给定的分支执行拾取选择。

Qt3DRender::QObjectPicker

实例化一个组件,该组件可用于通过称为 "拾取 "的过程与 QEntity 进行交互

Qt3DRender::QPaintedTextureImage

可通过 QPainter 写入的 QAbstractTextureImage(抽象纹理图像

Qt3DRender::QParameter

为名称和值对提供存储空间。这将映射到着色器统一

Qt3DRender::QPickEvent

在对象被拾取时保存信息

Qt3DRender::QPickLineEvent

选取线段时保存信息

Qt3DRender::QPickPointEvent

选取点云的一段时保存信息

Qt3DRender::QPickTriangleEvent

选取三角形时的信息

Qt3DRender::QPickingProxy

可用于提供仅用于拾取的替代 QGeometryView

Qt3DRender::QPickingSettings

指定如何处理实体拾取

Qt3DRender::QPointLight

Qt 3D 场景中封装点光源对象

Qt3DRender::QPointSize

指定光栅化点的大小。可静态设置或由着色器程序设置

Qt3DRender::QPolygonOffset

设置计算多边形偏移深度值的比例和步骤

Qt3DRender::QProximityFilter

选择目标实体距离阈值内的实体

Qt3DRender::QRasterMode

渲染状态允许控制要执行的光栅化类型

Qt3DRender::QRayCaster

Qt3DRender::QRayCaster 用于在三维世界坐标中执行光线投射测试

Qt3DRender::QRayCasterHit

通过模型投射光线时的命中细节

Qt3DRender::QRenderAspect

Qt3DRender::QRenderCapabilities

保存与可用渲染引擎相关的设置

Qt3DRender::QRenderCapture

用于渲染捕捉的帧图节点

Qt3DRender::QRenderCaptureReply

接收渲染捕捉请求的结果

Qt3DRender::QRenderPass

封装一个渲染通道

Qt3DRender::QRenderPassFilter

为滤镜键和参数矢量提供存储空间

Qt3DRender::QRenderSettings

保存与渲染过程相关的设置,并托管活动的框架图

Qt3DRender::QRenderState

所有渲染状态的抽象基类

Qt3DRender::QRenderStateSet

FrameGraph 节点提供了一种指定 QRenderState 对象集的方法,以便在执行帧图分支时应用该对象集

Qt3DRender::QRenderSurfaceSelector

提供一种指定渲染表面的方法

Qt3DRender::QRenderTarget

封装一个目标(通常是一个帧缓冲区对象),渲染器可将其渲染到该目标中

Qt3DRender::QRenderTargetOutput

允许指定渲染目标的附件(无论是色彩纹理还是深度纹理等......)。

Qt3DRender::QRenderTargetSelector

提供指定渲染目标的方法

Qt3DRender::QSceneLoader

提供加载现有场景的功能

Qt3DRender::QScissorTest

丢弃屏幕特定矩形区域外的片段

Qt3DRender::QScreenRayCaster

根据屏幕坐标进行光线投射测试

Qt3DRender::QSeamlessCubemap

启用无缝立方体贴图纹理过滤功能

Qt3DRender::QSetFence

FrameGraphNode 用于在图形命令流中插入栅栏

Qt3DRender::QShaderData

提供指定统一块或着色器结构值的方法

Qt3DRender::QShaderImage

提供对着色器程序的图像访问

Qt3DRender::QShaderProgram

封装着色器程序

Qt3DRender::QShaderProgramBuilder

从加载的图形中生成着色器程序内容

Qt3DRender::QSharedGLTexture

允许在Qt 3D 场景中使用来自单独 OpenGL 上下文的纹理 ID

Qt3DRender::QSortPolicy

为要使用的排序类型提供存储空间

Qt3DRender::QSpotLight

Qt 3D 场景中封装聚光灯对象

Qt3DRender::QStencilMask

控制模板平面中各个位的前后写入

Qt3DRender::QStencilOperation

指定模板操作

Qt3DRender::QStencilOperationArguments

设置模板和深度测试失败时要采取的措施

Qt3DRender::QStencilTest

指定模版测试的参数

Qt3DRender::QStencilTestArguments

指定钢网测试的参数

Qt3DRender::QSubtreeEnabler

启用或禁用帧图节点的整个子树

Qt3DRender::QTechnique

封装技术

Qt3DRender::QTechniqueFilter

用于选择要使用的 Q 技术的 QFrameGraphNode

Qt3DRender::QTexture1D

具有 Target1D 目标格式的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture1DArray

目标格式为 Target1DArray 的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture2D

目标格式为 Target2D 的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture2DArray

目标格式为 Target2DArray 的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture2DMultisample

目标格式为 Target2DMultisample 的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture2DMultisampleArray

目标格式为 Target2DMultisampleArray 的 QAbstractTexture(抽象纹理

Qt3DRender::QTexture3D

目标格式为 Target3D 的 QAbstractTexture(抽象纹理

Qt3DRender::QTextureBuffer

目标格式为 TargetBuffer 的 QAbstractTexture(抽象纹理

Qt3DRender::QTextureCubeMap

目标格式为 TargetCubeMap 的 QAbstractTexture 三维抽象纹理

Qt3DRender::QTextureCubeMapArray

目标格式为 TargetCubeMapArray 的 QAbstractTexture

Qt3DRender::QTextureData

存储纹理信息,如目标、高度、宽度、深度、图层、包边以及是否启用了 mipmaps

Qt3DRender::QTextureDataUpdate

保存对纹理内容进行部分更新所需的内容和信息

Qt3DRender::QTextureGenerator

为纹理提供图像数据

Qt3DRender::QTextureImage

封装从图像源创建 OpenGL 纹理图像所需的信息

Qt3DRender::QTextureImageData

存储表示纹理的数据

Qt3DRender::QTextureImageDataGenerator

为 QAbstractTextureImage 提供纹理图像数据

Qt3DRender::QTextureLoader

处理纹理加载和纹理属性设置

Qt3DRender::QTextureRectangle

目标格式为 TargetRectangle 的 QAbstractTexture

Qt3DRender::QTextureWrapMode

定义 Qt3DRender::QAbstractTexture 应用于纹理的包边模式

Qt3DRender::QViewport

Qt3D 场景上的视口

Qt3DRender::QWaitFence

帧图节点(FrameGraphNode),用于等待图形命令流中的栅栏成为信号

Qt 3D 额外模块

Qt3DExtras::QAbstractCameraController

相机控制器的基本功能

Qt3DExtras::QConeGeometry

允许在三维空间中创建锥形

Qt3DExtras::QConeGeometryView

锥形网格

Qt3DExtras::QConeMesh

锥形网格

Qt3DExtras::QCuboidGeometry

允许在三维空间中创建一个长方体

Qt3DExtras::QCuboidGeometryView

一个长方体网格

Qt3DExtras::QCuboidMesh

一个长方体网格

Qt3DExtras::QCylinderGeometry

允许在三维空间中创建一个圆柱体

Qt3DExtras::QCylinderGeometryView

圆柱网格

Qt3DExtras::QCylinderMesh

一个圆柱形网格

Qt3DExtras::QDiffuseSpecularMaterial

默认的 phong 灯光效果

Qt3DExtras::QExtrudedTextGeometry

允许在三维空间中创建三维挤出文本

Qt3DExtras::QExtrudedTextMesh

三维挤出文字网格

Qt3DExtras::QFirstPersonCameraController

允许从第一人称视角控制场景摄像机

Qt3DExtras::QForwardRenderer

前向渲染器的默认 FrameGraph 实现

Qt3DExtras::QGoochMaterial

实现 Gooch 阴影模型的材质,该模型在 CAD 和 CAM 应用程序中非常流行

Qt3DExtras::QMetalRoughMaterial

PBR 照明的默认实现

Qt3DExtras::QMorphPhongMaterial

默认实现 phong 灯光效果

Qt3DExtras::QOrbitCameraController

允许沿轨道路径控制场景摄像机

Qt3DExtras::QPerVertexColorMaterial

为每个顶点设置颜色属性的默认渲染方式

Qt3DExtras::QPlaneGeometry

允许在三维空间中创建平面

Qt3DExtras::QPlaneGeometryView

正方形平面网格

Qt3DExtras::QPlaneMesh

正方形平面网格

Qt3DExtras::QSkyboxEntity

Qt3DExtras::QSkyboxEntity 是一个方便的 Qt3DCore::QEntity 子类,可用于在 3D 场景中插入天空盒。

Qt3DExtras::QSphereGeometry

允许在三维空间中创建球体

Qt3DExtras::QSphereGeometryView

球形网格

Qt3DExtras::QSphereMesh

球形网格

Qt3DExtras::QText2DEntity

允许在三维空间中创建二维文本

Qt3DExtras::QTextureMaterial

默认实现的简单无光纹理材质

Qt3DExtras::QTorusGeometry

允许在三维空间中创建环形网格

Qt3DExtras::QTorusGeometryView

环形网格

Qt3DExtras::QTorusMesh

环形网格

Qt 3D 动画模块

Qt3DAnimation::QAbstractAnimation

Qt3D 动画的抽象基类

Qt3DAnimation::QAbstractAnimationClip

提供关键帧动画数据类型的基类

Qt3DAnimation::QAbstractClipAnimator

提供动画播放功能类型的基类

Qt3DAnimation::QAbstractClipBlendNode

用于构建动画混合树类型的基类

Qt3DAnimation::QAdditiveClipBlend

根据加法因子对两个动画片段执行加法混合

Qt3DAnimation::QAnimationAspect

提供关键帧动画功能Qt 3D

Qt3DAnimation::QAnimationCallback

代表一个动画回调对象

Qt3DAnimation::QAnimationClip

指定关键帧动画数据

Qt3DAnimation::QAnimationClipData

包含动画数据的类

Qt3DAnimation::QAnimationClipLoader

可从文件加载关键帧动画数据

Qt3DAnimation::QAnimationController

动画控制器类

Qt3DAnimation::QAnimationGroup

动画分组类

Qt3DAnimation::QBlendedClipAnimator

为混合节点树提供动画播放功能的组件

Qt3DAnimation::QCallbackMapping

允许将片段中的通道映射到回调对象的调用上

Qt3DAnimation::QChannel

为 QAnimationClipData 定义通道。动画系统会对每个通道组件进行独立的插补,除非 QChannel 被称为 "Rotation"(区分大小写),它有四个 QChannelComponent,且每个 QChannelComponent 的关键帧数相同。在这种情况下,插值将使用 SLERP 执行

Qt3DAnimation::QChannelMapper

允许将剪辑中的通道映射到应用程序中对象的属性上

Qt3DAnimation::QChannelMapping

允许将片段中的通道映射到应用程序中对象的属性上

Qt3DAnimation::QClipAnimator

提供简单动画播放功能的组件

Qt3DAnimation::QClipBlendValue

用于在混合树中包含剪辑的类

Qt3DAnimation::QKeyFrame

用于处理关键帧的基类

Qt3DAnimation::QKeyframeAnimation

为 QTransform 实现简单关键帧动画的类

Qt3DAnimation::QLerpClipBlend

基于归一化因子对两个动画片段执行线性插值的类

Qt3DAnimation::QMorphTarget

为混合形状动画提供变形目标的类

Qt3DAnimation::QMorphingAnimation

一个实现混合形状变形动画的类

Qt3DAnimation::QVertexBlendAnimation

实现顶点混合变形动画的类

Qt 3D 场景 2D 模块

Qt3DRender::Quick::QScene2D

该类可将 qml 渲染成纹理,然后用作三维场景的一部分

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.