在开发数字孪生应用程序的时候,除了三维场景展示之外,也需要开发丰富和酷炫的2D页面。 使用UE4的UMG开发图表显得比较笨拙。 而通过Web插件允许开发者创建丰富的基于Web HTML5的用户界面,它由内置在UE4中的web浏览器提供支持,包括对Windows、Mac、Linux、Android和iOS的支持。 基于这种插件技术,普通的前端开发人员也可以开发UE4界面上丰富的2d页面效果。

下面分享我们UE4做的数字孪生的几个案例,其中的2d页面是通过Vue结合html5技术和echart图表插件进行开发的:

下面我们介绍WebUI插件的使用

下载插件

插件的下载地址是:

https://tracerinteractive.com/plugins/webui

https://github.com/tracerinteractive/UnrealEngine/releases

如果你发现这个地址打开是404. 需要关联github和epic账号,才能显示,关联账号参考官方文档:

https://www.unrealengine.com/zh-CN/ue-on-github

需要相关的插件的,也可以查看文章末尾的公众号,进行关注 阅读本篇文章获取。

安装插件

有两种方式可以安装WebUI插件,一种是安装到引擎,一种是安装到指定的项目。

安装到项目

如果不想安装到引擎,那么把插件放到项目所在的目录下的Plugins目录,如果项目下没有Plugins目录,可以手动创建。 如下图所示

WebUI插件依赖JsonLibrary和HttpLibrary,所以也需要这两个依赖的插件。

安装到引擎

若要安装WebUI插件到引擎,请将下载的文件解压到以下引擎文件中:

需要注意已下载的插件版本要与引擎版本对应。

PS:安装之后,需要重启UE编辑器。

启用插件

开启UE4 打开或者新开一个项目之后,打开菜单编辑->插件,然后在插件窗口右上角的搜索栏中搜索

Web UI。确保WebUI插件的已启用复选框已勾选。启用插件后,重新启动虚幻引擎。

至此WebUI插件的下载,安装和启用完成。

使用WebUI插件

在内容浏览器中,点击右键,创建一个控件蓝图。

创建WebUI

然后点击进入创建的控件蓝图:

把Web Interface 拖入到画布中:



选择锚点:



把偏移量等全部设置为零:

设置透明穿透

设置透明穿透之后,网页透明的地方,可以操作下面的三维,勾选上"Enable Transparency"选项既可:

加载网页

可以通过蓝图加载控件、以及设置控件加载的URL地址或者URL文件。

准备网页文件

此处不赘述

加载网页URL或者文件

首先把编辑器从设计器切换到图表:

然后添加下面蓝图加载一个本地html文件:

添加控件到界面

在关卡蓝图下添加下面的蓝图代码,可以把创建的控件蓝图添加到界面:

总结

最终的运行效果如下,可以看出加载了网页的内容:

本文介绍了了WebUI的基础使用,后续会介绍通过WebUI,网页与UE4之间的通信。

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

UE4 WebUI插件使用指南的更多相关文章

  1. Android官方技术文档翻译——Gradle 插件用户指南(1-3)

    不知道是什么网络问题,上午一直发不了博客,其它页面基本正常,就是在写博客这里,每次打开都是响应超时.刚才用了VPN,顺便试了一下,竟然能够编辑.想是CDN之类的问题吧. 这次翻译的是Gradle 插件 ...

  2. Android官方技术文档翻译——Gradle 插件用户指南(5)

    昨晚把第五章未译完的几句话攻克了.只是第六章没怎么译,明后天又是周末,假设周一前第六章翻译完的话,周一再发第六章. 本文译自Android官方技术文档<Gradle Plugin User Gu ...

  3. Android官方技术文档翻译——Gradle 插件用户指南(4)

    最近赶项目,白天基本没时间,只有晚上在家的时候才能看一看.昨天晚上只翻译完了第四章,今天就只发第四章吧. 本文译自Android官方技术文档<Gradle Plugin User Guide&g ...

  4. Android官方技术文档翻译——Gradle 插件用户指南(7)

    本文译自Android官方技术文档<Gradle Plugin User Guide>,原文地址:http://tools.android.com/tech-docs/new-build- ...

  5. Android官方技术文档翻译——Gradle 插件用户指南(6)

    没想到翻译这篇<Gradle 插件用户指南>拖了差不多一个月,还跨年了.不过还好,在2号时终于一口气把剩下的给翻译完了(其实那天剩下的也就不到一章). 今天先发一下第六章,明天再发第七章. ...

  6. 封装js插件学习指南

    封装js插件学习指南 1.原生JavaScript插件编写指南 => 传送门 2.如何定义一个高逼格的原生JS插件 =>传送门 3.手把手教你用原生JavaScript造轮子 =>  ...

  7. UE4制作插件的插件神器pluginCreator

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/45644007 作者:car ...

  8. UE4新手之编程指南

    虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...

  9. UE4 Plugins插件分享:

    嘿,基佬你掉的插件! https://github.com/EverNewJoy/VictoryPlugin VictoryBPLibrary ---- 由活跃于 UE4 社区的某基佬 Rama 实现 ...

  10. 原生JavaScript插件编写指南(转载)

    原生js开发指南 https://www.jianshu.com/p/e65c246beac1 在jQuery大量使用的环境下,目前网上的众多jQuery插件也能基本满足要求,但是在项目具体需求下,有 ...

