WebNativeBrowser基础案例应用方向

【UE5.3】不用插件实现HTTP、Websocket客户端 纯C++代码实现HTTP、Websocket客户端,并通过蓝图完成调用并测试 阅读详情

05 案例介绍

WebNativeBrowser 不只是用于显示网页。它把成熟 Web 生态、业务数据和 Unreal Engine 实时三维能力连接起来,特别适用于需要快速开发、频繁迭代和跨平台交付的产品。


1. 推荐架构分工

层级推荐职责
Web页面布局、组件、图表、表格、业务流程和用户操作
WebNativeBrowser页面承载、跨平台交互与 JS ↔ UE 连接
UE 蓝图/C++场景对象、镜头、三维交互、权限校验和最终业务执行
业务服务数据库、API、AI 推理、账号、权限和长期数据存储

这种分工既能发挥 Web 的开发效率,也能保留 Unreal Engine 在实时三维、场景交互和渲染方面的优势。


2. 数字孪生

数字孪生是 WebNativeBrowser 的重点应用方向,适用领域包括智慧城市、工业制造、能源、交通、园区、建筑、展厅、指挥中心和设备运维。

Web 页面适合承载:

  • 设备树、资产列表和属性面板
  • 实时告警、工单、巡检与事件记录
  • 趋势图、统计报表、地图和筛选条件
  • 登录、权限、流程和已有企业业务系统

Unreal Engine 适合承载:

  • 园区、建筑、产线、设备和城市空间
  • 实时三维渲染、镜头、动画与空间关系
  • Actor/UObject 状态、碰撞和场景交互

通过 JS ↔ UE 消息,可以实现 “页面选择设备 — UE 镜头定位 — 场景高亮 — 状态回推报表” 的双向工作流。

在这里插入图片描述


3. 游戏与运行时工具

Web 可以快速构建道具库、活动页、商城、任务面板、内容门户和运行时编辑工具。结合 04-高级交互 的拖拽/点击放置能力,用户可以从网页资源面板选择道具,再在 UE 世界中预览和放置。

角色、资产权限、Actor 创建、联网权威逻辑和玩法规则仍由 UE 项目负责。

游戏与运行时工具案例
图 5-3 游戏与运行时工具案例

4. AI 应用界面

WebNativeBrowser 可用于:

  • 将 AI 辅助生成的 Vue/React 页面带入 UE
  • 承载企业 AI 助手、智能问答和知识库界面
  • 展示生成式设计、文本、图片或分析结果
  • 将 AI 应用结果转换为受控的 UE 场景命令
  • 将 UE 场景状态回传给 AI 应用界面

插件提供 Web UI 与 UE 的连接能力,不内置大语言模型、推理服务、模型账号或客户业务知识库;这些能力由客户现有 AI 服务或项目后端提供。

在这里插入图片描述


5. 报表与数据大屏

Web 前端拥有成熟的图表、表格、地图、筛选器、主题和响应式布局生态,适合快速制作:

  • 实时监控大屏
  • 经营分析报表
  • 工业数据驾驶舱
  • 多屏指挥中心
  • 与三维场景联动的趋势和告警视图

UE 可以向页面推送场景状态,页面也可以筛选、定位或控制三维对象。报表团队和 UE 场景团队可以依据稳定的消息契约并行开发。

在这里插入图片描述


6. Vue / React 工程化工作流

6.1 开发流程

  1. 独立完成网页原型:使用 Vue、React 或普通 HTML 项目开发页面,先在桌面 Chromium 中验证布局、表单、路由、图表、视频、iframe 和响应式尺寸。
  2. 设计消息契约:在接入 UE 前列出 JS 会发出哪些业务事件、UE 返回哪些结果、每条消息的数据结构、错误格式、版本号和 requestId。不要让 UI 直接依赖任意蓝图内部名称。
  3. 开发阶段加载前端服务器:可加载 Vite 等本地开发地址快速迭代;正式发布切换为随项目打包的静态页面、企业内网地址或正式 HTTPS 服务。
  4. 接入 UE:
WebNative.send("Scene.Camera.Focus", {
  targetId: "device-008"
});

