当前位置: 首页 > news >正文

虚幻浏览器插件 UE与JS通信

温馨提示:本节内容需要结合插件Content下的2_Communication和Resources下的sample.html 一起阅读。

1. UE调用JS

1.1 JS脚本实现

该部分共两步:

  1. 导入jstote.js脚本
  2. 实现响应函数并保存到 ue.interface 中
  • jsfunc 通过json对象传递参数,仅支持函数名小写。

1.2 UE调用Json字符串传参

UE调用jsfunc 传递Json字符串参数

说明:

  • Function: 填写JS脚本中 ue.interface对象中的函数名。本例为: jsfunc
  • Data: 可以为 Json对象

1.3 UE调用Json对象传参

UE调用jsfunc 传递Json对象参数

说明:

  • CallJson 比 CallJsonStr 性能更高。
  • CallJson 中的Json参数携带的值更丰富。
  • 建议优先使用CallJson

2. JS调用UE

2.1 JS脚本调用

在JS端使用ue.call 函数发送消息给UE。函数原型如下:

ue.call(type,json,function,timeout)

  • type: 字符串,用于区分多个不同消息的关键标识。
  • json: JSON对象,如:{"a":1} 或 [1,2,3] ; 可选填。
  • function: ue处理后回调函数,如 (response)=>{} 可选填。
  • timeout: UE回调函数有效时长,单位秒。==0表示永久有效。0< 表示N秒回执消息有效。默认20秒 ,可选填。

调用ue.call发送消息给UE

2.2 UE实现OnJsonEvent事件

UE绑定OnJsEvent事件接收JS消息

说明:

  • Type:对应ue.call 中的第一个参数
  • JSON:对应ue.call 中的第二个参数JSON对象FMatureJsonValue。
  • Func Name: 对应ue.call 中的第三个参数回调函数,回调函数为字符串唯一ID。
  • OnJsonEvent:采用多线程转换JSON,不消耗UE中Game的CPU,所以游戏性能更好。

2.3 UE实现OnJsonEventStr事件

UE绑定OnJsEventStr事件接收JS消息

说明:

  • 参数参考OnJsonEvent中的说明
  • OnJsonEventStr为兼容老版本,需要在编辑器中将Json Object 设置为false
  • OnJsonEventStr需要手动解析Json格式性能很低。
  • OnJsonEvent在底层异步线程中将JS中JSON对象转换成UE中FMatureJsonValue,性能更高。

3. JS调用UObject对象

通过前面的介绍熟悉了js调用ue必须需要传递json对象的参数。ue端只能通过umg蓝图接收。是否有更快速的方法调用ue中任意uobject对象,而且参数可以任意。

3.1 UE实现调用函数

蓝图中的对象一定要公共函数

3.2 UE绑定Uobject对象

3.3 JS端调用

WebView 下载

国内下载地址:QQ群 866972317

海外下载地址: https://github.com/aSurgingRive

http://www.lryc.cn/news/530492.html

相关文章:

  • OpenAI深夜反击:o3-mini免费上线,能否撼动DeepSeek的地位?
  • Golang 应用的 Docker 部署方式介绍及使用详解
  • deep seek R1本地化部署及openAI API调用
  • 力扣第435场周赛讲解
  • 初入机器学习
  • Signature
  • 93,【1】buuctf web [网鼎杯 2020 朱雀组]phpweb
  • 笔灵ai写作技术浅析(四):知识图谱
  • Chromium132 编译指南 - Android 篇(四):配置 depot_tools
  • 使用真实 Elasticsearch 进行高级集成测试
  • SQL进阶实战技巧:如何分析浏览到下单各步骤转化率及流失用户数?
  • 机器学习--概览
  • 低代码系统-产品架构案例介绍、炎黄盈动-易鲸云(十二)
  • Electricity Market Optimization 探索系列(二)
  • OpenAI 实战进阶教程 - 第一节:OpenAI API 架构与基础调用
  • TensorFlow简单的线性回归任务
  • 【视频+图文详解】HTML基础4-html标签的基本使用
  • 在Arm芯片苹果Mac系统上通过homebrew安装多版本mysql并解决各种报错,感谢deepseek帮助解决部分问题
  • c++可变参数详解
  • 【深度分析】DeepSeek 遭暴力破解,攻击 IP 均来自美国,造成影响有多大?有哪些好的防御措施?
  • CMake项目编译与开源项目目录结构
  • 完全卸载mysql server步骤
  • C#方法(练习)
  • Unity游戏(Assault空对地打击)开发(3) 摄像机的控制
  • ChatGPT-4o和ChatGPT-4o mini的差异点
  • SQL进阶实战技巧:某芯片工厂设备任务排产调度分析 | 间隙分析技术应用
  • 【力扣】438.找到字符串中所有字母异位词
  • 2024具身智能模型汇总:从训练数据、动作预测、训练方法到Robotics VLM、VLA
  • Day33【AI思考】-函数求导过程 的优质工具和网站
  • 【URL】一个简单基于Gym的2D随机游走环境,用于无监督强化学习(URL)