原文地址:《How To Make Low Poly Look Good》 作者 POTYPANTS
引言
Low poly风格很好看,但并不一直这么好看。
回首九十年代3D游戏刚出现的那阵子,那些确实全是low poly,然而确实都不好看…咱先把情怀啥的放一边儿:)
咱得面对这个事实,那些(3D游戏)确实不好看。然而,当今我们可以看到很多super low poly的新概念作品诞生,它们虽然细节并不丰富,但仍然看起来非常惊艳。
请继续阅读,我们将揭示low poly的世界,如何制作好看的low poly,为什么过去很难看的low poly会变得好看。
你可能也会对我得另一篇文章《Low Poly角色设计》感兴趣,不过我建议你先读这一篇。
下面我们会一步一步地介绍这个帖子的形象片是如何制作的。
1.什么是Low Poly
Low Poly是一个很宽泛的概念,实际上,今天你玩的所有游戏,甚至包括EA的最新顶级大作,都是“Low Poly”。为什么?
因为它们都使用尽可能少的多边形去定义一个对象的形状。然后我们使用法线贴图(normal map),环境遮挡贴图(occlusion map),纹理(texture)以及一些光影技巧让这个对象看起来有丰富的细节。
本文中,我们将着眼于一种平面化着色(flat shaded),未平滑处理(unsmoothed),**极简主义(minimalistic)**风格。这种风格近些年颇为引人关注,尤其是在独立游戏开发领域。
请参看一下我们的美丽的Low Poly作品列表来获取一些灵感并明确一下我到底是在讲什么。
2.什么让Low Poly好看
简洁即美。试想一下人体素描,技术高超的画家总是尝试用最少的线条画眼前的模特。他们努力简化人体形态,精心挑选少量的线条,呈现出的却是大多数人在观察原始对象时未发现的复杂性和美感。在制作low poly作品的时候也是一样的道理。我们像把对象化简到不能再化简
任何事物都应做到尽可能简单,直到不能再简单 - 爱因斯坦
过去的日子,开发者们没有当今这些先进的工具。它们只有那些多边形(polygon),几乎没有光照,也没有法线贴图。所有一切都必须烘焙到仅有很低分辨率的纹理上。有些游戏哪怕仅仅设法实现了一些实时阴影,也会让人眼前一亮。
使现代Low Poly作品看起来很吸引人的原因是低精度遇上高精度。让我解释一下。
我们使用非常简单的几何体,然后把它渲染到非常高的分辨率。只使用平面化的颜色作为纹理,但是使用带有反射和折射等等效果的复杂着色器。然后我们用最新的光照技术渲染这些简单的形状。这使得即便我们仅使用了简单的形状,也呈现出巨大的复杂度。我们将低精度融合到高精度中,得到了一个介于二者之间令人欣喜产物。
3.建模
咱们详细分解一下,第一步就是建模。这个过程可以说是最终结果成败的关键。
轮廓(Silhouette)
轮廓…轮廓…轮廓…
从各个角度,尤其是你游戏玩家可视的各个角度,确认一下对象的轮廓有良好的识别度极其重要。
单位面积(空间)的面数(Polygons per unit²)
我说的什么意思?好吧,把面视为一种有限资源。那么,面数就可以反映出对象的a) 重要性 b) 大小。
看看下面的例子:
随着每一次降低面数,我们可以清楚地看到,它不再像一个球了。把它们并排摆放在一起,也并不是一个和谐的画面。
然而,如果我们把低细分物体的大小也降低,使得相同空间的面数大致相同,就像下面这样。
如果给你两个面数相同的物体,但一个物体的大小是另一个的一半。这就意味着我们给了那个小个物体更大的分辨率。
这是处理low poly时非常强大的技术。如果你创建了一棵树或一块石头,复制以后任意缩放并到处摆放,可能你的图像最终会看起来很凌乱。
如果你想制作大中小3个型号的树,请确保针对其大小和重要性制作3种面数级别的模型。一个不错的经验法则:如果你对大小减半了,那么也要对**细分(subdivision)**减半。这样会带来和谐感。
当然,这方法不一定永远适用,但至少是一个好的开始,尤其当你感到“哪里有点不对劲儿”,但又无从下手的时候。
还要确认模型不存在平滑法线(smoothed normal)或者说共用顶点(shared vertice)。请确保在你的3D建模软件中应用这个设置,因为事后在诸如Unity的引擎里是修改不了的。
4.材质
我总是努力限制材质的数量。实际上,我乐于仅使用平面化色彩,然后用灯光实现复杂性。我发现这样做会带来最干净也最有趣的效果。
有时,使用一些微纹理(subtle texture)也可以给表面带来微妙的变化。
充分利用反射,折射,散射等元素会带来优雅且独一无二的视觉效果。
对于饱和度层级(saturation level),一定要谨慎,我看到过很多Low Poly作品,尤其是草坪,总是过分饱和。一定加入一些反射颜色,这会将高光消逝到一个舒适且非饱和的色调。饱和度是引导观者视线的一个非常有效的方式,但是一定注意不要过度使用。
下面,让我们看一下,如果你忽视了我们之前讨论的问题,将会发生什么。
正如你看到的,画面并不令人满意,让我们看看原因。面数密度非常不一致,有些东西平滑处理了,另一些却没有。整个画面饱和度层级过分一致,导致你找不到关注点。草的色调太冷,加一点暖色会更好。天空穹
用的不恰当-阳光和阴影的色温貌似是一样的。
与之相反,我们来看下面这个场景,内容很相似但结果却更成功:
尽管后面的山不是很完美,但确实有了很大的进步。光照更加和谐,画面有了不错的景深,有了带入感。树上的高光过渡柔和。
5.灯光
灯光是最重要的部分。尽管其它部分也很重要,但,如果你的灯光没弄对,结果永远不会好看。
让我们通过本文题图的制作过程,了解一下我们可以如何处理灯光。
重新制作题图
这是一个场景草图,肯定不完美,但用在我们的测试没问题:)
首先,咱们添加一个方向光(directional light)。它代表阳光。我把太阳放到左侧,让山体有一些漂亮的背光。
虽然这效果本身也算是一种风格了,但并不是我们想要的。虽然我们有了来自太阳的方向光,但还没有天空的光。
咱们添加一个天空穹(skydome)来填充一下影区。虽然你可以使用一个蓝色的球,但我强烈建议使用一个带图片的天空盒子,它可以显著提升真实感。
好多了!虽然我们拥有了来自天空的光照,但依然缺少一些元素。
我们需要添加的是一些间接光照(indirect light)。当前情况是,光线射到表面上,然后就木有然后了。我们需要它们从表面反弹,然后继续照射。一般来讲,反弹2-3次就可以了。
这个最重要的步骤很容易被遗忘。你可以在Unreal或者Unity中做这件事,但需要烘焙。因为这是个很消耗资源的处理。
又好了不好少!细节给与我们更加高级的观感。间接光照可以消除之前图像中的一些暗且模糊的区域,留给我们干净新鲜的视觉。
现在,只剩下镜面反射光了。
石头上的效果不是那么明显,因为我们把它设得很粗糙,石头一般不是那么闪亮。
主要的差别体现在过道区域。我特意把它做的非常闪亮,在之前的版本它看起来有点平面。
非常高兴,下一步让我们来做后期处理(Post Processing)。
6.后期处理
我们已经设置完灯光,但是后面还有很多技巧可以提升效果。
景深模糊(Depth haze)
第一件事,尤其是在这个画面中,就是深度队列。我们可以看到桥,但是它并不是像我们期待那样清晰。
通过加入一些景深模糊,把前景和背景分离来可以改善这一点。
这里可以稍夸张一点以得到不同的氛围。我们可以让它非常模糊以获得云雾缭绕的感觉,好像我们身处高空。你可以随意尝试一些模糊的颜色。
我选择了不那么夸张的版本,但你随意。
色彩修正(Color correction)
这里也是可以充分发挥你想象力的地方。对最终图像进行色彩修正是设置氛围并获得恰当感觉的极好方法。并且也可以很夸张,因为这一步非常容易从头再来。
对这张图,我希望它能够更有活力。所以我让亮部颜色暖一些,暗部颜色稍冷一些渐晕(vignetting)。
小心饱和度,很多不错的Low Poly作品都被过分的饱和度毁了。尤其是草坪,如果它发出绿色霓虹灯一样光,一定降低一下饱和度,并且添加一点反射光。反射有助于将高亮调到一个更加舒适的范围而不是刺眼的亮光。
景深虚化(Depth of Field)
很多Low Poly艺术家喜欢添加极为大量的虚化,这有助于提高真实感。同时也带来了一种很适合Low Poly的小模型的感觉。
让我们给山口来点虚化:
这样你就得到了本文开头的那张图。
装裱
我想安利一个即将在2018年发布名叫《Lonely Mountains Downhill》的游戏,这个游戏由Megagon Industries制作,两个喜欢Low Poly的家伙:)
如果你想试玩,在它们的网站一个1分钟的DEMO,非常不错!去看看吧,我都等不及它们上架了:)
Lonely Mountains Downhill
非常感谢您的阅读!
一如既往地,任何问题和指责请写在评论区:)