行业洞察

HOOPS Envision 增加粒子可视化

HOOPS Envision 6.0 为开发者提供了一种专门的方式来读取、动画化和渲染粒子仿真数据,这种结果来自于粉末床、颗粒流或流体粒子求解器,输出是成千上万或数百万个单独的粒子随时间移动,而不是一个连续的网格。

该能力于 2026 年 6 月 1 日在 Envision for Desktop 和 Envision for Web 的 6.0 版本中同时提供。

关键要点

  • HOOPS Envision 6.0 增加了用于离散粒子仿真数据(DEM、SPH、喷雾和液滴、尘埃扩散)的专用系统,与现有的粒子跟踪(流线)功能分开。 

  • 原生读取 PTFX 和 VTP 文件,写入 PTFX,并通过插件系统支持自定义格式,无需重建。 

  • 没有固定的粒子上限,实际限制取决于粒子数量、时间步长数量和硬件,但管道可处理 数百万粒子在 HOOPS Envision 驱动的桌面和网页应用中。 

  • 在网页上,仅量化粒子位置和标量值就能使数据集大小减少三分之一以上且无明显质量损失。之后,开发者可以选择减少每帧粒子数量或减少回放的时间步长,两种选择都是以较小的流数据换取一些细节,2百万粒子、200时间步长的数据集根据具体使用情况的要求实际可以缩小到从大约8GB减少到不到200MB。 

  • 在相同版本中同时在桌面和网页中发布,适用于 Python、C++、C#、JavaScript 和 TypeScript, 共享一个读取器实现。 

与 Envision 已处理的数据不同

以前,HOOPS Envision 有一个名为粒子跟踪的功能,通过速度矢量场计算流线,这种可视化通常与风洞仿真分析相关联。流线仍然适合展示通过连续场的运动和方向。

Envision 6.0 引入了一个新的围绕粒子模型类构建的系统,专为直接来源于粒子的源数据而非场计算的数据设计。离散元方法(DEM)和光滑粒子流体动力学(SPH)求解器,及喷雾和液滴模型、尘埃扩散模拟,直接跟踪每个粒子:ID、位置和其在每个时间步长的标量值。没有用于粒子跟踪的矢量场。

新的粒子模型按原样读取这种类型数据,为开发者提供详细的每粒子信息而无需数据修改或转换。

读取和写入,不仅仅是渲染

虽然大多数粒子求解器会写其自己的专属输出,HOOPS Envision 内建两个格式:PTFX,其专有二进制格式,用于快速顺序框架访问,和 VTP,VTK PolyData XML 格式的粒子子集。除此之外,插件系统让开发者添加对其他格式的支持。插件遵循简单的命名惯例,并自动从用户指定文件夹加载。在插件架构下,添加新格式无需应用程序重建。

关键是,Envision 也可以写 PTFX 文件,不仅仅是读取它们。插件将求解器的输出导入 Envision,但 PTFX 是专为快速顺序框架访问而构建的格式。许多团队会将其数据转换为 PTFX 一旦加载,因此每次后续读取、流和动画运行都基于优化的文件而不是求解器的原始格式。

规模化渲染

一旦数据加载,Envision 处理逐帧回放并允许开发者根据模拟时间线上的任何字段值(包括速度、温度,或求解器跟踪的其他数据)为粒子着色。没有固定的数据显示大小上限,实际限制取决于粒子数量、时间步长数量和进行处理的机器,但该管道不需要开发者构建自己的性能层便能处理数百万粒子。目前粒子呈现为单个点;单粒子大小、方向和阴影球体尚不支持。

为 HOOPS Envision for Desktop 和 Web 而构建

此功能在 Envision for Desktop 和 Envision for Web 中发布,新的流服务在浏览器中处理粒子播放, 同一读取器实现还支持用于自动化无头渲染的 Python API。构建基于浏览器的数值模拟工具的开发者无需单独构建即可获得与其桌面应用相同的粒子可视化。

要获取每个元素的更完整技术细目,请点击下面的每个部分。

桌面:一次绘制调用中的数百万粒子渲染

