征稿要求:
1.论文符合本刊宗旨与学术规范,具备较新的学术观点,使用较新的文献资料。评论性文章观点鲜明,语言生动,分析深刻,能够及时反映、探讨学界及业界的热点问题。
2.所投稿件为作者本人 撰写并未曾在其他刊物公开发表过。
3.稿件一律用电子邮件附件形式发送到电子邮箱:guangdianyanjiu@yeah.net
4.附件请用Word文件,并注明文件名及作者名。
5.稿件篇幅:论文原则上以6000字以内为宜;评论文章控制在1500字左右。
6.稿件应注明作者的真实姓名、职称(职务或学位)及工作单位、详细通讯地址及邮编、联系电话(手机最佳)和电子邮箱。
来稿的处理流程是什么?
1.请勿一稿多投,也不要重复投稿。
2.收到稿件后,本刊编辑部认为符合要求或基本符合要求但仍需修改的,会主动与作者联系。投稿后30个工作日内未收到本编辑部处理意见的,可自行对稿件另作处理。
3.因经费有限,编辑部对特约稿件支付超标稿酬,一般稿件只能略付薄酬。
文章格式有什么讲究?
1.标题。主题用1号黑体;副题用3号宋体。居中。
2.作者姓名,用四号楷体,右对齐。
3.文本提要,小四号楷体,200字以内;关键词,小四号楷体,3-5个。
4.正文,用5号宋体。1级小标题用小4号幼圆体,居中;2级小标题用5号黑体,左对齐并缩进两个汉字;3级小标题用5号楷体,左对齐并缩进两个汉字。
5.鉴于本刊区别于其他学刊图文特色 建议作者供稿时提供文章相关图片及作者照片,并确保图像精度。
6.文末标出作者单位及职称(或学位、职务),若有多个作者,用分号隔开;
7.注释一律采用尾注形式。注释二字,用小5号黑体。注释条目各项顺序依次为:作者姓名、冒号、《文章标题》、逗号、《刊名》某年第几期(《书名》第几页,某年版),用小5号楷体。
8.为节约篇幅,一般采用注释形式的文章,不再单独一页设立参考文献。
基于原生UE4的MR+数据可视化应用 ——谈英雄联盟手游联赛的项目制作
前言
虚幻4引擎(简称UE4)所具备的作为游戏引擎的特长——自由灵活的可开发性、个人电脑的免授权使用及优秀的画面效果,使其可不仅局限于常规的游戏制作。在新版本中,随着Composure插件的落地,对视频采集设备如AJA及BMD卡的支持逐渐完善,以及Livelink协议的扩展性增强,使得UE4引擎在广播电视流媒体领域的内容制作与图像合成成为可能。电竞产业的规模扩大以及内容升级,一般的平面包装已经无法满足顶级赛事的制作需求,面对日益增长的游戏营收需求,普通形式的广告投放越来越无法勾起观众的消费意愿。国外顶级赛事DOTA2国际邀请赛以及LOL S级赛事对于虚拟合成的成功运用,给众多赛事主办方带来启发,根据选择的英雄辅以特效动画,通过虚拟合成技术,在现场直播画面中加以展示,在提供赛事信息的同时,也为新英雄、新皮肤提供了全新的宣传方式,虚拟BP也一度成为了高端赛事的标配。设计一套成熟稳定、方便扩展、利于维护的多平台部署虚拟BP系统就成了能否长期推进项目的关键点。
本文是基于英雄联盟手游联赛项目,通过为其赛事设计基于原生UE4的虚拟BP系统,探索MR+数据可视化技术在该项目中实现的一些思路与心得。该项目设计的虚拟系统主要包括4个逻辑层,即数据层、渲染层、控制层以及应用层。以下将详细分析每个逻辑层的搭建思路及具体的技术细节。
一、数据层
数据层作为整个系统的逻辑底层,负责接收来自赛事的BP数据,系统内的数据传输,为资产数据表提供循环搜索的输入,搭建局域网服务器与客户端应答,局域网内的数据传输与触发协议传送。
1. JSON数据处理与系统内传输
UE4作为游戏引擎对JSON有着良好的支持度,在与赛事方交流沟通之后统一使用JSON进行数据传送,数据处理系统分为本地JSON文件读取与网络URL方式获取,在蓝图中新建布尔变量来控制本地文件读取还是网络获取,使用Event Tick来确保整个读取流程的持续性并能实时刷新最新的数据,运用Va Rest子系统将JSON文件按照预设变量名转换为本地结构体以便进行后续UE4内处理,转换后的结构体包含多个变量以及对应变量下的以数组形式存在的数据,该系统中所需要运用的变量为PICK RED OK、PICK HERO BLUE以及PICK HERO RED,HERO即为包含所选英雄的名称,而PICK OK变量涉及BP后数据保护功能,HERO中的数据以数组的形式存在,针对赛事换边的比赛形式,需要新建可控制布尔值来判断左方为蓝色或者左方为红色,并对数组进行INDEX循环获取数组中的每一个值,加以从0至9的排序并通过INTERFACES接口传送进相应的主控逻辑蓝图中。
2.资产处理
赛事数据资产作为被调用的核心以及频繁扩展的对象必须有精确的指向性、准确性及可扩展、可维护性,UE4拥有一整套完整且高效的资产整合功能,通过前期外部的资源整理将主要资产以英雄、场景、特效进行区分,并拥有多边形资产MESH、贴图文件TEXTURE、动画类文件ANIMATION及特效文件VFX文件夹,所有末端资产通过联级传导的形式逐渐汇总至模型、动画文件中,并通过DATA TABLE的形式进行访问。例如资产中贴图文件有多种类别,_d结尾的颜色贴图、_ao的AO贴图、_n的法线贴图等等,通过建立一个通用的母材质将每种贴图以节点的方式进行连接,并在添加材质特效的功能中用变量来控制材质的出现与消失,在确保资产还原准确的情况下用一种材质便可以将所有末端的贴图文件进行汇总,从母材质进行实例化复制,从而制作出头发、躯干、武器或者特效等多种材质并赋予在多边形上,完成从多边形到贴图的汇总。同样将VFX触发制作在ANIMATION序列上,并将序列给予骨骼的定义赋予多边形上,通过多级赋予的形式完成从名字到多边形再到各个资产的获取链。
3.主控逻辑蓝图制作
主控逻辑蓝图作为数据层的核心,负责接收来自JSON处理好INDEX(0-9)的字符串数据,蓝图通过设置INDEX的INT类值来区分蓝方(0-4)与红方(5-9),根据蓝图的实例拷贝安放在与现场匹配的位置之上,如此便可获得对应出现的世界位置坐标值,根据字符串搜索DATA TABLE中资产的TABLE项,获取其中所有的多边形、贴图、动画文件和VFX特效资产,通过循环的形式将这些资产载入位于蓝图预设好的数据槽内,多边形文件内的所有材质球进行循环变量化并保存为数组,通过数组的形式将控制材质特效的变量总和赋值来控制整个多边形的出现与消失效果,同时播放获取到的带有特效触发的ANIMATION序列并计算播放帧,方便在播放完毕之后循环接入待机动画。
4.多机位联动与数据传输
UE4作为游戏引擎对局域网及互联网数据传输有着极为友好的支持程度,对其局域网内的联机情况使用客户端-服务器模型。网络中的一台计算机作为服务器主持多人游戏会话,而所有其他玩家的计算机作为客户端连接到该服务器。然后,服务器与连接的客户端分享游戏状态信息,并提供一种客户端之间通信的方法。由于主控制逻辑蓝图的事件的触发与消失需要考虑多机位的联动,因此触发事件需要设置为分发广播(Multicast)的形式以便分机客户端(Client)能够远程过程调用(RPC)触发事件。在蓝图中函数和事件默认为不可靠,在细节面板中将其设置为可靠(Reliable)以确保事件的触发。
二、渲染层
渲染层负责整个逻辑系统中的视觉输出部分,负责将UE4引擎内的视觉效果,配合摄像机画面和跟踪信号,呈现在现场的舞台之上。系统主要由信号输入、Composure层级处理与合成、色域转换以及合成画面输出构成。
1. Composure流程设计
Composure作为4.17加入UE4的功能,经过历次版本迭代,功能逐渐完善成为了引擎内后期画面处理的强大工具,通过Composure插件可以轻松将不同的视觉元素合并到一个图像内,在本系统内这一流程负责将来自摄像机的信号与引擎内的视觉效果进行合成,在场景中置入电影摄像机并且通过Livelink的协议将现实中的摄像机与虚拟相机进行位置及VTC时间码的同步,Composure将引擎内的视觉效果以Layer层的方式进行引擎画面、Alpha通道与场景内反射信息的获取。通过后期材质球的节点处理形式将反射信息与摄像机画面相乘并与引擎画面进行OVERLAY叠加,便可获取到虚拟与现场画面的AR合成信号。
2. I/O设备
本系统的输入输出部分运用BMD DeckLink 8K Pro视频采集卡实现,UE4引擎中的BMD插件可以很好地支持该款视频采集卡的工作,支持8bit和10bit YUV 4:2:2以及10bit和12bit RGB 4:4:4工作,支持全色度Rec. 2020广色域标准。可输出符合本次系统与赛事方视频制式的要求,拥有4个12G的SDI接口可有更多冗余进行多路监看的功能,信号输入端则是由搭载Canon HJ14ex4.3镜头的摇臂系统负责广角摄制以及搭载Canon HJ24ex7.5镜头的摄像机安装在轨道上负责平移特写的画面摄制,由两台渲染引擎分别输出一路总计两路合成完的视频信号,进导播系统的切换台进行信号选择输出。而两台引擎的同步由交换机组成局域网系统通过UE4的远程过程调用(RPC)触发事件及外置VTC时间码生成器进行同步。
3.跟踪系统
本次跟踪系统选择的是STYPE公司的RedSpy光学跟踪系统。RedSpy 是行业标准的光学相机跟踪系统,通过将 RedSpy 摄像机安装到记录摄像机并拍摄贴在跟踪区域的反光标记贴纸,可以实时高精度地收集摄像机位置信息和镜头数据。由于采集到的数据可以实时输出到CG渲染引擎,因此是虚拟制作、XR直播、虚拟发布会的首选跟踪设备。RedSpy 相机配备了三种类型的传感器,使用最新算法实时分析和输出从这些传感器获得的数据,以实现高精度的相机跟踪。跟踪系统在硬件上分为主机端、触控显示器以及RS红外感应摄像头。RS感应摄像头固定在摄像机之上捕捉天花板或者地面的红外反光贴纸的反射信号,根据测算不同红外点的反射时间,计算出空间的位置关系并通过测量RS摄像头与CCD的偏移量来计算出摄像机传感器的空间位置关系,并通过跟踪系统主机的RJ45接口与渲染引擎相连,通过Livelink FreeD协议,将数据通过IP端口传输至引擎。虚拟场景的电影相机通过添加Livelink组件将获取的数据与其进行世界位置同步,选择前期准备好的基于现场摄像机镜头光学特性矫正的Lens File,在Livelink窗口中通过设置数据延时Delay值与世界位置偏移量World Offset来进行与现场舞台的实时跟踪匹配。
4. 色域转换
无论是电脑显示器、电视还是手机屏,但凡带有显示功能的电子产品就都涉及色域的问题,色域转换作为合成画面输出前的最后一步,也是最为重要的一步,该步骤直接决定了画面的表现能力与颜色的精准呈现。UE4的Composure支持后期处理色彩调节、后期材质球节点调节、LUT一维检查表文件应用以及OpenColorIO(.ocio)文件配置调用等多种的色域转换方式,本次系统色域转换采用的是OpenColorIO(.ocio)文件配置的方式。通过导入NUKE软件中的OCIOConfig插件里预设值OCIO文件,将文件配置为sRGB、LinearColor及Rec709色域映射信息。通过在Composure输入层中加入OCIO文件将SDI输入的Rec709现场画面转换为引擎中所使用的LinearColor,在虚拟画面与现场画面合成后的AR画面从LinearColor转换为sRGB,并在最后合成画面环节通过BMD采集卡输出节点将sRGB转换为Rec709,通过SDI信号输出至转播台来完成一系列色域转换的步骤。
三、控制层
控制层作为面向操作者的逻辑层,其界面设计、操作逻辑与触发可靠性将直接决定系统部署后的易用程度与可维护、可扩展性,同时也要尽可能多地助力操作者将系统内的数据进行可视化呈现。本逻辑层内主要包含可视化播控设计、数据调用与触发、多播系统控制这三个构成部分。
1. 可视化播控设计
数据可视化的目的是以用户更容易理解的形式呈现复杂信息,一个优秀的可视化界面包含如下特性:
(1)清晰:一个好的数据可视化界面一定是能够清晰展现用户所需要的信息。当用户看到界面内容时,应该能在5秒内了解到它的用途。
(2)有意义:一个有用的数据可视化界面上的每一条信息都应该是有意义的,能准确传达设计师想要表达的内容。
(3)一致性:优秀的数据可视化界面,会有一套非常严谨、一致的版面,这里的一致性需要考虑到布局、结构和内容。
(4)简单:复杂的界面违背了数据可视化设计的初衷,如果一个信息呈现不够简单直接,那么肯定是在设计上出现了问题。
基于此种特性并总结了多类DOTA游戏中BP信息的排版样式,类包装形式的播控界面被成功设计出来,包括各种便签式菜单功能切换按键,用于进行局域网服务器创建与客户端加入操作、BP英雄界面操作与虚拟空间播出操作的快捷切换。BP英雄触发操作包含左右5个英雄立绘展示区,并在立绘下方设置显示英雄名字的触发按钮,当资产的DATA TABLE中的可触发BOOL值为TRUE时,点击按钮会显示包含播出与撤出操作的二级菜单,此设置提供了二次确认机会,可为准确播出提供安全保障。在VS左右提供数据输入框,根据比赛进程输入对应的战队名称英文缩写以调用系统内的战队LOGO MESH资产进行虚拟空间展示,输入框下方设置红蓝指针来方便进行红蓝方换边的快捷操作,同时在输入框内的战队名称也会相应进行互换,方便操作人员进行核实。在完成BP播出操作后,上方标签栏CG点击切换至虚拟空间展示,空间内的信息会根据赛事与BP面板输入的战队名自动生成,无需进行更多繁琐的操作。可根据现场通话指令进行播放,停止与复位操作。根据不同的播出时机,只需要进行标签栏点击切换至相应的操作界面,便可以非常方便地进行播出控制。
2.数据调用与触发
在现有操作界面设计方案下,有众多的系统内数据需要调用并呈现在界面之中,在数据层中将需要呈现的数据通过PACKAGE包传送的方式送入INTERFACE界面当中。INTERFACE是UE4引擎不同蓝图之间互相方位传输数据的一种方式。通过将操作界面的设计蓝图加入INTERFACE之中便可以访问到所有加入其中的蓝图,包括数据层中的PACKAGE包数据。通过搜寻指定的头字符串便可以获取到想要呈现的信息,包括定义左右红蓝方的BOOL值、英雄名STRING值、英雄立绘TEXTURE、能否播出的BOOL值、世界位置信息VECTOR以及英雄排序INT值等。同时由于主逻辑控制蓝图也一并加入INTERFACE,通过搜索界面中加入的蓝图并将主控制蓝图经行参数实例化便可以远程调用蓝图中之前所编译好的预载,进行播出及撤出等一系列触发操作。通过界面的控制蓝图将解包后的数据分组输入到设计的界面元素,如将英雄立绘TEXTURE与展示区的图片预设端口相链接并编译成图片载入的专用触发,并用EVENT TICK的经行触发以确保数据的实时性。而二级菜单中的播出复位等需要适当时机触发的便需要将按键进行可触发化设置,并与已参数实例化的主控制蓝图的触发相连接,如此便完成了操作界面的触发设置。
3. 多播系统控制
基于UE4引擎的局域网组网系统所搭建的多机位触发控制,其控制界面的主要设计目标就是将UE4内的组网控制节点清晰明了地呈现在操作者面前。因此该界面分为左中右三个部分,点击左边SERVER按钮唤出的二级菜单主要是服务器创建区域,CREATE SERVER按键连接至蓝图内Create Session节点,并且根据节点的用户ID,可连接用户数以及是否使用LAN模式的设置项创建相应的变量并暴露在控制界面中,方便直观地在创建时调节相应的选项。点击右边的CLIENT的按钮便可以唤出搜索/加入服务器的二级菜单,在二级菜单中采取了网格列表的方式详细呈现了局域网内所搜索到的服务器名,以连接/最大连接数以及实时的Ping延迟,下方的Refresh刷新键连接至蓝图中的Find Session节点,并将节点搜索到的数组值进行循环创建至新的触发按钮,并将Session to Join的信息转化成String值更新在触发按钮中。在相应的Server信息的按键连接至Join Session便可以在按下的同时完成加入选定Server的功能。在完成创建或是加入服务器后中间的UPDATE按键可以获取到当前的联网状态,将SERVER或CLIENT通过刷新组网标签栏NET来提示操作者当前电脑的连接状态。
四、应用层
应用层作为系统逻辑层的最后一层,主要的功能就是负责落地实现并与各个外围硬件连接,配合扩展并调试至最佳的功能性和使用状态。根据已经落地实现的使用状态以及对未来部署的一些构想,应用层主要分为三个部分:基于现场的系统部署,MR眼镜系统的运用以及未来即将部署的云端系统的构思与使用设想。
1.基于现场的系统部署
基于现场的部署适合绝大多数场景也是最为主要且被部署最多的一种使用方式。该方式需要将系统内的I/O硬件部分分类部署,包括已完成校验和文件制作的摄制镜头、基于机位数量的跟踪套件、带采集板卡的渲染引擎主机及周边设备、负责数据连接的路由器、负责系统同步的扩展硬件以及各种线缆。由于绝大多数场景摇臂、轨道、固定云台及相关摄像机等皆为现场预置,在安装跟踪设备前仔细检查安装水平偏差、核实其运行状况至关重要。同时由于REDSPY跟踪的特性需要在现场布置与摄像机活动范围相应的红外反射整列。根据同步发生器核实其现场信号是否能稳定地为跟踪系统及引擎提供准确稳定的同步,参照以往多次部署的经验,许多意料之外的系统错误皆是因为错误的同步信号所致。同时需仔细测量各个机位距离现场舞台的各项数据,以完成不同机位渲染引擎的虚拟摄像机偏移位置。如果需要制作虚拟环境将舞台进行边缘抠像则要求更为严格,需仔细测量现场舞台的各项数据并制作其相应的遮罩匹配舞台,其对测量结果的计算、建模及跟踪都有着更高的要求。需根据现场的直录播系统的制式格式调整系统内的板卡及Composure的输出设置,将引擎主机连接好外围设备,进行局域网搭建完成IP设置测试系统联机功能,逐项连接跟踪系统的RJ45网口、板卡SDI I/O端口及同步端口,测试信号稳定度及连接性。此外,并需根据测量数据及跟踪信号仔细调整虚拟场景的设置并反复调试。此过程将持续相当长的时间,其间需仔细核对、及时沟通来逐一排查问题,使系统逐渐进入稳定精确的工作状态。
2. MR眼镜系统运用
MR眼镜的运用能解决现阶段虚拟效果无法被现场观众观看到的先天不足。但同时基于UE4的虚拟效果受制于硬件渲染的能效性,导致普通的轻便的MR眼镜无法运行起UE4引擎,而有足够算力的设备则体积较大且续航、佩戴舒适度无法保障。针对此种特性设计出了两套解决方案来完成两种眼镜的部署。算力不足的眼镜会使用手机Android系统内置的基于C语言编译APP来驱动渲染,支持空间定位及简单模型输出,因此,需在UE4将需要呈现的效果进行带通道的序列输出,并且转成专用视频格式,通过在面的基础上设置材质球并连接播放的视频信号,将面的旋转及空间位置根据眼镜的位置关系进行空间映射来完成相同效果。算力足够的设备一般拥有较大体积但可以运行低体量的UE4引擎,在需要运行的虚拟场景进行反复的渲染能效及模型贴图光照烘焙等优化,以确保在眼镜中能够运行足够高且稳定的帧数,同时将眼镜的空间定位与虚拟场景中的摄像机进行匹配,操作逻辑与基于现场的部署类似。两套处理方案皆由额外的一台渲染引擎负责数据处理及触发同步,需要将眼镜及渲染引擎连接至同一局域网,基于UE4的MR眼镜可使用远程过程调用(RPC)来触发事件,而使用手机驱动的MR眼镜则需要在APP中完成UDP端口的调用,并在渲染引擎中将RPC触发事件发送至统一的UDP端来同步事件以完成MR眼镜的部署。
3.云端系统
云端系统作为未来发展的重要趋势,有着部署难度低、设备集中管理运行环境稳定、易于维护且可部署范围更加广泛等优点,依托国内5G网络的发展和云端技术的长足进步,有着越来越广阔的前景。目前所设计的可执行技术方案主要包括仍需现场部署的部分及主机引擎在线云渲染画面网络传输的方式。受限于目前跟踪设备的运行环境要求,仍需在现场完成跟踪设备的搭建与调试,完成基于现场的系统部署部分对于跟踪系统的重要指标。而跟踪系统所传输的数据则可以在确保连接稳定度良好且丢包率延迟都在特定指标以下时,通过互联网IP地址端口号进行传输。该过程的稳定对于能否成功部署十分重要,也是目前云端系统部署所要攻克的技术难题,各项传输保障指标仍在试验探索中。基于服务器机房所搭建的引擎渲染机作为云端的硬件部分负责接收来自现场的跟踪信号及赛事实时传输的JSON文件进行数据处理,通过尚在开发中的基于C++语言编程的全自动时间触发播控系统,将合成完毕的虚拟画面通过推送视频流的形式,为现场播控系统提供多机位的画面。
结语
此系统在英雄联盟手游赛事立项之初便开始设计规划,结合UE4的诸多新特性与前沿技术并充分融入设计者对MR+数据可视化的理解。其间不断经过可靠性测试、数据处理优化与效果打磨,历经整个英雄联盟手游从邀请赛、职业杯赛到如今亚洲联赛的应用,已经被证实是一套成熟完备且完全性、功能性、扩展性强大的成熟系统。基于现场部署所制定的详细技术规范与操作流程,使得系统的适用性逐渐拓展并降低整个系统的部署与操作难度。与MR眼镜的大规模成功运用、云端系统构想的提出与关键技术及指标制定的难点的攻坚,为系统的新功能、新概念、新发展探索出了前进的方向。并且随着虚幻5引擎的发布其内置的一系列令人兴奋的新特性,将为传统广电领域带来更多的运用场景。新的LUMEN算法提供更好的光照质量将为绿幕蓝幕等虚拟演播室项目带来惊艳的画面效果,并且已在2022亚运征程上成功部署基于虚幻5引擎的全新系统。新的StypeLand插件的功能性巨大提升,多屏互联与多机播控联动成为驱动XR演播室的关键技术,运用于MR LAB扩展现实演播室并成功地完成了上海车展特别节目的录制,开创了节目虚拟内容演出效果的新标杆,为传统广电演播室带来了无限的节目呈现可能。更好的可视化蓝图编程与数据处理能力,配合前端的数据采集与虚幻引擎的强大画面能力,将体育赛事中难以量化的关键数据能够以全新的方式呈现给现场及电视机前的观众,在WTT世界乒乓球职业大联盟赛事中的成功运用,已充分证明该系统对于传统体育赛事的数据呈现将带来更多的可能性。这些已经成功落地的项目已然为广电行业开辟出了全新的运用案例,新思路新技术的注入将为这个行业带来更多可能性和更加广阔的未来。
(作者单位:上海广播电视台)
(本文由上海市电影电视技术学会推荐)
参考文献
【1】Epic Games Unreal Engine Technical Support Documentation https://docs.unrealengine.com/
【2】STYPE NORWAY AS RedSpy Fiber Technical Manual
【3】Microsoft HoloLens Technical Support Documentation https://learn.microsoft.com/en-us/ hololens/
【4】知乎作者:牧羏君 【色彩管理Vol.1】使用OCIO优化UE的色彩管线2022-6-27.
【5】中琛源 如何做好大数据可视化平台设计 2021-10-11.