位置: IT常识 - 正文

UE4 利用WEBUI插件完成UE与JS的交互 (UE4嵌入WEB)(ue4安装插件)

编辑:rootadmin
UE4 利用WEBUI插件完成UE与JS的交互 (UE4嵌入WEB)

推荐整理分享UE4 利用WEBUI插件完成UE与JS的交互 (UE4嵌入WEB)(ue4安装插件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:ue4浏览器插件,ue4 web browser,ue4浏览器插件,ue4做ui的插件,ue4water插件,ue4web端,ue4 web browser,ue4water插件,内容如对您有帮助,希望把文章链接给更多的朋友!

目录

一、UE4显示Echart图表

二、UE调用JS(修改Echart图表数据)

三、JS调用UE(UE4中打印js传递过来的数据)


一、UE4显示Echart图表

步骤:

1.下载WEBUI插件

我的UE编辑器版本是4.24.3对应版本的插件下载地址是

链接:https://pan.baidu.com/s/1dSkXK84f68ZcD03kz8OBSA?pwd=et9z  提取码:et9z

其它版本网盘下载地址:

4.26:https://cowtransfer.com/s/5be173e137ae4a 4.27:https://cowtransfer.com/s/8cb6a0761faf45 5.0:https://cowtransfer.com/s/86830831c83a45

下载后解压放到Plugins文件夹中

 2.在Echart上下载一个例子

我下载的例子的链接:

Examples - Apache ECharts

点击下载示例

3.下载的HTML文件放到Content 或其子文件夹内:

4. 修改该HTML代码:

<!--此示例下载自 https://echarts.apache.org/examples/zh/editor.html?c=bar-background--><!DOCTYPE html><html lang="zh-CN" style="height: 100%"><head> <meta charset="utf-8"></head><body style="height: 100%; margin: 0"> <div id="container" style="height: 100%"></div> <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts@5.4.0/dist/echarts.min.js"></script> <!-- Uncomment this line if you want to dataTool extension <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts@5.4.0/dist/extension/dataTool.min.js"></script> --> <!-- Uncomment this line if you want to use gl extension <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts-gl@2/dist/echarts-gl.min.js"></script> --> <!-- Uncomment this line if you want to echarts-stat extension <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts-stat@latest/dist/ecStat.min.js"></script> --> <!-- Uncomment this line if you want to use map <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts@4.9.0/map/js/china.js"></script> <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts@4.9.0/map/js/world.js"></script> --> <!-- Uncomment these two lines if you want to use bmap extension <script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=YOUR_API_KEY"></script> <script type="text/javascript" src="https://fastly.jsdelivr.net/npm/echarts@5.4.0/dist/extension/bmap.min.js"></script> --> <script type="text/javascript"> "object"!=typeof ue||"object"!=typeof ue.interface?("object"!=typeof ue&&(ue={}),ue.interface={},ue.interface.broadcast=function(e,t){if("string"==typeof e){var o=[e,""];void 0!==t&&(o[1]=t);var n=encodeURIComponent(JSON.stringify(o));"object"==typeof history&&"function"==typeof history.pushState?(history.pushState({},"","#"+n),history.pushState({},"","#"+encodeURIComponent("[]"))):(document.location.hash=n,document.location.hash=encodeURIComponent("[]"))}}):function(e){ue.interface={},ue.interface.broadcast=function(t,o){"string"==typeof t&&(void 0!==o?e.broadcast(t,JSON.stringify(o)):e.broadcast(t,""))}}(ue.interface),(window.ue4=ue.interface.broadcast); var dom = document.getElementById('container'); var myChart = echarts.init(dom, null, { renderer: 'canvas', useDirtyRect: false }); var app = {}; var option; option = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: { type: 'value' }, series: [ { data: [120, 200, 150, 80, 70, 110, 130], type: 'bar', showBackground: true, backgroundStyle: { color: 'rgba(180, 180, 180, 0.2)' } } ]}; if (option && typeof option === 'object') { myChart.setOption(option); } ue.interface.ue2js = function(ueData){ var jsonObj = JSON.parse(ueData); myChart.setOption(jsonObj); }; window.addEventListener('resize', myChart.resize); </script></body></html>

5.创建一个控件蓝图

6.打开控件蓝图,将Webinterface拖入

 命名为WebUI

7.点击 图表

 8.在图表中,调用WEBUI的LoadFile函数

 如果用的是网址,可以用LoadURL节点

 9.Diectory参数选择/Content,File填入你的HTML文件在Content文件夹中的相对路径

10.到关卡蓝图中,把刚才做好的控件蓝图放到窗口中

此时运行游戏,可以看到Echart柱状图

柱状图显示出来后下一步是修改柱状图的数据

二、UE调用JS(修改Echart图表数据)

11.回到控件蓝图,添加一个按钮

 再添加一个文本,命名为调用JS

 12.进入控件蓝图的图表

UE4 利用WEBUI插件完成UE与JS的交互 (UE4嵌入WEB)(ue4安装插件)

选中按钮,添加一个按钮点击事件

 

 在点击事件中,添加WebUI的Call函数

 

 Call函数的两个参数分别应该填函数名和函数的参数

函数名就是js代码中的ue2js,是在interface后自定义的

 填好后,节点如下:

 

 改变数据都为100:

 运行后,点击按钮将可以改变echart数据

此时,UE调用js的功能实现了,接下来要实现js调用UE的功能

三、JS调用UE(UE4中打印js传递过来的数据)

13.WebUI是用事件分发器做的,我们先绑定WebUI的Interface事件

在控件蓝图中添加如下标注区域的部分 

 可以看到自定义事件有Name(函数名)和Data(参数)两个参数

这里使用切换名称节点来区分不同事件

 现在开始在js中添加调用UE的代码

(由于该echart没有按钮,这里将UE的代码写到了UE调用js的函数里了)

 ue4函数中有三个参数,分别是函数名(必填项),函数的参数,还有函数的回调。这里只填了函数名和函数的参数,函数的参数可以是字符串或json对象。

写好js后,把切换名称节点的引脚名改成js传递的函数名

 然后打印一下传递过来的值

 运行游戏,点击按钮,可以看到视口打印了js传出来的字符串“hello”

上面完成了js向UE传递字符串,接下来再测试一下js传递json对象

将js代码改为如下:

 在UE中将Data转为对象:

利用get string提取键对应的值

取出des对应的字符串并打印(如果值是数组类型,可以用Get List节点取出键对应的值,其它以此类推)

 

 运行结果:

原教学视频地址:

Echarts图表_WebUI_JS和UE交互

本文链接地址:https://www.jiuchutong.com/zhishi/277925.html 转载请保留说明!

上一篇:Win10修改hosts文件无法保存的解决方法(不用更改权限)(win10修改hosts文件权限)

下一篇:DCSHelper.exe是什么进程 DCSHelper.exe程序进程介绍(dcs是什么文件夹可以删除吗)

  • iqoo8怎么打开nfc(iQOO8怎么打开空调)

    iqoo8怎么打开nfc(iQOO8怎么打开空调)

  • 红米k30pro手机壳怎么拿下来(红米k30pro手机壳怎么拆)

    红米k30pro手机壳怎么拿下来(红米k30pro手机壳怎么拆)

  • 苹果蓝牙耳机电量显示不正确(苹果蓝牙耳机电池)

    苹果蓝牙耳机电量显示不正确(苹果蓝牙耳机电池)

  • 数据库中表之间的关系有哪三种关系(数据库中表之间存在着三种关系:一对一)

    数据库中表之间的关系有哪三种关系(数据库中表之间存在着三种关系:一对一)

  • qq游轮怎么获得(qq的标志是什么意思)

    qq游轮怎么获得(qq的标志是什么意思)

  • 微型计算机存储系统一般指(微型计算机存储器)

    微型计算机存储系统一般指(微型计算机存储器)

  • 手机的返回键怎么设置在屏幕上(手机的返回键怎么设置出来)

    手机的返回键怎么设置在屏幕上(手机的返回键怎么设置出来)

  • 手机gmtds是什么意思(gsm在手机上是什么标志)

    手机gmtds是什么意思(gsm在手机上是什么标志)

  • 可以把手机上的视频放到电视上吗(可以把手机上的视频投到平板上吗)

    可以把手机上的视频放到电视上吗(可以把手机上的视频投到平板上吗)

  • 斗鱼特别关注怎么设置(斗鱼 特别关注)

    斗鱼特别关注怎么设置(斗鱼 特别关注)

  • 华为mate30有屏幕指纹吗(华为mate30有屏幕共享吗)

    华为mate30有屏幕指纹吗(华为mate30有屏幕共享吗)

  • 荣耀MagicBook 15的摄像头在哪(荣耀magicbook15的usb接口)

    荣耀MagicBook 15的摄像头在哪(荣耀magicbook15的usb接口)

  • 三星手机怎么录制屏幕(三星手机怎么录入nfc门禁卡)

    三星手机怎么录制屏幕(三星手机怎么录入nfc门禁卡)

  • 携程的优享预定20元怎么取消(携程的优享预定可以取消吗?)

    携程的优享预定20元怎么取消(携程的优享预定可以取消吗?)

  • 《少有人走的路》好在哪里(《少有人走的路1:心智成熟的旅程》)

    《少有人走的路》好在哪里(《少有人走的路1:心智成熟的旅程》)

  • 华为的悬浮球怎么关闭(华为的悬浮球怎么关)

    华为的悬浮球怎么关闭(华为的悬浮球怎么关)

  • win10独立显卡检测不到(win10显卡检测)

    win10独立显卡检测不到(win10显卡检测)

  • 高德打车如何预约(高德打车如何预定车辆)

    高德打车如何预约(高德打车如何预定车辆)

  • 绿盘和蓝盘的区别(绿盘和蓝盘的区别(机械硬盘绿盘蓝盘区别))

    绿盘和蓝盘的区别(绿盘和蓝盘的区别(机械硬盘绿盘蓝盘区别))

  • mediaman.exe是什么进程 有什么用 mediaman进程查询(media是什么文件)

    mediaman.exe是什么进程 有什么用 mediaman进程查询(media是什么文件)

  • 博茨瓦纳卡拉哈里沙漠中的狐獴 (© Aluma Images/Getty Images)(博茨瓦纳热吗)

    博茨瓦纳卡拉哈里沙漠中的狐獴 (© Aluma Images/Getty Images)(博茨瓦纳热吗)

  • vue2 vue-router 不显示页面问题

    vue2 vue-router 不显示页面问题

  • web前端面试高频考点——Vue3.x新增API(生命周期,ref、toRef 和 toRefs 的理解和最佳使用方式)(web前端面试基础知识)

    web前端面试高频考点——Vue3.x新增API(生命周期,ref、toRef 和 toRefs 的理解和最佳使用方式)(web前端面试基础知识)

  • 小规模纳税人出售使用过的汽车
  • 民办非企业不注销的法律后果
  • 支付招聘费收到专票怎么记账
  • 纸质发票如何查看电子发票
  • 公允价值变动是减值吗
  • 监督审核费用会计入账
  • 不是本单位职工可以报销差旅费吗
  • 经济纠纷引发的刑事案件
  • 公司购入汽车分录
  • 企业支付宝里面的钱可以随时提到个人银行卡吗
  • 培训费没有发票怎么办
  • 收到采购款
  • 提供部分原料的英文
  • 财政补贴收入是什么
  • 水泥厂水泥增值税率是多少?
  • 车辆进项税怎么算
  • 铝合金失效分析案例
  • 把公司的钱借给别人责任
  • 企业所得税减免政策
  • 所得税 季报
  • 银行账户注销以后预留印鉴
  • 预付款增加说明什么
  • 非正常损失怎么处理
  • 活动展开方式怎么写
  • windows10如何开启wifi
  • 销售方开红字发票怎么处理
  • 怎么关闭windows11自动更新
  • PHP:curl_reset()的用法_cURL函数
  • 增值税发票可以抵扣多少
  • 分期收款销售账务处理及税务处理
  • 以下关于static
  • hpzts04.exe是什么进程 有什么作用 hpzts04进程查询
  • jsonobject忽略字段
  • 调入的无形资产记入哪里
  • 不是吧阿sir表情包
  • 代销产品的形式有哪些
  • 固定资产清理应交增值税怎么算
  • 可供出售金融资产和交易性金融资产
  • 新申报是什么
  • 查账征收利润50万交多少税
  • 阿里云ecs重装
  • php5.6.和7.2区别
  • 股东投钱一般怎么投
  • 怎么查询mysql sql_mode
  • 年末已经结账了怎么入账
  • 固定资产加速折旧的方法有哪些
  • 个体工商户生产经营税
  • 财务报表年报里面的利息费用怎么填
  • 境外所得税税收抵免操作指南
  • 流动比率好说明什么
  • 商业汇票的票样
  • 财政总预算会计的主体是
  • 出口免抵退和免退有什么区别
  • 案例分析购入办法怎么写
  • 公司购买垃圾袋可以抵扣吗
  • 预付账款无法取得发票如何处理
  • 工会经费以前没交现在怎么补交
  • 材料会计实务操作题答案
  • 财务预算怎么做模板
  • windows server 2003如何安装
  • win7系统调亮度怎么调
  • git 进阶
  • win8.1不能关机
  • Windows7 64位系统如何添加打印机图文教程
  • linux批量清空文件内容
  • win8 任务栏
  • win8.2系统
  • winpe 系统还原
  • linux 文件数量 命令
  • css中dl
  • [置顶]JM259194
  • JavaScript为事件句柄绑定监听函数实例详解
  • 湖北省税务局官网电话
  • 广东国税app安卓版网上预约
  • 安徽税务发票查询入口
  • 重庆市电子税务局电话
  • 中国地税国税
  • 中央财经大学法学院
  • steam充值码生成
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设