首页 > 其他分享 >UE4 WebUI使用指南2-通信

UE4 WebUI使用指南2-通信

时间:2023-03-08 17:34:34浏览次数:43  
标签:网页 ue WebUI UE UE4 使用指南 interface typeof

前面一篇WebUI的文章讲述的WebUI插件的下载,开启,在UE中创建,加载网页等。
本文继续讲述通过WebUI,UE和网页实现双向通信的实现思路。

一点说明

由于WebUI 使用的浏览器内核并不是最新的浏览器内核,所以一些新的JS语法和新的CSS并不支持。 比如不支持解构语法等。

所以在制作页面的时候需要注意这些问题点。

调试

如果遇到问题,需要调试,在WebUI加载网页之后,点击网页上任意元素,然后按下shift+ctrl+i 可以调出网页控制台,进行错误查看。

引入通信JS代码

要实现UE和页面的通信,首先需要在页面中引入一段js代码,如下所示:

"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);window.ue=ue;

该js代码片段为WebUI官方推荐。

网页向UE发送消息

网页向UE发消息比较如意,通过ue4函数,既可向UE发送消息,ue4函数支持两个参数,name和data,name是string格式,data是json格式,如下所示:

ue4("cmd",{value:123})

UE接受消息

UE接受消息,通过蓝图即可监听webui的消息即可,如下图(蓝图)所示:

image.png
其中name和Data是网页传递过来的参数,Callback此处不详述,一般用不上。

网页接受UE消息

网页除了可以给UE发送消息外,还可以接受来自UE的消息。 只需要在ue.interface对象上面,添加一个回调函数,即可接受消息,如下所示:

ue.interface.add = function (data) {

  const { initValue } = JSON.parse(data);
  // todo
};

UE发送消息给网页

UE想网页发送消息的蓝图如下所示,调用webUI的Call方法,Function传递函数名称,Data 传递函数的参数

image.png

总结

本文提供了UE和网页的双向通信的方式的思路,具体细节需要大家自己多上手尝试。

太阳虽好,总要诸君亲自去晒,旁人却替你晒不来。

最后,关注公号“ITMan彪叔” 可以添加作者微信进行交流,及时收到更多有价值的文章。

标签:网页,ue,WebUI,UE,UE4,使用指南,interface,typeof
From: https://www.cnblogs.com/flyfox1982/p/17195442.html

相关文章

  • PyCharm入门级使用指南,Python开发必备!
    PyCharm是一个专业的PythonIDE,可以提供全面的Python开发支持,包括代码编辑、调试、测试、版本控制等功能。对于初学者来说,PyCharm可能会有点吓人,但是随着您的熟练使用,会发......
  • tcpdump使用指南
    全网最详细的tcpdump使用指南 今天要给大家介绍的一个Unix下的一个 网络数据采集分析工具,也就是我们常说的抓包工具。与它功能类似的工具有wireshark,不同的......
  • 程序调试利器——GDB使用指南
    作者:京东科技孙晓军#1\.GDB介绍GDB是GNUDebugger的简称,其作用是可以在程序运行时,检测程序正在做些什么。GDB程序自身是使用C和C++程序编写的,但可以支持除C和C++之外......
  • DevTools使用指南
    Network筛选框Filter可用属性参考文档:reference#filter-requests-by-properties属性详细信息domain仅显示来自指定域的资源。可以使用通配符(*)包含多个域......
  • 斯坦福课程 UE4 C++ ARPG游戏实例教程 01.基础AI与行树
    斯坦福课程UE4C++ARPG游戏实例教程0.绪论前言&摘要本篇文章是基于斯坦福UE4C++课程的学习记录。因为B站用户surkea由于学业原因,暂停了课程笔记的更新,这里狗尾续貂,将......
  • 斯坦福课程 UE4 C++ ARPG游戏实例教程 0.绪论
    斯坦福UE4C++课程学习笔记0.绪论前言UEC++在国内目前还处于比较新的一个领域,网上能找到的教程多为蓝图教程,且质量良莠不齐。终于在B站找到了外网搬运的斯坦福UEC++......
  • UE4 Statistics统计工具
    UE4Statistics统计工具主要有2大块功能:(1)编辑器环境下:当前关卡中Texture、Primitive、StaticMeshLightInfo的统计信息,以及BuildLight时各物件花费的时间、内存消耗等统......
  • 搭建stable-diffusion-webui环境,使用ai生成图片
    首先python版本要求:Python3.10 第一步下载框架代码:https://github.com/AUTOMATIC1111/stable-diffusion-webui.gitgithub慢的话把域名换成https://kgithub.com/ ......
  • ChoimoeBot 插件使用指南
    目录插件管理器语句抽象化使用处理好友添加和群邀请定时任务ChatGPT配置使用娶群友配置使用自动回复插件词库配置回复配置日麻小工具手牌分析头像表情包使用图片搜索配置使......
  • ZoomIt使用指南(转)
    ZoomIt,这个工具是sysinternals的一个工具,sysinternals里面工具很多,很多都是你不知道干什么用的。所以有个伟大想法,对这个工具集进行一个全面的说明。这个工具是用来演示用的......