Qt 3D渲染QML类型

要导入和使用此模块的QML类型,请使用以下声明

import Qt3D.Render 2.7

选择渲染后端

渲染方面包含两个渲染后端。

  • OpenGL后端(ES 2,ES 3.2,GL 2,GL 3,GL 3.2,GL 4.3)
  • RHI后端(ES 2,GL,DirectX,Vulkan,Metal)

如果您仅针对OpenGL并使用特定的OpenGL功能,那么使用OpenGL后端可能更好。这是Qt 5系列中Qt 3D专用的OpenGL后端。

对于您不使用特定OpenGL功能且想针对可能已过时的OpenGL的不同平台的情况,使用RHI后端是一个更好的选择。

为了选择您的渲染后端,环境变量QT3D_RENDERER应设置为"opengl"或"rhi"。默认为OpenGL后端。

使用RHI后端时,可以通过设置QSG_RHI_BACKEND为以下值之一来进一步强制内部RHI后端

  • opengl -> RHI OpenGL后端
  • gl -> RHI OpenGL后端
  • gles2 -> RHI OpenGL后端
  • metal -> RHI Metal后端
  • vulkan -> RHI Vulkan后端
  • d3d11 -> RHI DirectX 11后端

如果没有指定,RHI将默认为平台认为最好的后端。

或者,如果使用QQuickWindow,可以使用QQuickWindow::setGraphicsApi()来指定RHI内部渲染后端。

AbstractRayCaster

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

AbstractTexture

用于提供纹理的基类

AbstractTextureImage

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

AlphaCoverage

启用alpha到覆盖的多样本混合模式

AlphaTest

指定alpha参考测试

BlendEquation

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

BlendEquationArguments

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

BlitFramebuffer

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

BufferCapture

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

Camera

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

CameraLens

提供用于定义3D场景中相机的投影矩阵

CameraSelector

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

ClearBuffers

清除缓冲区的类

ClipPlane

启用一个额外的OpenGL裁剪平面,该平面可以在着色器中使用gl_ClipDistance

ColorMask

允许指定应写入当前连接帧缓冲区的颜色组件

ComputeCommand

组件用于在GPU上对计算着色器进行工作

CullFace

类型指定是否启用正面或背面剔除

DebugOverlay

启用带场景细节的可视叠加

DepthRange

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

DepthTest

类型测试片段着色器的深度值与写入的样本的深度

DirectionalLight

在Qt 3D场景中封装一个方向光线对象

DispatchCompute

FrameGraph节点用于在GPU上为计算着色器分配工作

Dithering

启用抖动

Effect

Qt 3D场景中效果的基类

EnvironmentLight

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

FilterKey

存储过滤键及其值

FrameGraphNode

所有FrameGraph配置节点的基类

FrontFace

类型定义前向和后向面对的多边形

FrustumCulling

为FrameGraph启用视锥体剔除

GeometryRenderer

封装几何渲染

GraphicsApiFilter

对于OpenGL,标识附着的技术的所需API

Layer

过滤方式,决定哪些实体将被渲染

LayerFilter

控制帧图分支中绘制的层

LevelOfDetail

根据实体在屏幕上的大小控制渲染实体的复杂性

LevelOfDetailBoundingSphere

QML类型提供由其中心和半径定义的简单球体体积

LevelOfDetailLoader

一个实体加载器,根据到相机的距离或屏幕大小变化

LevelOfDetailSwitch

提供根据距离或屏幕大小启用子实体的方式

Light

在Qt 3D场景中封装一个QAbstractLight对象

LineWidth

指定栅格化线的宽度

Material

材料的不可创建的抽象基类

MemoryBarrier

用于放置内存屏障的类

Mesh

一个自定义网格加载器

MultiSampleAntiAliasing

启用多重采样抗锯齿

NoDepthMask

禁用深度写入

NoDraw

当一个NoDraw节点在帧图分支中存在时,这将防止渲染器渲染任何原始图形

