VR 开发者峰会 解读实践中的VR开发经验之道
9 月 23 日至 24 日,“MDCC 2016 移动开发者大会•中国”(Mobile Developer Conference China 2016,简称 MDCC 2016)在北京国家会议中心隆重举行。本次大会由全球最大中文 IT 社区 CSDN 和中国最具关注度的全方位创业平台创新工场联合主办,以移动领域热点技术与典型应用案例实战为内容主旨,邀请了国内外顶尖技术专家和业界领袖,通过剖析实战经验来探讨技术方案与趋势,共同推动中国移动互联网生态系统的发展。
9 月 24 日 VR 开发者峰会下午场,元代码、Strong VR 创始人卢达烨(Nada)担任主持。来自 Epic Games China 的资深技术工程师王祢和美术设计师李文磊、京东 VR 实验室技术负责人赵刚、Unity 大中华区平台技术总监杨栋、微鲸技术副总裁智勇、锤子科技 VR 负责人罗子雄等多位技术专家,结合自身 VR 开发经验,分享了当前 VR 开发现状、痛点优化技巧以及内容制作创新,共同探索开发真正意义上 VR 大作的可能性。
将桌面级 VR 通过 Vulkan 和 UE4 移植到移动平台
移动平台 VR 效果的极限如何?在 UE4 环境下的移动端,Vulkan + VR 流程是怎样的,又存在哪些问题?Epic Games 资深技术工程师王祢和美术设计师李文磊,通过 Vulkan 和 UE4 并结合实际案例 Showdown 为大家揭开谜底。他们从分辨率、刷新率、GPU、CPU、渲染方式等方面,详细分析了 PC 端与移动端的差异。
若要开发 Demo,需要做好准备工作。资源打包过程较为耗时,且该项目需要反复迭代优化,因此要先梳理清楚迭代的工作流程。
目前支持 Vulkan 的设备较少,最优的硬件选择是 Galaxy S7。开发环境驱动方面,Nvidia 需在 367.27 以上,AMD 驱动要大于 16.3,UE4 版本也需在 4.13 以上。Vulkan SDK 应使用最新版本,引擎是否使用 Vulkan,除了受引擎选项控制外,还取决于是否安装了 SDK。借助引擎工具对内容进行优化后,最终 GPU 瓶颈在分辨率降低后转移到渲染线程。Gamethread 由于没有 AI,仅需 6ms,BP nativize 后只需 2.5ms,期待 multiview 和 scanline 技术的应用。
在模型、贴图、材质等方面的执行优化上,李文磊表示可在 statistics 中使用各种排序来查看物件的数量、面数、section 的数量排名,自上而下进行优化。选中物体查看 Texture stats,可看到优化前后该 actor 使用的贴图数量,例如贴图从 50 多张减少到 6 张。此外,李文磊还提及了 Vulkan 的一些问题供大家参考,无论是 GearVR 还是 GoogleVR,Vulkan 在 VR 方面存在兼容性问题,并且在其带来的性能提升不明确的情况下,优化目标也不够清晰。
电商中的 VR 与京东 VR 购物星系
在电商领域,VR 可能成为下一个主要的用户流量入口,极有可能复制 PC 到 Mobile 的用户迁移过程。京东 VR 实验室技术负责人赵刚认为,VR 有望补足电商缺乏现场体验这一短板,让虚拟购物体验在 VR 中得到充分展现。VR 使用户能够在线上“近距离”接触商品,由于没有屏幕边框的限制,加入立体视觉和光学系统设计后,商品可以 1:1 的真实比例呈现在用户眼前,用户眼睛与商品的距离大约等效于 10 厘米,伸手触摸是自然的反应。他从“近”“端详”“漫游”“维度”“智能”五大关键词解读了 VR 的魅力。
以下是开发京东 VR 购物星系的一些经验总结:
- 低模/高模的配合运用:控制场景可视范围内的总面数约为 20 万面。
- 真点光源数量的控制:移动端保持 4 个左右的真点光源,因为点光源对 GPU 消耗大,过多会对 FPS 产生较大影响。
- 星球切换的过场时间控制:过场时间控制在 3 秒以内,采用 Fade In/Fade Out 效果较好,以保持良好的用户体验。
- 端详状态的光源设置:端详状态需要单独的真点光源,让用户能够控制光源方向,提升用户体验,商品表面对光线的动态反应能增强用户的购买欲。
Unity PlayStation VR 开发优化
Unity 大中华区平台技术总监杨栋首先介绍了最新版本 Unity 5.4 已支持的所有 VR 平台,以及未来版本将支持的 VR 平台。接着分享了 Unity 5.4 版本对 VR 所做的底层优化。
在 Unity 关于 PSVR 开发优化方面,通过 VR Remote 可以将编辑器里的图像以视频的方式传输到 PSVR 中,虽然图像质量会有所下降,但可以直接进行测试,无需每次都编译。在性能提升方面,例如两个 GameObject 使用相同材质但同时出现在两张 Lightmap 中,会产生两个 drawcall。默认的 Lightmap 为 1024,可将其提高到 2048 甚至 4096 来解决该问题。
Unity VR 开发路线图如下:
- 进一步提升 Single - Pass Stereo Rendering 的效能,缩短 Render Thread time 和 GPU time。
- 跨平台支持多种跟踪设备。
- Unity Remote:允许编辑器直接将 VR 图像传输给 PSVR,并获取头部移动数据返回到编辑器,方便用户直接在编辑器中戴着头盔进行 VR 开发。
- 提供更多面向艺术家的工具。
VR 直播产品和技术解析
VR 与直播是当下比较热门的两大行业,二者结合会产生怎样的效果?微鲸技术副总裁智勇表示,VR 视频是“场通信”最基础的承载,并分享了 VR 采集方案、拼接方案、包装方案、播控方案、全影音方案、传输方案等视频直播技术现状,以及 VR 直播用户体验的限制因素。
人眼有效的 FOV 最多在 150 度左右(VR 眼镜更是在 110 度以下),全景 360 度的部分数据无法显示,但传统系统中这些数据仍会被传输和解码。因此需要考虑传输机制来减少这种浪费,采用双向可分级的传输码流机制不仅可以节省带宽,还能在相同码率下大幅提高视频质量。
开发与设计一款 VR 大作的探索之路
元代码和 Strong VR 创始人卢达烨(Nada)主持了此次圆桌论坛,他向四位 VR 专家提出问题:“如果资源无限使用,你们认为 VR 大作在技术、设计层面上的难点在哪里?VR 电影和游戏有趋同性,这也许是未来的一个趋势。”
上海渲图信息科技有限公司技术总监张乾表示:“我们之前有 console、端游的开发经验,但这些经验在 VR 开发中并不适用,必须将其视为全新的内容来对待。”
钛核网络 CEO 张弢认为:“开发小体量、短时长的大作是有可能的,我们可以逐步扩大规模。目前设计门槛远高于技术门槛,传统游戏经验难以嫁接,同质化问题严重。逐步做大更为现实,增加单次游戏时间是每款游戏做大的目标。从开发小游戏逐步向大作靠拢,多次尝试更为稳妥。我们正在寻找 VR 行业的关键点。”
京东 VR 实验室技术负责人赵刚提出:“VR 眼镜比穹幕更具优势,影视方面或许会突破技术和设计的局限,出现大作。像 Unity 展示的类似《虚拟世界》的游戏,是大作的一个发展方向。电商领域的 VR 购物也是大作的一个方向。如果在游戏中能够实现盈利和社交,大家会更愿意接触 VR 产品。”
锤子科技 VR 负责人罗子雄认为:“VR 大作在资源投入上有明确的定义,需要平台、厂商和开发者的共同支持。大作通常是泛娱乐化的产品,当一个设备成为普及化的娱乐产品时,才有可能出现大作。如果资源无限使用,我们真正缺乏的是交互与玩法。目前大部分游戏移植的是制作经验,而非玩法经验。手机移植 PC 游戏并不合适,而适合 VR 游戏的玩法还尚不明确。”