微信号:Unity-GreaterChina

介绍:Unity官方开发者平台,分享最前沿的技术文章和开发经验,精彩的Unity活动和社区相关信息.

为游戏创作惊艳的火山熔岩

2018-09-15 13:18 Unity

像《魔界》这样的电影或者很多故事中都会有火山熔岩的场景。但是在游戏中制作让人惊艳的火山熔岩环境并不是一件简单的事情,而且也没有太多的解决方案和建议。今天将由Nature Manufacture工作室介绍他们出品的资源包L.V.E - Lava & Volcano Environment。


本文将详解如何使用该资源包来为游戏创作令人惊艳的火山熔岩场景。该资源包在Asset Store资源商店中收获五星好评,下载地址:

https://www.assetstore.unity3d.com/cn/?stay#!/content/112703


下面的视频将展示该资源包制作出的三个完全不同的演示场景和熔岩表面。


创作目标

我们的早期项目是一个河流系统,它能够将多条河流连接到Unity引擎的网络中,而火山熔岩很适合验证我们的技术是否还能继续使用。目前市场上并没有对火山熔岩完整的解决方案,所以我们决定实现该项目和需求,从而填补市场的空缺。

 

我们的目标是让用户在了解我们的资源包后,自己创作一个火山场景。因为基于相同的平台,该资源包还能配合并兼容我们的河流解决方案,所以当用户学会一个系统后,就可以快速学会第二个系统。


资源包内容

L.V.E - Lava & Volcano Environment资源包含四个主要内容,用来构建整个环境、火山以及熔岩场景。我们希望它能成为一个从始至终都要用到的完整区域,即最终解决方案。


1

工具 

该资源包包含制作河流网络的一些工具,可以修改网络的形状、大小、平铺和位置,还能将其绘制在地形和模型上,然后对齐到表面。



河流网络也会影响地形形状并自动生成流型图,它支持手动绘制的后期修改功能。箭头表示速度和方向的会指明河流表面在特定点的移动方向。



配置文件系统能用来加速工作和进行全局修改,它允许开发者快速替换熔岩的类型,并检查哪种类型的熔岩更符合特定情况。配置文件包含指定的网格密度、形状以及流体贴图的速度,能够完全控制三角形和着色器的数量,用于调试、显示流体贴图,颜色顶点能创建适合环境的高效而壮观的熔岩。

 

该资源包还包含处理模型的工具,即顶点颜色绘制工具,它允许开发者使用资源包提供的所有功能。



2

着色器和材质 

资源包拥有用于熔岩及其附属对象的大量着色器和材质。例如:多种熔岩类型,可供用户随意混合使用。所有内容的设置可以用属性中的滑块来修改,用户可以使用纹理库创建对象的大量变体。例如:冷却熔岩和停止加热点。



资源包内有大量着色器变体,部分带有曲面细分,部分支持移动设备。通过使用着色器来附加对象,可以产生加热岩石的效果,并自动给它们带上可以手动修改的灰烬。这些着色器对于处理洞穴内部效果非常实用。

 

你可以绘制冻结的熔岩,并通过使用顶点颜色工具将其和周围环境混合起来。此外,当用灰烬覆盖熔岩时,它会通过曲面细分网格填充角落和缝隙,使效果尽可能逼真。你还可以制作出受到长时间侵蚀的熔岩效果。



3

图形内容 

图形内容包括各种地面纹理,不同岩石类型匹配不同的火山类型,海洋和湖泊岸边的火山沙也根据火山类型而有所不同。

 

 

资源包中包含模块化的20个岩石模型,带有9个悬崖和大量由着色器产生的变体。这些模型可以根据特定情况和特定环境进行调整,你可以用它们构造洞穴的内部或制作出大型火山。

 

 

火山喷发时火山碎屑和岩石碎片会沿着火山的斜坡和冒泡的熔岩翻滚流下,产生的热空气和各种烟雾会模糊和扭曲空气。

 

 

资源包还包含CTS地形着色器的配置系统,能让你获得熔岩资源包中的惊艳特效。地形纹理带有CTS着色器,提供了高度混合等功能,使石块可以从火山尘中暴露出来。



4

教程 

资源包中包含三个演示场景,展示三种不同类型的火山和环境。我们添加了一个演示场景用来学习工具和系统,以及一组图像效果,因为熔岩这类发射材质会得到泛光形状,而且它们的密度主要取决于泛光的强度,需要使用该强度来准确调整这些密度。

  

所有内容都有相应的描述和标签,使用户了解可以使用的东西。我们还添加了一些富有创意的解决方案,一些用户使用它解决了一些与熔岩无关的问题,这让我们感到很意外,例如:河流的边缘部分或是用样条曲线制作的悬崖。

 

下面的视频将展示资源包的内容和创意功能。


着色器

