Unreal Engine内嵌插件WebBrowser从HTML页面到Blueprint通讯

Unreal Engine内嵌插件WebBrowser从HTML页面到Blueprint通讯

  • 问题
  • 解决办法
    • 将引擎内插件拷贝到工程目录下
    • 修改插件代码
    • 蓝图接口使用

问题

Unreal Engine内嵌WebBrowser插件可以通过调用ExecuteJavascript接口执行js代码,但无法从JS调用Blueprint蓝图函数

解决办法

修改内嵌WebBrowser插件代码

将引擎内插件拷贝到工程目录下

Unreal Engine修改插件很简单:从UE安装目录下找到插件对应的源代码,将整个源代码目录拷贝到项目下Plugins目录(如果不存在则新建)下即可。当项目目录下Plugins目录下的插件和安装程序自带插件同名时,优先使用项目下Plugin是目录下插件代码。

将D:\Program Files\Epic Games\UE_5.2\Engine\Plugins\Runtime下WebBrowserWidget
在这里插入图片描述

整体拷贝到项目的Plugins目录下
在这里插入图片描述
注意:要从工程的Unreal Engine对应版本的安装程序拷贝插件代码

修改插件代码

编辑[project path]\Plugins\WebBrowserWidget\Source\WebBrowserWidget\Public\WebBrowser.h
增加UFUNCTION蓝图接口函数

	UFUNCTION(BlueprintCallable, Category = "Web Browser")void BindUObject(const FString& Name, UObject* Object, bool bIsPermanent);

编辑[project path]\Plugins\WebBrowserWidget\Source\WebBrowserWidget\Private\WebBrowser.cpp
增加蓝图接口实现函数

void UWebBrowser::BindUObject(const FString &Name, UObject* Object, bool bIsPermanent)
{if (WebBrowserWidget.IsValid()){WebBrowserWidget->BindUObject(Name, Object, bIsPermanent);}
}

蓝图接口使用

打开uproject项目,进入插件选项,激活Web Browser插件,关闭项目
在这里插入图片描述
重新编译C++工程

再次打开uproject项目
创建或者打开一个User Widget,添加WebBrowser组件
WebBrowser组件已经有我们自定义的BindUObject蓝图接口了
在这里插入图片描述
在初始化时调用BindUObject蓝图函数
在这里插入图片描述
在HTML页面中JS调用绑定对象函数,调用规则为:window.ue.Name.FuinctionName(param_string)

    if (null != window.ue && null != window.ue.player) {window.ue.player.notify(JSON.stringify(json));}

在BindUObject中指定的Object蓝图类中实现FunctionName函数
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1380793.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

程序员必备的GitHub加速指南,真香!

不知道从什么时候我访问 github 就无法展示图片了,而且有时候(尤其晚上)打开网页速度极其滴慢,就问大家受不受的了吧?我反正是顶不住! 所以连夜开发了个小工具,使用以后呀,不仅 github 页面打开…

基于ZYNQ-7000的AI加速器设计之PS端(ARM)网络编程(UDP协议)

1、开始前的准备工作 关闭电脑防火墙连接开发板电源开发板与PC之间串口连接,JTAG下载线连接PC机与开发板间网线连接,并保证能ping通 2、Vivado端配置 创建工程,具体步骤不详细介绍,网上都有教程,器件型号按照实际用…

使用CUDA+OpenCV加速yolo v4性能

YOLO是You-Only-Look-Once的缩写,它无疑是根据COCO数据集训练的最好的对象检测器之一。YOLOv4是最新的迭代版本,它在准确性和性能之间进行了权衡,使其成为最先进的对象检测器之一。在智能视频分析管道中使用任何对象检测器的典型机制包括使用…

基于ZYNQ-7000的AI加速器设计之PS端(ARM)网络编程(TCP协议)

前注:ARM端的TCP协议编程步骤和UDP协议编程步骤完全相同,只是在ARM端的C代码实现不同,在本次TCP协议实现过程中我们主要利用了官方提供的Demo,然后根据自己的需要加以改写,具体过程如下。 1、开始前的准备工作 关闭电脑防火墙连…

PSN下载加速相关程序教程(PS3.ProxyServer和PSN DM)

此文转自: http://bbs.duowan.com/thread-27759129-1-1.html 感谢星夜探索者的总结! 前言: 哦嗨哟,用wifi的机友们一定发现,直接在线用wifi下东西太慢了,而大家也一定用过其他程序来加快psv的下载&#xff…

docker 镜像下载加速(安装 kubernetes 必备)

大佬的文章 https://blog.k8s.li/kubespray-tips.html https://fuckcloudnative.io/posts/docker-registry-proxy/ docker registry 可以通过设置 remoteurl 参数将其作为远端仓库的缓存仓库,这样当你通过这个私有仓库的地址拉取镜像时,regiistry 会…

《面试1v1》ElasticSearch倒排索引

🍅 作者简介:王哥,CSDN2022博客总榜Top100🏆、博客专家💪 🍅 技术交流:定期更新Java硬核干货,不定期送书活动 🍅 王哥多年工作总结:Java学习路线总结&#xf…

Docker启动一个Centos镜像

搜索可用的centos的docker镜像 docker search <image>&#xff1a;在docker index中搜索imagedocker search centos 下载centos镜像&#xff08;拉取镜像&#xff09; docker pull centos:latest查看镜像docker images&#xff1a;列出imagesdocker images -a&#xff…

