UE4多点触控

建立WebSocket连接

3DCAT平台已经实现了应用端与网页端的通信流程, 具体通信流程在通信基础小节中进行了详细介绍, 我们需要使用多点触控插件在UE中建立本地WebSocket连接来最终接受平台转发的网页消息, 以及通过此连接向网页端发送自定义消息.此外还支持多点触控输入。前端把触控数据发送到UE应用。ue应用根据数据再模拟触控输入。

如果你还没有阅读通信基础小节, 推荐花2分钟阅读一下.

通信基础


1. 使用RayStreamingForUE插件

RayStreamingForUE会在应用启动后自动连接到3DCAT平台, 无需任何的额外配置, 并提供了RayStreamingForUE组件获取WebSocket连接事件.

1.1 插件下载与安装

下载对应引擎版本的RayStreamingForUE插件并解压, 随后将解压后的插件复制到引擎安装目录下的Plugins文件夹中(如C:\Epic Games\UE_4.26\Engine\Plugins).

若你使用C++工程, 你可以将此插件移动到的项目根目录下的Plugins文件夹中, 这允许你对此插件进行二次开发. 注意最好不要同时将插件复制到引擎和项目中, 这可能会导致打包时报错.

RayStreamingForUE

1.2 插件的配置属性

项目安装插件之后,点击"编辑", 选择"项目设置"打开项目设置面板。 RayStreamingPluginConfig

1.3 插件的使用

1.3.1 插件通信

创建一个蓝图Actor, 为其增加一个RayStreaming组件. 选中RayStreaming组件, 点击OnMessage事件旁的+号创建消息接收事件. 当收到消息后, 我们将其打印到屏幕中, 并调用RayvisionSocket->SendMessage方法来将消息传输回前端.

Ray_USe

1.3.2 修改TestUrl(可选)

在进行本地开发时, 消息来源可能是开发机的本地端口, 为了方便开发者, 你可以通过修改TestUrl来设定在编辑器环境下的WebSocket连接地址, TestUrl不会在打包后生效, 在打包后, RayvisionSocket会始终尝试连接到3dcat.live. RayUse2


1.3.3 多点触控功能(可选)

云平台已经完成了基本的输入操作映射,能够满足基本的单点、双点、键盘输入等输入映射。如果需要三点及以上输入,则需要开启多点触控功能。

勾选“UseRayStreamingInput”选项即可。如下图所示: RayUse3

多点触控插件从前端获取触控数据。然后利用引擎自带的类模拟触控输入,可以使用引擎自带的触摸事件做开发。如下图所示: RayUse4

业务咨询:400-8037-298