
某卷烟厂厂区数字孪生
Unity3D数字孪生3D视频融合设备报警联动AVProVideo场景树管理巡检动画JSON数据驱动QFramework
基于Unity引擎开发的数字孪生场景引擎,支持多3D场景与2D看板的创建、编辑与预览切换。通过WebSocket长连接实现与后端数据平台的实时双向通信,接收设备报警、视频流地址、ECharts图表数据并动态驱动场景内模型的报警闪烁动效、视频融合叠加、Web图表容器更新等业务响应。提供场景树层级管理、模型拖拽创建、巡检路径动画、可交互事件系统等完整的数字孪生场景搭建与运行能力。
技术方案
- 基于Unity引擎构建,采用QFramework/UIKit框架的UI面板管理与事件机制解耦模块间通信,支持编辑器编辑态与运行预览态的双模式切换
- 使用WebSocket长连接实现与后端平台的实时双向通信,设计消息队列+主线程消费机制,支持断线重连(指数退避策略)、心跳保活、URL外部配置
- 通过AVProVideo插件实现视频流在3D模型表面的融合叠加,设计并发控制队列管理多路视频的打开/关闭/重试,支持超时保护与渐进式退避重试
- 基于Best HTTP/2库封装异步HTTP请求工具,用于动态下载设备报警图标纹理并生成2D精灵闪烁动效,以及从外部API获取JSON数据并解析为可视化树
- 使用Newtonsoft.Json进行全链路的JSON序列化/反序列化处理,包括场景模型数据上报、设备消息解析、API响应构建等
- 设计SceneID唯一标识 + Dictionary映射机制,通过ResourceSingleFlag组件为每个场景对象分配唯一ID,实现设备消息到场景物体的精确定位
- 设计可交互事件系统(InteractionFlag),支持点击/移入/移出三种触发方式与场景跳转/显隐组件/自定义事件四种响应类型,事件数据随项目持久化
- 实现巡检路径动画系统,支持贝塞尔曲线路径编辑、巡检点位朝向与停留时间配置,抽象基类定义统一动画接口
- 项目数据采用JSON/XML双格式持久化存储于StreamingAssets,支持完整场景(模型层级、交互配置、天空环境)的保存与恢复
- 通过对象池(MyObjectPool)管理动态效果实例的创建与回收,减少运行时的GC压力






