前段时间学了一个SD做叶子的思路,复刻了一下效果还可以,这里记录一下要点。
首先观察一下。叶子一般外形都不太一样。比较普遍的有比较明显的主叶脉和比较细碎的小细胞组成的。
于是可以分为外形,叶脉,叶脉分叉形成的大细胞,中等细胞,小细胞五个部分分别处理,最后再组装起来。
(可能人家学名并不这么叫,但这么描述比较简单,有助于理解)
第一部分,高度图的制作
1,外形的处理。
如果是先前的SD版本,可能需要用shape节点拼出一个外形。
然而SD新版是有样条线功能的。于是可以通过样条线做一个外形,要简单很多,而且有创意的话可以高出一些奇奇怪怪形状的叶片出来。
2,叶脉的处理。
主要思路是通过stripes节点作为基础,用两次directional warp进行扭曲。第一次做交错,第二次做从中心向外扩散的形状。
接着用一个软边的椭圆形减去上一步得到的结果,即可得出交错的白条。
这种做法比较好一点在于可以通过调节参数得到不同粗细不同密度的叶脉形状,即使之后发觉叶脉数量多了或是少了,也可以轻松修改。
叶杆的话非常简单,就做一根棍。
做好之后将外形,叶杆,叶脉组合起来。用slop blur grayscale节点做出比较自然的扭曲,最后把边缘提取出来。
上图的边缘线是用于制作细胞边缘的,叶脉本身也需要一张mask。
利用一些简单的遮罩,把主叶脉的形状提取出来。
然后再简单处理一下边缘,形成一种中间实四周虚的效果。
最终得到这样一张图备用。
3,大细胞。
可以用tile sampler grayscale做一个基本型。由于叶子的细胞泡泡有中间大边缘小的特点,所以可以用一张叶子外形blur过的形状作为mask制作一下这样的效果,最后再用edge detect把细胞的边缘制作出来。
由于大细胞有跟着叶脉同一走向的趋势,所以还需要用下图这样一张纺锥形的图形作为directional warp的mask,将大细胞的形状修正一下。
做好之后把大细胞和第二步得到的结果进行组合。
4,中细胞。
跟大细胞的做法一样,只不过个头小一点。最后合成。
5,小细胞。
小细胞就用cells2节点,做一个感觉出来。
边缘线做好之后,需要将其从线的形态换成面,于是可以用下图这样非常简单的方式进行转换。
最终形成这样一张图。这张图就完全可以用来做叶片表面细胞的纹理的基底了。
结合之前第二小节做的叶脉,结合起来调整一下即可得到一张细节比较丰富的叶片的高度图了。
第二部分,PBR贴图的制作和输出。
第一部分得到的图可以通过RGBA通道输出,把相关属性做成参数,形成一个节点。这里是把高度图放在了R通道,G通道为主叶脉,A通道直接输出opacity。
1,叶片的颜色
首先用blur的效果做一个大的颜色渐变。
然后再用之前的高度图,结合gradient map这个节点做一个带有细节的颜色贴图。
关于细胞泡泡会鼓起来的效果,用以下方式做会有比较明显的效果。
表面细节的立体效果也是类似的方式。
最后两者合并。
使用overlay叠在前一步得到的颜色贴图上,以增加一些立体感。
叶脉凹陷的部分使用AO加强。
叶片本身的颜色这么做太过单调,需要加一些杂色来丰富细节。
大片的杂色可以通过下面的方式制作。
细碎的杂色的可以通过slope blur grayscale和levels节点的组合构建。
输出的如下图。
有了mask之后,合成颜色就可以随心所欲了。
使用gradient map这个节点,可以从黑到白给整张mask上色,此时大可以利用一些照片吸取颜色。
另外,可以用histogram shift这个节点,做出一个区别表面和坑洼的mask出来。
然后可以做两种颜色将其混合(下图是为了区别明显做了一个红色和一个绿色,实际上HSL这个节点可以做成参数,随意调节叶片的颜色)。
叶杆可以用类似的方式制作,最终将两者结合起来,遍可以得到一张颜色贴图。
2,normal
与制作颜色贴图时类似,为了让叶片细节更有层次,一方面可以直接通过normal节点(样例用的normal sobel节点,效果会比normal柔和一些,这里具体情况自行选择)得到一个细节normal。再使用slope blur grayscale节点,做出叶片大的起伏,最终结合。
3,roughness
一方面需要用normal转一张curvature,用于处理小的细节。另一方面需要用高度图反色可以用作基底。
需要说明的是,叶子普遍表面是分泌油脂的,显得十分光亮,叶脉部分反而会有坑坑洼洼而显得粗糙。当然也有些叶子不是这样,会长毛毛,这里需要具体需求具体分析。
4,另外还有一个水滴的制作方式。
最终合成的效果在SD里看大约是这样的。
我这里对原版的方式做了一点改良。
颜色贴图方面,因为折射的原因,水滴下的颜色会有一些变化,所以这里添加了一个HSL来改变水滴区域的颜色。
另外水滴的roughness我这里认为应该直接给黑色,不然无法表现水滴的光滑。
normal的话,这边直接覆盖上去就没什么问题。
还有如果要水滴有反射的效果,还是需要给一些金属度的。
三部分,进入引擎的的准备。
1,准备一张atlas,非常简单,步骤略过。
2,准备模型
模型也准备一下。不过如果手游平台或者对面数有需求的话,需要减面,这里我就不减了。
3,进入引擎
找一个曾经做过的土地,石头,草的素材,然后搭一个简易的场景,看一下效果,该有的细节都在。
镜头拉近,还能看得到水珠,作为叶子来说的话,细节是足够丰富了。