UE 完成场景操作后回复:

FunctionName: Scene.Camera.Focus.Result
MessageBody: {"ok":true,"targetId":"device-008"}
  1. 分别打包验证:前端构建成功不代表 UE 发布包一定正确,每个目标平台都要验证静态资源包含、URL 路径、字体视频可访问、跨域证书策略、Development 与 Shipping 行为。

6.2 推荐前端封装

export const ueBridge = {
  send(name, body = "") {
    if (!window.WebNative) {
      console.warn("WebNative is not ready", name);
      return false;
    }
    window.WebNative.send(name, body);
    return true;
  },

  on(name, handler) {
    window.WebNative?.on(name, handler);
  },

  off(name, handler) {
    window.WebNative?.off(name, handler);
  }
};

组件卸载时解除监听:Vue 在 onUnmounted,React 在 useEffect 的 cleanup 中调用 off。

6.3 使用 AI 生成 UI 的正确方式

AI 很适合生成页面骨架和组件、根据截图搭建原型、生成 CSS 主题和响应式布局、创建模拟数据、生成消息契约初稿。

AI 生成后必须人工检查:

  • 第三方依赖许可证
  • 是否引用外网 CDN
  • XSS、HTML 注入和不安全 URL
  • Token、密钥或后台地址是否写入前端
  • 事件是否重复注册
  • 大量 DOM 更新和无效动画
  • 不同分辨率和 DPI
  • Linux 字体与中文输入
  • 离线部署能力

7. 性能与安全建议

性能:

  • 不要每收到一条高频消息都直接更新 DOM,合并状态后按动画帧或业务周期刷新。
  • 大列表使用虚拟滚动;图表只更新变化的数据系列。
  • 图片和视频走资源 URL,不通过消息体传二进制。
  • 页面隐藏时暂停非必要定时器和动画;生产构建关闭无用开发日志和 Source Map 公开下载。

安全:

  • 只加载可信页面;在线内容使用 HTTPS;不在网页代码中保存长期密钥。
  • UE 端把 JS 消息当作外部输入,校验 FunctionName、字段、范围和权限。
  • 高风险命令加入业务确认和权限检查;不因为页面运行在应用内部就绕过输入验证。
  • 权限策略的全局收紧方式见 06-CEF 参数配置。

下一步

UE5魂系游戏开发教程06 - 翻滚 添加动画Notify"RollEnd",当动画翻滚播放到事件位置时将触发后续节点逻辑,我们调用MovementrInputHandler,关闭DisableInput勾选。8.继续在翻滚的基础上增加节点,通过BP Stats,添加关闭体力恢复的Handle Stamina Recovery Event,并添加Movement Input Handler,关闭移动输入控制。2.我们要通过Movement Input变量控制玩家的移动,这在UE5.5.4之后的版本,需要修改项目中的C++逻辑。 阅读详情

相关推荐

Tessent MBIST SDC

主要是两个PROC,tessent_constrain_${design_name}_mentor_ijtag_non_modal和tessent_constrain_${design_name}_mentor_memory_bist_modal。其中,Memory/MBIST controller/MEM Interface可以从func_clk_1来(用func_clk_1和func_clk_2的高频时钟),如图中红色线。其中,SIB和BAP用ijtag_tck的clock,如图绿色线。

po_poo的博客 1985

WebNativeBrowser高级交互

文章摘要:WebNativeBrowser 高级交互功能 本文介绍了 WebNativeBrowser 插件的高级交互能力,重点讲解了从 Web 到 UE 场景的拖拽/点击放置功能。主要内容包括: 应用场景:道具放置、设备部署等交互需求,明确了插件与项目的职责边界 操作流程:详细说明点击放置和拖拽放置的实现流程 接口说明:核心接口如 SetFocusToGameViewport 和 DeprojectCursorToWorld 安全规范:强调项目必须对 modelPath 进行严格校验 高级特性:鼠标穿透、

StarTechnology的博客 355

解密网页视频Blob链接:从防盗链到流媒体分片技术