随机推荐

  1. ProxySQL(6):管理后端节点

    文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9286922.html 配置后端节点前的说明 为了让ProxySQL能够找到后端的MySQL节点,需要将后端的 ...

  2. PostgreSQL 创建数据库

    PostgreSQL 创建数据库可以用以下三种方式: 1.使用 CREATE DATABASE SQL 语句来创建. 2.使用 createdb 命令来创建. 3.使用 pgAdmin 工具. CRE ...

  3. qiankun+vue,为什么我的子应用的子路由老是跳404?这么解决

    主要解决子应用内部跳转路由时,跳到404页的问题 你能搜这个,我姑且认为你基本配置已经好了,而且主跳子的一级路由是正常的,请往下看 忘说了,我的主应用和子应用都是Vue 主应用跳子应用都正常,为什么子 ...

  4. JVM中的堆

    堆 内存结构 堆的核心概念 <java虚拟机规范>中对java堆的描述是:所有的对象实例以及数组都应当在运行时分配在堆上. 一个JVM实例只存在一个堆内存(就是new 出来一个对象),ja ...

  5. 齐博x1fun实例 鉴于很多人问列表的筛选怎么放到首页、内容页等等地方 贴出方法

    application\common\fun\Field.php 你可以复制一份 也可以直接改 直接改记得加锁 不然升级就覆盖了 我们把   public function list_filter($ ...

  6. F118校准(二)-- 操作步骤(使用PX01 PG点屏,并使用PX01 PG校准F118)

    1. 准备工作 硬件连接: CA310通过USB线材连接PC PX01通过USB线材连接PC F118通过灰排线连接PX01左上角的GPIO扩展口(如下图所示) LCM连接PX01 启动LcdTool ...

  7. MySQL高可用集群MHA方案

    MySQL高可用集群MHA方案 爱奇艺在用的数据库高可用方案 MHA 是目前比较成熟及流行的 MySQL 高可用解决方案,很多互联网公司正是直接使用或者基于 MHA 的架构进行改造实现 MySQL 的 ...

  8. Istio(九):istio安全之授权

    目录 一.模块概览 二.系统环境 三.istio授权 3.1 istio授权 3.2 来源 3.3 操作 3.4 条件 四.实战:授权(访问控制) 4.1 访问控制 4.2 清理 一.模块概览 在Ku ...

  9. SpringCloud(六) - RabbitMQ安装,三种消息发送模式,消息发送确认,消息消费确认(自动,手动)

    1.安装erlang语言环境 1.1 创建 erlang安装目录 mkdir erlang 1.2 上传解压压缩包 上传到: /root/ 解压缩# tar -zxvf otp_src_22.0.ta ...

  10. 我要涨知识 —— TypeScript 常见面试题(一)

    1.ts 中的 any 和 unknown 有什么区别? unknown 和 any 的主要区别是 unknown 类型会更加严格:在对 unknown 类型的值执行大多数操作之前,我们必须进行某种形 ...