如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

摘要

原标题:如何做好次世代手游贴图制作和着色?(下)|Unite2017开发者大会干货分享

原标题:如何做好次世代手游贴图制作和着色?(下)|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

以上是提供的烘焙灯光滤镜。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

接下来看一下关于Unity  PBR。不久的将来,PBR将会在手游开发中更加广泛地使用。次世代,我们该怎样定义次世代手游画面呢?其实并不只意味着PBR的使用,更确切地只是硬件范式更新换代的时期。渲染本身发生了很大的变化,手机设备也是同样,像Metal或者Vulkan等低阶API的登场和硬件的发展,以上我们可以把它定义成次世代。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

PBR其实不用想得那么复杂,只要熟知几种信息就可以了。第一点能量守恒,而且基于这种现象的高光也是由光来决定的。完全的金属不存在Diffuse,再重申一遍,完全的金属性色像就是高光的色像,这个颜色是被记录在Bas  Color中的。

中间物质呢?所谓中间物质就是分子结构下的结构物质。我们可以简单地做如下定义,世界上单独由分子结构构成的纯粹的物质是不多的,特别是现代社会,陶瓷类等等跟图层略有不同。还有根据分子和原子的结晶结构来决定它的导电性,结论上来看,实施PBR也不能完全地表现但是在我们现实使用中已经完全地足够了。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

现在很多的中国游戏公司也开始使用Substance  Painter,PBR受环境影响比较大。所以要对工作环境做适当矫正,所以Unity5.6是非常好的。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

我们要知道白色平衡,在手游中这不是很多。基本实现的环境效果都是中午十二点到下午二点。如果一般已经对准了中午十二点到下午两点,一个晴朗的天气中,环境光的白平衡在室内也能正确地表示出物件的色像。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

白色不一定会展现为白色,一般TC是5500的话,为了达到材质求标准材质设定,工程师开发PBR的时候要更符合shader的环境。要基于展示更多的环境来制作。天空光不太强烈的时候,即使大白天也可以裹上一层强烈的青色感。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

直接致用HDR提供的素材。色温和色像对于color的渲染的标准场景,最好的是使用正确的IBO素材。

从Unity5.6开始,新增了可以比较由环境光带来的LookDev的界面,看Color是否有发生变更。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

Look-dev提供中的,最好不要勾选Enable  Tone  Mapping。一般艺术家如果充分认为灰色调是没有被污染的话,其他颜色是没有问题的。但是根据曝光值的不同,其他环境光也会有不同。所以除非是特殊环境,否则不要对曝光环境做太多的修改。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

大家用的最多的就是Substance  Painter里面提供的,它里面有少量的云和黄色土地。基本上,Substance  Painter和Unity3D最大的不同就是主光点还有高光部分的渲染处理也有所不同。如果在接受这部分,在理解相互不同点的基础上是可以还原出类似环境的。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

使用Unity5.6的  Look Dev功能,我们要确认我们的服装的颜色,到底能展示出怎样的效果。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

为了特殊的场景,我们需要抠掉IBO材料内部的太阳光。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如果要使用白色标准场景的话,Substance也是要根据它来的。由于不同的画面角度和IBO素材的曝光度带来的变化,我们也需要观察。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

2015年以后,发售的大部分手机硬件都支持PBR,支持苹果5S以上,安卓SDK4.3以上,opengl  es2.0extension中部分机型支持PBR。结论就是确保PBR的渲染环境性,就要使用以上的硬件。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

接下来主要讲优化方案的必要战略,对于IPC这个专业用于,对艺术家们来说,多少会有点生疏。但对我们来说得稍微了解一下IPC和ALU,希望大家通过百度和谷歌了解更多的信息。IPC属于中高档,未来智能手机渲染还是很值得期待的。性能相比6XT也做了很大的改善,XT作为普及性产品,相信XT的性能也会十分优秀。随着ALU改善带来的命令组的快速执行也是备受瞩目的。

接下来来讲讲怎样使用近似值计法,来降低shader的代码。每个分支所能执行的指令数,平常一般会问有几个是在相似shader还有顶点shader。我们关注的是怎么样减少指令,以怎样的方式来减少指令。根据方式的不同,我们要确认代码是否有错分类,参考论文中也有提到,分好类的代码运作速度要提升30%以上。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