本文深入解析了网页视频中Blob链接的工作原理,揭示了其作为现代视频防盗链与流媒体分片技术核心的本质。文章详细阐述了Blob对象与Media Source API如何协同工作,将视频数据分片传输,并结合HTML5的video元素实现安全、流畅的播放体验,有效提升了资源保护能力。

c7d8e的博客 317

UE5 WebNativeBrowser快速入门

快速开始指南 本文提供了WebNativeBrowser插件在Unreal Engine中的快速入门指引,主要内容包括: 插件安装:强调必须选择匹配UE版本和平台的插件包,并正确放置在项目Plugins目录下重命名为WebNativeBrowser。

StarTechnology的博客 2036

抖音直播行为规范考试

抖音直播行为规范考试

Q1642968641的博客 1万+

你以为你懂 Java 反射?看了这篇源码分析,我发现我以前都错了

摘要:本文讲述了一次生产环境Metaspace内存溢出的故障排查经历。事故源于一个通用数据导出功能中频繁使用反射调用method.invoke(),触发了JVM的"膨胀机制":当同一Method对象调用超过15次时,JVM会动态生成GeneratedMethodAccessor类,导致Metaspace被撑爆。文章分析了问题根源在于循环中反复调用getMethods()创建新Method对象,并提出了三种解决方案:缓存Method对象、改用MapStruct/MethodHandle工具

BUG猿的博客 769

WebNativeBrowser:UE与Web技术栈无缝协作加快你的开发

当 AI 生成前端界面成为常态,WebNativeBrowser 让 UE 项目直接站在这一浪潮上——UI 生产速度由天入分钟,虚幻引擎的能力边界被彻底打开

StarTechnology的博客 837

GRCNN抓取网络学习3【自制Jacquard数据集模型调优】

请先完成,这样有利于下面操作的理解!然后第二步是,有了自己的数据集输入到GRCNN中是三种文件,那么可以GRCNN抓取网络学习2【自制Jacquard数据集训练】!既然学会训练,那么开展下一步计划模型调优。GRCNN源码:https://github.com/skumra/robotic-grasping。

vor234的博客 2497

WebNativeBrowser云渲染像素流送支持

WebNative插件完美兼容UE自带的像素流送插件,支持输入,交互

StarTechnology的博客 351

[PCIE5.0] 2.2.8.3 Error Signaling Messages

错误信号消息用于在 PCI Express 设备之间传递错误信息,帮助系统发现并报告错误。每当发生某种错误时,检测到该错误的设备会通过发送这些消息来通知系统。• 没有数据负载:这些错误信号消息不包含任何数据(即 TLP Type 是 Msg),它们仅用于错误报告。• 长度字段保留:在这些消息中,长度字段是保留的,不使用。• 功能号(Function Number)字段:这个字段标识哪个设备发生了错误。

系统固件工程师 291

高通SDX35平台 modem启动异常分析

SDX35 MIFI项目在生产时出现modem反复重启问题。经排查发现是modem在初始化GNSS模块时访问了不存在的硬件地址导致崩溃,原因是产线使用的SDX35 000-AB型号芯片阉割了GNSS功能,而本地测试使用的AA型号支持该功能。解决方案是通过修改modem编译选项,采用高通新提供的genlmm2选项(保留IMS和SMS功能但去除GNSS支持),最终解决了启动异常问题并满足VZW认证需求。

四儿家的小祖宗的博客 273

UE5 WebNativeBrowser双向通讯JS-UE

本文介绍了WebNativeBrowser在网页与UE之间的双向通讯机制。采用FunctionName + MessageBody的消息格式,两端提供统一API,具有高性能特点(10万+消息/200ms)。详细说明了JS→UE和UE→JS两种方向的通信流程、数据类型转换规则、线程安全注意事项及调试要点。网页端通过WebNative.send()发送消息,UE端触发OnMessageReceived事件;UE端通过SendMessageToJS()发送,网页端用WebNative.on()订阅。

StarTechnology的博客 192

【网络安全】浅谈数据库攻击复现及相关安全优化

