大家好,我们之前允诺过会发布The Blacksmith实时短片里用到的资源和项目定制的工具集与着色器(上期回顾)。在本篇文章中,我们将为大家分享该项目的环境包,以及其中的工具集和着色器。

THE BLACKSMITH – 环境包

这个项目包含:铁匠铺、 外景、 大气散射、PaintJob 工具集(在任意表面上绘制植被)、植被系、遮罩混合着色器、经过定制的标准着色器、色调映射。你可以在一系列光照预设(按V键)以及第一人称视角/动画相机视角(按C键)之间来回切换。你可以从这里下载该环境包:https://www.assetstore.Unity3d.com/#!/content/39948

铁匠铺

它看起来是这样的:

1.png

The Blacksmith – 环境包中铁匠铺内饰的游戏场景预览

外景

我们决定重新组织片中场景最初的外观,使其更适合游戏开发,以便大家能尽可能地用得上它们。我们尚来不及对这些场景进行进一步的处理。但如果情况允许你投入更多的精力到这些场景中的话,它们将很有可能在游戏开发的某些阶段帮上大忙。这就是我们为大家最终提供的场景外观。

2.png

区别在于,在我们的短片中,我们是根据相机来组织环境排布的。如果你依然对这一点感到好奇的话,这里有一张原始项目中外围环境的场景总览截图可供参考。

3.png

The Blacksmith 原始项目场景总览另外还有一些资源我们在短片场景中并没有用到,不过我们依然希望能和大家分享。你们将在项目中发现它们的踪迹。 这个华丽的素材包几乎完全是由Plamen ‘Paco’ Tamnev一人创作的。同时,外围环境也由他负责搭建。

大气散射

这个项目包含了我们所定制的大气散射解决方案。你能在这篇文章中了解到更多细节。为方便大家研究,我们同时在Asset Store上传了一个单独的大气散射项目。项目下载地址:https://www.assetstore.unity3d.com/#!/content/39939

PaintJob 工具集

这个小工具允许美术在任意的几何形体上绘制植被,不仅限于Unity地形。这是我们探索如何最大限度地利用好Unity内置地形工具的一个方法,同时,这么做也是为了实现我们在项目中的一项实际需求。非常欢迎大家从The Blacksmith环境包中将它分离出来,然后用到自己的项目中去。

● 植被系统

我们希望The Blacksmith项目中的植被系统能够做到两件事情:

我们希望它是柔软的、着色定制化的、支持动态全局光照的、能够和一切被认定为是地面的东西融洽结合并同时且能够兼容Unity地形之外的选项。

PaintJob 工具集已经做到了后面两项,不过为了达成上述目标,我们仍然需要进行一些额外的定制。最终我们决定设计一个组件来捕捉PaintJob——或其他任何可被采集数据的手动的植被绘制系统——所产生的数据,并依此生成一些经过烘焙的植被网格。这样一来,渲染的支配权依然牢牢地掌握在我们自己的手中。别的不说,任意类型的自定义排序、重组织动态纹理中的光探测数据都将不在话下。

● MaskyMix Shader
遮罩混合着色器是一个经扩展的标准着色器,顾名思义,它可以根据特定的遮罩标准混合一组额外的细节纹理。遮罩主要基于材质-指定的世界-空间方向,每个像素的法线都从基础法线图取样。它同时受到来自瓦片遮罩材质和网格的顶点色alpha通道(如果存在的话)的修正。最终,根据在材料中指定的掩蔽阈值,额外的细节层被一起混合。如果网格为遮罩提供了顶点alpha通道,那么也可以采用顶点色来处理细节层的反照。

● Modified Standard Shader
The Blacksmith运用了为数不多的定制化标准着色器。它们被用来根据我们的喜好调整事物,或是添加一些小的着色器特性。并不是所有的这些着色器都可以脱离这个项目运作,不过它们中的一些作为基于表面着色的标准着色器被包含在了这个项目中。这些修改通常是这样的:除专用纹理外还可以通过反照alpha通道取样,以平滑每个像素,或是增加了对任意材质剔除模式的控制,或是对全局反光的颜色、密度添加了额外的控制。

● 色调映射
我们已在一篇早期文章中说明了我们是如何在Unity中实现色调映射和颜色分级的。因为短片已经上映过了,色调映射也早已被一个Unity工程师团队重拾,并整合到Unity中。包内的高分辨率天空纹理未经修改直接来自:NoEmotionHDRs (Peter Sanitra)http://www.psanitra.comCC BY-ND 4.0http://creativecommons.org/licenses/by-nd/4.0/以上就是我们为大家带来的分享。至此,The Blacksmith系列文章已经完结。而前方,新的冒险正在等着我们整装待发。