为了进行单元测试,我使用了两种编译器,使用了2015年生产的普及型型号。上图是非常受限制的特效用公式。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

以上是PC推定制的结果,编译器使用了Series  6和Series  8。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

以上是经过近似值处理和优化的结果,我们可以确认per  line  cycle的总数是减少的,以其他不同的方法再去了解一下。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

因为考虑到power  VR的编辑,编译器内部指令已经做了公式上的优化。

接下来我们来看一下关于顶点,美术能做什么样的转化。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

我们可以把它看成是从客户端的内存传递以及保存到服务端内存的对象,因此GPU需要快速地完成。

我们需要知道顶点缓存的属性信息,为什么要做到最小化呢。最新的GPU有了质的飞跃,在艺术家层面,顶点缓存渲染的尺寸还是得能尽量减就减。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

我们试着罗列了顶点缓存的信息,从网格开始构成了整个游戏数据。我们需要给艺术家提供给这些压缩的方法。大部分艺术家仅仅对三角形个性所感兴趣,如果有十年以上的工作3D模型师对这方面应该有了解。对于我们亚洲的开发者,这一点是值得注意的。我们要尽可能减少定点缓存。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

接下来看一下网格的顶点数量最后会给VBO带来怎么样的变化。我们可以确认在Unity游戏引擎当中,计算的顶点数量是增加的。但是虽然是完全分开的,现实中不存在这种情况。这是组成网格形态的顶点数量。虽然对shader进行了分割,但是顶点数量还是不变的。在游戏引擎中进行了确认了,左侧是UV Shell一个的时候和两个的时候,顶点信息数量是不一样的。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

接下来对手机上发生的法线贴图来做一下分析。法线贴图的高光部分会出现问题。PC上使用的是TXC5N,实际我们确认标准shader最终会进行归一化处理。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

发生如上图所示情况的时候,要先确认几个基本信息。顶点法线和切线法线信息,因为进行了线性差值,要确认顶点法线的向量是否有发生变更,这部分如果在shader部分里面进行归一化处理的话,大部分能解决。但是我们还是希望在像素法线中进行。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

以IOS为基准,对几种情况进行了视觉评价,有问题的法线贴图我们可以确认艺术家在photoshop中对切线进行了调整。在贴图上不管对法线贴图进行怎样的归一处理,这一种问题还是很难解决的。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

由于压缩部分造成的问题还是没有办法解决,容量也比之前来得大。虽然在shader上进行简单的归一化处理就能解决,但是增加了一个指令,每次是需要大量的预算量的,负担也比较大。最终把美术加工的贴图以原来尺作为贴图。使用24位真彩色,因为进行了降阶采样,所以小的细节会丢失,但是实际在4.5英寸的画面中,那些小的细节原来就是没有意义的。对没有进行归一化处理的normal  texture进行了比较。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

以IOS为标准,RGB  PVRTC  4bit进行了处理,RGB  ASTC也进行了处理。容量是1.3兆。如果对游戏效果没有影响的话,就没有问题。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

如果游戏本身要处理大量的像素shader的话,24位真彩像也是值得考虑的。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

通过USB3.0,把手机连接到电脑上,如图所示,我们可以把Unity编辑器游戏画面移到手机画面上,作为双显连接的分辨率是希望不要太高,给内存留一点带宽是最好的。一般安卓手机和苹果都有登陆锁,单纯地通过帧率调速,为了获取到稳定精确的信息,除了高温的throttling以外,throttling是可辨比率。这些都是需要正确的性能分析来确定,因此我们要定义严格的评价尺寸。

如何做好次世代手游贴图制作和着色?③|Unite2017开发者大会干货分享

比较沉闷的讲座终于要结束了,结论就是手游画面的开发暂时还是会以过去PC画面处理经验为基础,收集哪些信息,怎样灵活使用是很重要的。艺术家怎样使用参考资料也是需要值得探究的。任何实时处理的开销还是比较大的,而且需要对近似值有所了解,总的定义就是积土成山,能节省的东西都要优化,希望各位能铭记这一点!再次感谢

您可以选择一种方式赞助本站

发表评论

您必须 登录 才能发表留言!