粒子呈现为 GPU 点精灵。整个粒子云在一次绘制调用中渲染,因此添加更多粒子是添加顶点,而不是增加绘制调用。这使得桌面渲染器可以处理数百万粒子,而不是简单实现的每个粒子一个球体网格在数十万粒子时就会卡住。

当云密集时,完全不透明很难读取;你只会看到外层。透明度解决了这个问题,但通常意味着每帧将每个粒子从后到前排序,这通常是限制性能的因素。Envision 通过一种仅当摄像机角度变化时重新运行的线性时间排序规避了这个问题,并且对不透明云完全不排序。因为粒子数据的行为就像场景中的任何其他模型,它还可以与现有网格数据一起直接进入视图,不需要单独的查看器。

Python:自动化流水线的无头渲染

Python API 以屏幕外渲染,因此它在任何地方都可以运行,包括没有 GPU 和显示器的构建代理或容器。这使得可以作为仿真流水线的一部分自动生成粒子图像、动画和报告,而不是手动渲染和抓取截图。工作示例涵盖常见情况:按标量字段为云着色、导出动画、比较简化水平以及在格式间转换。

网络:为什么数据传输而非渲染是真正的瓶颈

大规模的 DEM 或 SPH 运行可以在其完整时间步长范围内产生数百 GB 的数据,远远超过任何浏览器应该尝试加载的量。Envision 主要在传输端解决此问题而不是渲染端:粒子位置和标量值被量化到原始大小的一小部分,服务器在发送前简化每一帧,因此客户端不需要的数据从未流向客户端。帧间简化也一致,相同的粒子在整个过程中被除去,因此回放看起来更稀疏而不是闪烁,并且无论是在浏览器中查看,桌面上或通过 Python 一致。

这对开发者的重要性 

评估是否自行构建粒子支持的团队面临相同的 我们之前写过的权衡: 数字仿真应用需求不断增长,而从头构建每个新功能的工程带宽并没有随之增长。这涵盖了粒子数据读取、动画和渲染的工作,让工程时间回到应用中真正独特的部分。 

一如既往,了解 HOOPS Envision 的最佳方式就是 与我们交谈 ,帮助我们了解您的需求。

如果您想探索 Tech Soft 3D 的 CAE 工具包如何帮助您跟上快速发展的行业, 联系我们以了解更多。

HOOPS Envision 粒子可视化常见问题解答

HOOPS Envision 的新粒子可视化功能是什么?

是一个专门用于读取、动画化和渲染真实粒子仿真数据的系统,能从求解器的输出逐帧跟踪单个粒子。它与现有的粒子跟踪功能(计算流线通过的连续矢量场而非渲染离散粒子数据)分开。

HOOPS Envision 支持哪些粒子数据格式?

HOOPS Envision 支持对其本机二进制粒子格式 PTFX 的读写访问,以及 VTP,这是 VTK PolyData XML 格式的粒子子集。插件系统涵盖自定义或求解器特定格式,且无需更改渲染管道。Envision 还可以写 PTFX 文件,为开发者提供将不符合这两种格式的数据转换的途径。

HOOPS Envision 的粒子可视化能处理多少粒子?

没有固定上限。实际限制取决于粒子数量、时间步长数量和处理数据的硬件,但管道设计能够在桌面、网页和 Python 跨平台上舒适地处理数百万粒子。

HOOPS Envision 的粒子可视化能否在 GUI 外工作,比如在自动化流水线中?

是的。除了桌面和网页,HOOPS Envision 的 Python API 完全无屏幕渲染粒子数据,因此它可以作为无头应用运行或在没有 GPU 或显示器的容器中运行,作为仿真工作流的一部分自动生成图像、动画和报告。

CEETRON 产品发生了什么?

通过 2020 年被 Tech Soft 3D 收购增强后, CEETRON 这个名称长期以来被信任用于其在仿真数据访问、网格划分、求解和可视化方面的行业领先能力。

今天,前 CEETRON 产品的功能现在已成为 HOOPS 产品家族的一部分。

CEETRON Access 现为 HOOPS Access,CEETRON Mesh 现为 HOOPS Mesh,CEETRON Solve 现为 HOOPS Solve,而 CEETRON Envision 现为 HOOPS Envision。