博途1200间的S7通讯

目录 S7通信 1.新建项目&#xff0c;硬件组态&#xff1b; 2.建立数据&#xff0c;取消优化。 3.PUT/GET指令 S7通信 仅西门子支持&#xff0c;西门子PLC间最常用、最简单的通信协议。通信时&#xff0c;需要在客户端侧调用PUT/GET指令。PUT指令用于将数据写入到伙伴CPU&#…

西门子PLC1200博途V16程序画面例程,具体项目工艺为制药厂生物发酵系统

西门子PLC1200博途V16程序画面例程&#xff0c;具体项目工艺为制药厂生物发酵系统&#xff0c;程序内有报警&#xff0c;模拟量标定处理&#xff0c;温度PID&#xff0c;称重仪表USS通讯和基本的各种数字量控制&#xff0c;硬件组成包含称重仪表通讯及和ET200SP模块通讯组态。 …

基于TIA博途平台西门子1200/1500PLC定时器时间格式转换运用编程

前景介绍&#xff1a; 平常我们编写程序的时候用到最多的指令也许就是定时器指令了&#xff0c;有时候我们需要通过人机界面修改定时器的设定时间。但是许多人机界面不支持西门子S5 TIME时间格式。怎么办呢&#xff1f;我们可以通过西门子库文件系统程序将整数转换为S5 TIME格…

发那科机器人协同作业程序,博途西门子1200搭配-威纶通触摸屏

发那科机器人协同作业程序&#xff0c;博途西门子1200搭配-威纶通触摸屏&#xff0c;真实项目&#xff0c;程序已经调试完毕&#xff0c;稳定运行。 程序特点&#xff1a; 1.含有机器人电脑可读源程序&#xff0c; 2.plc程序采用博途scl与梯形图混合编程&#xff0c;中文注解&…

「项目案例」使用西门子博途 SCL高级语言编写

此项目用博途 SCL高级语言编写如何开启运行时间最少的几台设备 需求&#xff1a; 如果客户共有8台水泵&#xff0c;4用4备&#xff0c;但每次启动设备时累计运行时需要最运行时间最短的4台运行。 解析&#xff1a; 如果使用梯形图来写的话&#xff0c;此程序会非常复杂&#xf…

西门子1500博途医药系统程序案例

西门子1500博途医药系统程序案例。 标准化编程 具体为医药制品&#xff0c;及空调恒温恒湿&#xff0c;PID控制博图程序&#xff0c;带昆仑流程图&#xff0c;西门子1500PLC和昆仑通态触摸屏上位软件&#xff0c;博图版本V16及以上。 适合研究学习标准程序设计。 ID:811668227…

TIA portal西门子博途安装时一直提示重启怎么办?

TIA portal西门子博途安装时一直提示重启怎么办? 在安装西门子的某些软件的时候,经常提示要重启,而且重启之后依然提示重启,让人比较烦恼,这个问题是由以下原因引起的: 一般系统文件无法删除时,比如其他程序正在占用等等,系统会把这些文件保存在注册表该减值下面,以便…

西门子1500PLC博途程序实例,大型程序fanuc机器人汽车焊装自动生产线程序,程序硬件结构包括1台西门子1500PLC程序,2台触摸屏TP1500程序

西门子1500PLC博途程序实例&#xff0c;大型程序fanuc机器人汽车焊装自动生产线程序&#xff0c;程序硬件结构包括1台西门子1500PLC程序&#xff0c;2台触摸屏TP1500程序 9个智能远程终端ET200SP Profinet连接 15个Festo智能模块Profinet通讯 10台Fanuc发那科机器人Profinet通讯…

TIA西门子博途软件中如何让程序段自动显示注释?

TIA西门子博途软件中如何让程序段自动显示注释&#xff1f; 1.打开TIA博途软件–项目视图&#xff0c;点击菜单栏中的“选项”–“设置” 2.进入到设置界面后&#xff0c;点击“PLC编程”–“常规”&#xff0c;勾选“显示程序段注释”&#xff08;with network comments&…

网络安全--awk总结

目录 一、谈谈我对awk的理解 二、常用命令总结 三、awk变量 四、举例说明 一、谈谈我对awk的理解 awk是一种用于文本处理和数据提取的命令行工具&#xff0c;它通过模式匹配和操作来处理输入数据并生成输出。 二、常用命令总结 -F fs&#xff1a;fs指定输入分隔符&#xf…

西门子PLc程序,博途V16 V17版1200与多台G120变频器通过过modbus RTU485 通讯控制,模拟量转

西门子PLc程序&#xff0c;博途V16 V17版1200与多台G120变频器通过过modbus RTU485 通讯控制&#xff0c;模拟量转换&#xff0c;温度转换&#xff0c;压力Pid控制&#xff0c;西门子KTP700 HMi 含电路图&#xff0c;G120变频器报文 ID:8615671795001402工控老玩童

工作:MODBUS通讯协议知识

工作&#xff1a;MODBUS通讯协议知识 一、Modbus三种通讯分类 Modbus TCP/IP 使用网口通讯&#xff0c;更多是用于快速网络设备&#xff0c;如机器人&#xff0c;上位机视觉。 Modbus RTU 使用RS232或者RS485/RS422接口&#xff0c;通讯方式是串口通讯&#xff0c;是直接传输…