RenderStats QML 类型
提供场景渲染信息。 更多...
导入语句 | import QtQuick3D |
属性
- drawCallCount : quint64
(自 6.5)
- drawVertexCount : quint64
(自 6.5)
- effectGenerationTime : qint64
(自 6.5)
- extendedDataCollectionEnabled : bool
(自 6.5)
- fps : int
- frameTime : float
- graphicsAPIName : string
(自 6.5)
- imageDataSize : quint64
(自 6.5)
- lastCompletedGpuTime : float
(自 6.6)
- materialGenerationTime : qint64
(自 6.5)
- maxFrameTime : float
- meshDataSize : quint64
(自 6.5)
- pipelineCount : int
(自 6.5)
- pipelineCreationTime : qint64
(自 6.5)
- renderPassCount : int
(自 6.5)
- renderPrepareTime : float
- renderTime : float
- syncTime : float
- vmemAllocCount : quint32
(自 6.5)
- vmemUsedBytes : quint64
(自 6.5)
详细描述
RenderStats 类型提供有关场景渲染统计信息。无法直接创建此类型,但可以从 View3D 中获取。
使用 DebugView 项目在屏幕上显示数据。
属性文档
drawCallCount : quint64 |
此属性保留在View3D的最近一次渲染过程中注册的绘制调用总数(包括非索引、索引、实例化和实例化索引的绘制调用)。
仅在启用extendedDataCollectionEnabled时,才更新此值。
此属性是在Qt 6.5中引入的。
drawVertexCount : quint64 |
此属性保留在View3D的最近一次渲染过程中注册的绘制调用中的顶点总数。
值包括来自View3D最近一次渲染的绘制调用中的顶点和索引计数值。虽然这个数字可能不是完全准确的,但它应该可以很好地指示场景渲染的复杂性。
仅在启用extendedDataCollectionEnabled时,才更新此值。
此属性是在Qt 6.5中引入的。
effectGenerationTime : qint64 |
此属性保留属于View3D的窗口中生成和处理后处理着色器代码所用的时间,以毫秒为单位。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
extendedDataCollectionEnabled : bool |
此属性控制是否处理并使渲染阶段和绘制调用统计信息可用。这可能会带来轻微的性能开销,因此是可选的。
例如,如drawCallCount、drawVertexCount或renderPassCount之类的属性仅在将此属性设置为true时才会更新。
默认值为false。
此属性是在Qt 6.5中引入的。
fps : int |
此属性保留在过去的1秒内渲染的帧数。
frameTime : float |
此属性保留自上一帧以来经过的时间,以毫秒为单位。
graphicsAPIName : string |
此属性保留当前使用的当前图形API(RHI)后端名称。
此属性是在Qt 6.5中引入的。
imageDataSize : quint64 |
此属性保留注册在View3D的窗口中的纹理图数据的大致字节数。此值是针对窗口的,这意味着如果在同一QQuickWindow中有多个View3D对象,它们可能会报告相同的价值。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
lastCompletedGpuTime : float |
当在 Qt Quick 中启用 GPU 时机收集,并且底层图形 API 支持相关功能时,此属性包含最后检索到的 GPU 耗时(以毫秒为单位)。
注意:该值异步检索,通常指的是比前一个帧更旧的帧,这意味着该值不一定与其他 CPU 端计时同步。
注意:结果基于 QQuickWindow 中整个内容的渲染,该内容属于 View3D。这包括 Qt Quick 场景的所有内容,包括该窗口内的所有 2D 元素和所有的 View3D 项目。
此属性自 Qt 6.6 版本引入。
materialGenerationTime : qint64 |
此属性保存用于在窗口中生成和处理 DefaultMaterial、PrincipledMaterial 和 CustomMaterial 着色器代码所花费的毫秒总数。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
maxFrameTime : float |
此属性保存过去一秒内渲染单个帧所花费的最大时间。
meshDataSize : quint64 |
此属性保存当前已注册到 View3D 窗口中的网格数据的近似字节大小。该值是窗口级别的,这意味着如果有多个 View3D 对象在同一 QQuickWindow 中,它们可能会报告相同的值。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
pipelineCount : int |
此属性保存属于 View3D 的窗口的缓存的图形管道的总数。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
pipelineCreationTime : qint64 |
此属性保存在渲染硬件接口级别上创建图形管道所花费的毫秒总数。这可以包括其他事情,例如:将 HLSL 编译为中间格式、编译 MSL、使用 glCompileShader 编译 GLSL 代码以及使用程序二进制链接,以及生成带有所有相关内容的 Vulkan 管道(例如 SPIR-V → ISA 编译)。该值反映在 View3D 所属的窗口中进行的所有 Qt Quick 和 Qt Quick 3D 渲染。
注意:该值包括在 Qt 控制之下的操作。根据底层图形 API,一些与管道(着色器、图形状态)相关的操作可能异步发生,并且可能受到图形堆栈中不同级别的缓存的影响。通过调用 QQuickWindow::releaseResources() 或点击相应的 DebugView 按钮释放缓存的资源也可能有不同结果,这取决于底层细节(图形后端、图形 API);它可能或可能不会因为这个计数器的变化而受到影响,这是由于许多因素的影响。
此时间作为一般性、高级指示提供。结合 materialGenerationTime,应用开发者可以使用这些值来确认在应用程序正常使用期间,对所有缓存(持久性和内存中)都处于预热状态时,用于材质和图形管线处理的时间是合理的低。避免从应用程序的第一次运行得出结论。(因为可能尚未从基于持久存储的缓存中受益)
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
renderPassCount : int |
此属性保留上次渲染View3D期间注册的渲染遍历的总数。
许多功能,如实时阴影映射、后处理效果、深度和屏幕纹理,以及某些抗锯齿方法涉及到多个额外的渲染遍历。虽然这个数字不一定包括绝对所有的渲染遍历,但它有望给出场景渲染复杂性的良好指示。
仅在启用extendedDataCollectionEnabled时,才更新此值。
此属性是在Qt 6.5中引入的。
renderPrepareTime : float |
此属性保留在渲染准备阶段花费的时间,以毫秒为单位。这是renderTime中报告的总渲染时间的一个子集。
renderTime : float |
此属性保留生成新帧所花费的时间,包括准备阶段和绘制调用的记录。值以毫秒为单位。
syncTime : float |
此属性保留在同步函数内花费的时间,以毫秒为单位。同步期间更新对象的属性值。
vmemAllocCount : quint32 |
在实际应用的情况下,图形内存分配器库进行的分配数量。这包括从属于QQuickWindow的所有Qt Quick和Qt Quick 3D渲染,其中View3D所属。在使用OpenGL、Direct3D和Metal等图形API的情况下,此值为零,因为那时内存分配不受Qt控制。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
vmemUsedBytes : quint64 |
在实际应用的情况下,图形内存分配器库进行的分配使用的字节数。这包括从属于QQuickWindow的所有Qt Quick和Qt Quick 3D渲染,其中View3D所属。在使用OpenGL、Direct3D和Metal等图形API的情况下,此值为零,因为那时内存分配不受Qt控制。
仅在启用extendedDataCollectionEnabled时,才更新此值。
注意:此值按QQuickWindow的方式报告。如果同一窗口中有多个View3D实例,DebugView将显示所有那些View3D的相同值。
此属性是在Qt 6.5中引入的。
© 2024 The Qt Company Ltd. 本文档中包含的文献贡献归其各自所有者所有。本文档提供的内容受GNU Free Documentation License version 1.3的条款许可,由Free Software Foundation发布。Qt以及相应的商标是全球芬兰及其它地区的The Qt Company Ltd.的商标。所有其他商标均为其各自所有者的财产。