总要有人来改变世界的,为什么不能是你呢

ue4之使用WebUI插件实现透明网页点击穿透

先前使用ue4自带的web brower插件嵌入了网页,但是全屏覆盖网页的时候,网页层劫持了鼠标对场景的操作控制。

之前的项目中为了实现这种透明区域可控,同事采用的是在User Interface-->Widget Blueprint组件中如下布局:

这样确实也实现了所需要的功能,但是可以看到由于四块页面是分开的,所以这四块要分4个页面写。

那么问题来了,可不可以只用一个web brower组件,并且还能实现透明区域点击穿透,让场景响应鼠标操作呢?

这就是同事最近发现的一个web插件---WebUI,我也跟着学习了一波,插件我已经传到百度云了,地址如下:

链接:https://pan.baidu.com/s/1_rAZsh5_qd9Ul_Z_Dp_23Q 提取码:myrt

1.下载插件

下载好插件之后,放到上述文件夹下(引擎版本4.24.3,平台windows)

然后打开项目,在插件窗口开启该插件

2.编写组件蓝图

User Interface-->Widget Blueprint

这一步和之前差不多,多了几个关于透明穿透的设置

依次是:

开启透明穿透,

穿透值(透明度小于该值就穿透),

穿透延迟。

3.编写HUD蓝图类

新建一个HUD蓝图类,然后写蓝图

其实你也可以直接利用上一篇的蓝图;

其实就是添加自己写的UI组件到场景中,但是上图的蓝图额外添加了对网页的事件处理和始终显示鼠标

4.world setting添加hud

写完上述HUD类之后,设置在wirld setting中设置HUD class

这个小写的hud就是我之前自己写的那个HUD类。

至此,Web UI插件的应用就结束了。

 

 

posted @   桔子桑  阅读(7055)  评论(20编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示