4、准备数据库服务器为了安全正式环境应该把数据库单独放一台服务器,只允许让应用服务器 IP 来访问数据库服务器,通过独立两者,就算其中一台发生问题,另一台也是好的,进一步降低了危险性。5、定时备份数据库开发定时备份功能,可以使用 Crontab,或者其他框架,设定周期备份数据,哪怕是数据丢失或被删除也可以快速恢复。

2401_88545587的博客 221

WebNativeBrowser,UE高性能跨平台插件,UMG/Slate/Web对比

UEWebNativeBrowser插件,为企业和组织提供高性能解决方案,专注于虚幻引擎驱动的数字孪生和人工智能驱动的快速开发。我们帮助企业将复杂的需求转化为生产就绪的交互式3D应用程序,涵盖智能城市、工业控制平台、数据可视化和沉浸式体验

StarTechnology的博客 738

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

UE里怎么播放视频和打开外部网页

UE视频播放与网页浏览解决方案 本文介绍了在Unreal Engine中通过WebNativeBrowser插件实现视频播放和网页浏览的高效方法。该方案基于Chromium内核,无需编写解码器或集成FFmpeg,直接利用浏览器能力处理视频和网页内容。 核心优势: 支持主流视频格式(H.264/VP8/VP9/AV1)和容器(MP4/WebM/TS流) 自动硬件加速解码,不受UE界面帧率限制 提供三种网页加载方式:直接加载、iframe嵌入和弹窗处理 包含视频格式检测工具,可验证具体环境支持情况

StarTechnology的博客 392

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

UE数据大屏开发-Web+UE双向联动

本文探讨了数字孪生数据大屏的开发模式,提出Web与UE分工协作的解决方案。数字孪生本质是"业务数据+空间可视化",Web擅长处理结构化数据和复杂交互(设备树、报表、工单等),UE则专注于三维渲染和空间关系。文章分析了四类典型双向联动场景,并给出技术实现要点:稳定的消息契约、高性能消息通道、前端优化策略和UE消息校验。典型架构采用Web业务层(Vue/React)通过消息通道与UE场景层通信,充分发挥各自技术优势,实现高效开发。

StarTechnology的博客 363

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

AI和UE交互的方式,加速UE开发

这篇文章探讨了AI与Unreal Engine(UE)结合的新型UI生产模式,核心观点是:AI不会取代UE,但会重构其界面开发流程。通过WebNativeBrowser技术,AI生成的Web界面可直接嵌入UE场景,实现快速迭代与双向交互。文章分析了这种组合的天然优势,如组件化代码生成、热更新支持、生态兼容性等,并展示了数据大屏、游戏工具、AI助手等典型应用场景。作者还展望了未来大模型直接操作UE的MCP接口方案,同时提醒需注意工程化问题。最后强调这一技术路径为UE项目提供了高效的界面生产解决方案。

StarTechnology的博客 408

10分钟在UE里跑一个数据大屏

摘要: 本文介绍如何在UE引擎中快速搭建一个数据可视化大屏,无需前端或C++知识,10分钟内即可完成。通过WebNativeBrowser插件(支持UE 5.1-5.8),实现GPU直通渲染和双向交互,步骤包括: 安装插件(2分钟):下载对应版本并解压到项目Plugins目录。 创建HTML大屏页面(3分钟):提供完整代码模板,包含实时图表(ECharts)、设备状态列表和告警面板,支持与UE场景联动。 模拟数据与交互:内置JavaScript模拟数据,设备点击事件可触发UE中的三维场景响应。

StarTechnology的博客 499

小伙伴,都2026年了,UE开发者的工作方式该变一变了

【文章摘要】 本文指出当前UE开发中三维渲染能力与界面开发效率的不匹配问题,建议将Web技术引入UE项目实现分工协作。核心观点: 现状痛点:UE的UMG适合游戏HUD,但开发复杂业务界面(表格、图表、表单等)效率低下,而前端生态已成熟解决此类需求。 分工方案: UE专注三维渲染、物理、动画等核心优势 Web负责数据密集型界面(Vue/React+现成组件库) 中间层通过消息通道实现高效通信 优势:提升开发速度数倍,降低人力成本,支持AI辅助开发,且界面可跨平台复用。文章最后推荐了高性能Web UI插件解决方