NoPicking

当一个NoPicking节点在帧图分支中存在时,这将防止渲染方面对给定分支执行拾取选择

ObjectPicker

实例化一个组件,可以通过称为拾取的过程与实体交互

Parameter

为键值对提供存储。这映射到着色器均匀值

PickEvent

在拾取对象时持有信息。这作为参数在QObjectPicker组件的大部分拾取成功信号中接收

PickLineEvent

在拾取线的某一部分时持有信息

PickPointEvent

在拾取点云的某一部分时持有信息

PickTriangleEvent

在拾取三角形时持有信息

PickingProxy

可用于提供仅用于拾取的备用GeometryView

PickingSettings

指定如何处理实体拾取

PointLight

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

PointSize

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

PolygonOffset

类型设置计算多边形偏移的深度值的缩放和步长

ProximityFilter

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

光栅模式

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

光线投射器

用于在3D世界坐标系中执行光线投射测试

渲染能力

QRenderCapabilities类包含与可用渲染引擎相关的设置

渲染捕获

捕获渲染

渲染捕获响应

接收渲染捕获结果

渲染过程

封装了渲染过程

渲染过程过滤器

为过滤键和参数的向量提供存储空间

渲染设置

类型包含与渲染过程相关的设置,并托管活动帧图

渲染状态

所有渲染状态的抽象基类型

渲染状态集

帧图节点提供了一种在执行帧图分支期间应用一系列渲染状态对象的方法

渲染表面选择器

提供指定渲染表面的方法

渲染目标

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

渲染目标输出

类型允许指定渲染目标的一个附件(是颜色纹理、深度纹理等...)

渲染目标选择器

提供指定渲染目标的方法

场景加载器

提供加载现有场景的便利设施

裁剪测试

类型丢弃落在屏幕特定矩形部分之外的片段

屏幕光线投射器

基于屏幕坐标执行光线投射测试

无缝立方体贴图

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

着色器图像

为着色器程序提供图像访问

着色器程序

封装了一个着色器程序

着色器程序构建器

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

共享OpenGL纹理

允许在Qt 3D场景中使用来自不同OpenGL上下文的textureId

排序策略

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

聚光灯

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

屏蔽掩码

类型控制遮挡平面 individual bits 的前后写入

屏蔽操作

类型指定屏蔽操作

屏蔽操作参数

类型设置当屏蔽和深度测试失败时采取的操作

屏蔽测试

类型指定屏蔽测试的参数

屏蔽测试参数

类型指定屏蔽测试的参数

子树启用器

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

技术

封装了一个技术

技术过滤器

用于选择使用技术的帧图节点

纹理1D

一个具有Target1D目标格式的抽象纹理

纹理1D数组

一个具有Target1DArray目标格式的抽象纹理

纹理2D

一个具有Target2D目标格式的抽象纹理

纹理2D数组

一个具有Target2DArray目标格式的抽象纹理

纹理2D多采样

一个具有Target2DMultisample目标格式的抽象纹理

纹理2D多采样数组

一个具有Target2DMultisampleArray目标格式的抽象纹理

纹理3D

一个具有Target3D目标格式的抽象纹理

纹理缓冲区

一个具有TargetBuffer目标格式的抽象纹理

纹理立方体贴图

一个具有TargetCubeMap目标格式的抽象纹理

纹理立方体贴图数组

一个具有TargetCubeMapArray目标格式的抽象纹理

纹理图像

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

纹理加载器

处理纹理加载以及设置纹理属性

纹理矩形

一个具有TargetRectangle目标格式的抽象纹理

视口

Qt3D场景中的一个视口

© 2024 Qt公司有限公司。本文件中包含的文档贡献版权属于各自的拥有者。本文件提供的文档是根据自由软件基金会发布的 GNU自由文档许可证第1.3版 许可的。Qt及其相关标志是芬兰和/或其他国家的Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。