在制作着色器时,我们首先需要了解自然环境中各种类型的熔岩,以了解想要获得的最终效果。熔岩的类型取决于形成熔岩的岩石类型。熔岩有时速度很快,有时则缓慢流动,它会在河流上层冷却,这将应用于河流系统和周围环境模型。

 

我们打算呈现出这个环境的全部特征、火山类型、熔岩对滑坡区域的反应以及加热和冷却的方式。此外流型图有时会使问题变复杂,因为这不是水的表面,而是个曲面细分网格,上面带有特定网格密度纹理和流动的冷却表面。



大多数处理方法是根据高度和熔岩材质的混合得到的。所有贴图必须互相匹配,包括最为重要的发射贴图,当河流变为瀑布时,需要适当的混合效果,并管理高度和发射贴图的密度,从而实现融化岩石的效果。

 

熔岩拥有三个状态:缓慢流动、小型瀑布和大型熔岩。



所有内容都能用滑块处理,用户可以以完全不同的方式处理岩石通常随着倾斜度的增加而升温的问题,而瀑布上融化岩石的效果看上去会非常壮观。



我们使用Amplify Shader Editor来制作出所有的内容,同时也得到了Amplify团队大力支持。这帮助我们我们为当前项目快速添加需要的新功能,或是根据需要进行一些小幅改动。着色器很庞大,然而它非常高效,除曲面细分外,甚至能在移动设备上运行。

 

在我们制作CTS shader – Complete Terrain Shader时,Amplify团队帮助我们优化了着色器上的视图系统。

 

 

多数熔岩由三个纹理组成,即:Albedo、Normalmap、Metallic / Ambient Occlusion / Height / Emission。还更高级的选项,即用于三种类型熔岩的几何:缓慢瀑布、小型瀑布和大型瀑布。


模块化

我们一开始对主题环境进行研究,了解地质和岩石类型。一旦清楚要完成什么后,使用Substance Designer制作着色器和材质会很容易。

 

模块化主要基于UV Free着色器,它们能使平滑表面与相邻模型无缝连接。这些着色器很适合构造洞穴内部的效果。所有内容都能用顶点绘制来自定义。场景中的性能耗用很高,其中的80%用在了图像特效和粒子数量上。


光照

熔岩是发射性的,所以除了发射和着色器贴图外的大部分工作是制作泛光特效,但着色器还拥有凸显边缘和尖角的边缘光。即使沿河的对象没有使用着色器来加热,这也可以让你获得升温岩石的效果,所有属性都可以用滑块调整。我们还确保了发射量取决于倾斜度,可以随机混合来破坏平铺效果。


小结

关于L.V.E - Lava & Volcano Environment资源包就为大家介绍到这里,希望它能够帮助你在游戏中创作出令人惊艳的场景,发行商NatureManufacture也会不断更新功能与教程来为开发者提供帮助。

 

同时不要忘记Humble Unity Bundle限时优惠19日即将截止了,请抓紧最后的优惠时间。更多精品插件资源介绍尽在Unity官方中文论坛(UnityChina.cn)  !

 

 

推荐阅读

 

活动信息

Autodesk University中国“大师汇”

9月20-21日,Unity将出席在杭州举办的全球设计创新领域顶级盛会Autodesk University -欧特克AU中国“大师汇”,为大家呈现Unity最新实时渲染技术与行业解决方案。[了解详情...

大会地点:杭州国际博览中心

大会官网:https://au2018.hyby.com.cn


Unity官方教师培训报名火热进行中

Unity将在10月22-26日,举办为期5天的专业的Unity官方教师培训课程,诚邀广大教师与Unity一同学习分享最新技术![了解详情...

报名地址:

https://connect.unity.com/events/2018jiaoshipeixun


Unity与Humble Bundle限时优惠Humble Unity Bundle 

开发者可以通过购买Humble Unity Bundle,在获得Made with Unity的精品游戏,同时也能够获得Asset Store资源商店的多个精品资源。本次限时优惠促销的部分款项将用于支持慈善机构。[了解详情...

购买地址:

https://www.humblebundle.com/games/unity-bundle



点击“阅读原文”访问Unity官方中文论坛

 
Unity官方平台 更多文章 Autodesk University中国“大师汇”,Unity引领行业技术革新 Unity机器学习代理ML-Agents Toolkit v0.5发布 今晚8点直播 | 使用ECS开发 《快乐的Minecraft》 Timeline扩展功能实践指南 Unity官方教师培训报名启动
猜您喜欢 运维英雄联盟@4.23 | 应用性能管理大讲堂第十二期—运维专场 年薪40w的大数据开发【教程】,都在这儿! Python 之父抛弃 Python! 本周六晚开赛!商汤在线编程挑战赛* 诚邀您的参与! 让用户喜欢的APP是啥样的