StarTechnology的博客 300

UE如何与Vue技术结合使用

本文介绍了Vue与Unreal Engine(UE)结合使用的技术方案,提出了一套基于Vue Composition API + Pinia + Element Plus与UE WebNativeBrowser插件的完整解决方案。该方案通过以下核心优势实现高效开发: 技术整合:利用Vue的响应式系统自动同步UE实时数据,通过WebNativeBrowser插件建立双向通信通道,实现前端页面与3D场景的联动。 开发效率:前端使用Vue生态组件快速构建UI,避免在UMG中重复造轮子;UE专注3D场景

StarTechnology的博客 475

UE接入ECharts图标加速可视化开发

UE集成ECharts实现数据可视化方案 该文章提出了一种在Unreal Engine项目中集成ECharts的高效方案,避免使用原生UMG绘制图表带来的开发困难。核心思路是将ECharts运行在Web面板中,通过消息通道与UE场景实现双向通信。 方案优势: 利用ECharts丰富的图表类型和交互功能(50+图表、百万级数据渲染) 通过GPU共享纹理直接渲染,不影响UE性能 前端专注图表开发,UE专注业务逻辑 实现方法: 创建标准ECharts HTML页面 使用WebNativeBrowser实现JS与U

StarTechnology的博客 327

UE修复3DWidgetComponent颜色发白变暗的问题

UE 3D Widget 发白/发暗解决方案 问题根源在于UE场景的自动曝光和色调映射会改变3D Widget的显示效果。本文提供5步专业解决方案: 启用Custom Depth-Stencil Pass 创建常规Widget 建立带Widget组件的Actor蓝图 关键设置:使用Widget3DPassthrough材质、开启自定义深度模板(如200) 创建后处理材质并在色调映射后阶段还原Widget颜色 方案优势在于精准定位Widget区域进行还原,不影响场景其他物体的后期处理效果。适用于常规3D Wi

StarTechnology的博客 240

【UE5.8】VS2026安装

本文介绍了VS2026的安装与验证流程:从官网下载Community 2026安装器,通过引导程序手动选择工作负载并指定安装路径完成安装;验证时使用vswhere检查安装路径,确认MSVC版本≥14.50.35723,并确保VS2022工具链未受影响。最终成功编译UE5.8项目,证明新旧版本可共存且功能正常。

ChaoChao66666的博客 208

UE5 GT、RT同步

在GameThread的一帧中,会看到各种各样的ENQUEUE_RENDER_COMMAND( ... ){ Lambda};这些command 里的lambda 就是要运行在RenderThread中的逻辑。

qq_33727884的博客 236

Unreal Engine 5:第三人称运动系统和人物动画

本文详解第三人称视角下角色运动系统与任务动画的实现。通过设置弹簧臂与摄像机组件,调整视角并启用控制器旋转控制,使摄像机随玩家操作平滑移动。修改角色移动方向为基于摄像机朝向,并开启“将旋转朝向运动”确保角色转向自然。随后创建动画蓝图与混合空间,导入奔跑与待机动画,通过速度变量驱动动画切换,优化过渡平滑度,最终实现流畅的第三人称角色运动与动画表现。

2502_90184733的博客 233

vue 表格 vxe-table 如何让下拉筛选弹窗根据屏幕自动更新位置

vxe-table 通过 filterConfig.transfer: true 将筛选面板渲染至 document.body,解决因容器 overflow: hidden 导致的面板裁剪问题。面板基于视口自动定位,空间不足时向上翻转,滚动与窗口缩放时动态更新位置,确保始终可见且不被遮挡。生效前提:列需配置 filterRender,表格需有固定高度或处于可滚动容器中。该配置为表格级设置,适用于所有启用了筛选的列。

chocolate2s的博客 241
上一篇: UE修复3DWidgetComponent颜色发白变暗的问题
下一篇: WebNativeBrowser云渲染像素流送支持
StarTechnology
博客等级 码龄96天 1粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值