渲染那么重要,VR 内容开发者,你们都造怎么做好吗?
全文共计 7072 字,阅读共需 10 分钟 本文您将了解到: 1,VR 渲染面临什么问题? 2,如何做好 VR 的渲染? 渲染对于 VR 内容的开发来说,是非常重要的议题。 但在现在的 VR 内容开发中,却还没有成熟的解决方案,特别是针对 Unity 开发者。 近期,VR 价值论在 VRCORE 公开课上找到一份 VR 渲染指南。 包括渲染方面的基础知识,以及在 Unity 里面如何去优化渲染的效率。 废话不多说,直接上干货吧,内容较多,建议收藏。 本期(第 44 期)来自 AMD 的 VR 内容开发工程师王文涛在 VRCORE 公开课上的分享:如何做好 VR 渲染以及提升效率?
研究生开始,我一直研究图形学和渲染。 渲染对于游戏开发、以及现在 VR 内容的开发来说是非常重要的议题。 打个比方,你做房地产展示类的应用,那么渲染就很重要,房屋内的光照,日夜之间的切换,这些都需要渲染,做的好的话,将成为让你的应用脱颖而出的杀手锏。 不过,渲染虽然重要,在现在的 VR 内容开发中,却还没有成熟的解决方案,特别是针对 Unity 开发者。 大家都知道,虽然虚幻引擎效果比较好,可以做出电影级别的画质,但很大部分的开发者还是使用 Unity 开发,包括我自己。 Unity 的效果不太完美,不过我们不能因为它渲染效果不好,就去做一个不完美的东西。这样不行,因为你的产品最终是要跟别的引擎做的东西去竞争。 所以,我今天来讲的就是渲染方面的基础知识,和在 Unity 里面怎么去优化它的效率,一些指南性的东西。 这样主要是为了大家在之后使用 Unity 开发的时候能够有一个全局上的了解和判断。 比如说,为什么我的游戏运行的这么慢? 为什么我的帧率这么低? 或者为什么我想要的画面和游戏运行出来的画面差的这么多呢? 到底是我的全局光照出了问题还是说我的抗锯齿有问题? 在开始之前,我想先给大家看一个 Unity 做的电影。(价值论友情提示:视频为演讲者演讲过程,提及的电影也可以从小视频 3 分 40 秒处开始播放哦。) 它和传统电影制作流程不一样,完全是在引擎里实时运行的。 这个也是 Unity 做出来的效果,质量很高,接下来,我们会逐步去分析它。 可以看到的是,首先,这个机器人的材质非常的真实。金属的高光、地板上的反射。 反射在我们生活中很常见,但在游戏引擎里是比较难实现的技术,不管是实时的还是烘培的反射。 但它使用一些特殊的技术去实现反射的技能。这个过道光很自然,你在使用 Unity 开发的时候,打一个普通的面光源或者点光源,很难做到这么自然的光照。 这是因为它在这里面使用了全局光照的技术,或者叫做间接光照。 影片主题其实就是说机器人是人类的造物,或者说人类成为了上帝,这是我自己的理解。 大家看到那个电影很酷炫,有一种电影级的画质。当然我们不考虑显卡因素,因为刚才放的那个电影是用三块 GTX980 去交互渲染的。VR 现在很多的开发者也有 1080 或者我们 AMD 的 FURY X,Fury Nano 这种级别的显卡。 假如你有一块这么好的显卡,你怎么做出一个非常牛逼的画质呢? 怎么理解渲染? 有两点要求需要满足。 在某个固定的平台上必须要达到一定的帧率。 就是说,看起来至少每秒得能够有 75 帧,其实必须要达到 90 帧才不会晕眩。 必须要满足游戏设计艺术家的要求。 这并不是说特效堆的越多越好,或者说做出来的渲染越真实越好,并不是这样。 比如说,你的游戏可能是水墨风格,可能是美术风格。你用现有的技术把它做的非常漂亮,这是一个很好的渲染系统所必须拥有的特性。 我们想到的现在比较优秀的作品,比如说《使命召唤》或者《战地》。为什么它们能够在 PS4 上跑出这么优秀的效果? 除了美术过硬之外,他们也使过非常多的光照、贴图、建模上的技术去实现效果。 当然,在 VR 里面,这些渲染实现会更加的难。 因为大家都知道,VR 是两只眼睛,直播,通过左右眼的视差去产生立体感。 首先,至少要渲染两个 runnertarget,也就是说两幅图像; (责任编辑:本港台直播) |