UE4的NDisplay可构建Cave系统

官方文档,版本UE4.27

https://docs.unrealengine.com/4.27/zh-CN/WorkingWithMedia/IntegratingMedia/nDisplay/

可以参照文档了解NDisplay的相关内容。

1.创建工程,以第三人称射击游戏为例。

2.勾选插件,重启项目

nDisplay:

Switchboard:

 

扫描二维码关注公众号,回复: 14778522 查看本文章

 3.项目设置,使得nDisplay起作用。按照提示重启项目

4.在项目中右键创建nDisplayConfig文件 

 出现对话框,可以选择模板也可以选择全新的。我们此例选择新的。

5.打开新建的配置文件并进行三幕拼接配置。如果点击编译会报警告

 

因为我们是单机测试加一个节点即可,如果需要多机器渲染那么按照需求添加。

 

弹出对话框,把IP填上,本机测试填127.0.0.1

其他按照需求修改

 

默认有一幕,然后添加两幕,并分别命名Left Front Right

结果如下图:

 

6.三个nDisplayScreen进行Transform设置以达到拼接目的

根据nDisplayScreen的屏幕比例进行等比设置缩放scale,这里选择16:9

三块屏参数如下:

 

 

 

 7.对第5步创建的渲染节点根据屏幕块数增加node并命名。注意后面有Master的node为控制机

对三个node节点进行设置。三个节点无缝连接成一排。大小根据需求缩放。

下图为左边节点数据。Front的横轴位置右移768,Right的右移2*768即为1536

对node的子节点即代表的屏幕进行设置。VP_Left设置如下:

VP_Front和VP_Right对应Screen选择Front,Right

 

预览视图OutputMapping内显示的嵌套关系,三块屏幕横向放置。提示可以按照比例根据需求缩放,效果如下:

 

8.保存然后将设置完的nDisplayConfig文件拖到场景中。

 

 9.为了让渲染效果随控制器变化,可以把nDisplayConfig放置在第三人称控制器下做子物体。nDisplayConfig初始化为0.

10.在第三人称控制器内加点逻辑,让nDisplayConfig的视角跟随控制器视角变化

(1)让鼠标显示,便于聚焦主屏幕。获取控制器下的子物体

(2)新建事件,把控制器的相机旋转赋给nDisplayConfig

(3)将新建的事件放在相机旋转变化的事件之后

11.设置nDisplay的控制工具 Switchboard。

(1)在编辑器视口上方打开Switchboard。第一次安装会弹出安装窗口。这里要注意:环境链接非国内。如果安装完后,打不开Switchboard面板,那么是环境没装好。

(2)打开面板会出现如图窗口,点击Ok.如果ConfigPath和uProject为空则将uProject定位到当前项目即可自动填写

(3)添加设备nDisplay

(4)点击扫描配置文件按钮。看到配置文件,点击OK即可。

(5)结果如图:

(6)更改Switchboard的默认设置,图示关闭多人连接器

多屏显示设置如下图:启用多核支持,选择dx11增加兼容性,GPU数量改为1,进程质量选择Low,方便测试效果。

(7)打开Switchboard服务端监听

窗口会立刻窗口化

(8)运行Switchboard,点击设备连接

连接成功如图:

(9)点击开始所有已经连接的多屏设备

12.多屏效果如图:

为了看着效果好,可以把人物模型隐藏或者拖到相机之后。效果如图:

注意:鼠标点击左侧窗口或者选择左侧窗口方可控制运动和镜头

13.打包部署

正常打包即可。打完包,导出nDisplayConfig文件到打包的文件夹里。

14.关闭引擎后,switchboard不关闭。如果想单独起switchboard,那么需要追踪到switchboard.bat后,将其关联的路径进行修改。

15.修改switchboard配置,关联为打包好的项目。

清空uProject和EngineDir目录

修改nDisplayConfigFile位置为打包文件夹里导出的nDisplayConfig

nDisplayExecutableFilename改为打包后的exe

16.启动屏幕设备,看到效果。这样基本的Cave显示效果搭建完毕。

猜你喜欢

转载自blog.csdn.net/xiao__sha/article/details/127632372