查看原文
其他

Unity中游戏视觉特效的制作

2018-02-09 Unity官方平台

本文作者Stefan Jevremović,以创造“魔法”谋生,也就是他是一名游戏特效美术师。他参与制作了《咒魂:传奇对决》、《魔法战魂》等知名移动游戏。今天,他将告诉你如何在Unity中制作视觉特效。通过本文你将学习如何创作出类似《英雄联盟》、《魔法战魂》等作品中精美的视觉特效。


制作游戏中视觉特效原则

类似《魔法战魂》和《英雄联盟》这样的游戏,在VFX艺术风格上会有所区别,但制作游戏的VFX有着相同需要遵循的原则。

 


  • 在开始制作VFX前,需要和游戏概念设计或UI美术部门进行沟通,确定VFX的具体风格

  • 快节奏的实时游戏体验需要快速的VFX呈现,但仍要确保玩家角色在视觉上清晰可见,不受干扰。 

  •  VFX美观的同时还要切合各角色的主题风格。 

  • 摄像机位置和移动信息对VFX制作也很重要,这些信息可以让效果更好地展现到游戏的镜头前。

  • 游戏性更重要!特效是用于辅助玩家行动的,有时你必须为游戏反馈和清晰度而牺牲画面特效。

  •  尽可能多地获取关于自己作品的反馈。不仅是美术的反馈,还有游戏玩家的,包括轻度游戏玩家的反馈。


制作准备

首先,我们将各种特效进行分类:环境特效、角色特效、法术/技能特效,还有UI 特效。


在开始制作VFX前,我们需要和游戏概念设计或UI美术部门进行沟通,取得关于游戏的信息,从而确认VFX的风格。

VFX的艺术

所有的VFX依赖“三大要素”:形状、颜色和运动。根据特效的特点,有些需要更确切的形状,有些则更多受动作或颜色的影响。


以下是对VFX各个元素的分类 (点击观看大图)



每次制作特效时,都需要将特效剖析成这些元素,对各个元素单独分析。


每个元素都要经过以下考虑: 

  • 该元素有多重要?是主要关注点吗?

  • 它应得到多大的关注度?

  • 它将何时或怎样出现和消失?

  • 它会怎样和其它元素相结合?

  • 如果在游戏中加入了这个元素,它会让特效过于繁杂吗?

 

法术/技能特效

这类效果通常是最具影响力和易于识别的,因为它们给玩家提供了关于游戏玩法的最佳反馈。

 

法术/技能特效检查清单:

  • 哪个角色会使用它?

  • 这个法术或技能的效果有多强力?

  • 法术的逻辑、预施法、持续时间、状态效果和影响范围是怎样的?

  • 该法术少见吗?

  • 是否已经有相关的概念美术或风格?我们是否要自己设计它?

 

对概念美术来说,想象法术技能特效并不是一件容易的事情。有时候概念在3D中效果不佳,需要迭代。 所以我们需要不断寻找灵感,并改变或改进概念艺术的想法。

 

当以上检查清单中信息都准备好后,我们开始使用 Unity制作法术特效。在第一阶段尽可能的重用资源。因为这时我们需要要证明该特效在游戏中效果不错。这就是为什么我们要快速考虑所有要素并设置好基本时间。然后将特效放到游戏中,给游戏设计部门进行测试,确定特效的可行性。

 

动画

用Unity Mecanim系统制作动画很轻松。只要点击录制按钮,在编辑器里的变化都会录制为动画。

 

 

每个特效都有以下个阶段:

  • 预期或淡入:其时间由游戏设计决定。

  • 高潮或影响:这里展现的元素量最多。应设置最大对比度、高饱和度。

  • 消散或淡出:这个阶段不会持续很久,因为此时效果已经结束,不应让它分散玩家的注意力。应设置低对比度、低不透明度。

 

动画的数量取决于VFX,通常每个法术大概有三个动画。我们使用触发器改变播放的动画。程序员可以在创建法术逻辑时,根据技能作用为触发器命名。你可以点击法术的名字,查看详细的分解部分。

 

陨石冲击 - 短暂的延迟后,作用范围内的所有单位受到伤害并被击退。



此特效包含二个动画:

  • 预期 - 提示该区域将有法术出现,显示陨石冲击的作用范围。该动画的时间可以通过法术设置更改为0.5秒至2秒之间。

  • 触发器HIT - 如果游戏逻辑没有调用触发器HIT,陨石不会冲击地面。

  • 高潮和消散会同时发生。

 

衰变穹顶 - 持续时间内眩晕区域内的敌方单位。额外效果:当敌人施法时,所有穹顶内的敌人受到伤害。


 

此特效包含五个动画:

  • 预期 - 出现穹顶。

  • 循环1 - 能量不断流动,持续产生小型闪电。

  • 循环2 - 蓝色闪电随机出现。

  • 打击 - 当敌人施法时,触发器HIT被激活,紫色闪电和光刺会出现在不同图层。

  • 消散 - 法术的持续时间为X秒,然后触发器END会被激活并播放不同图层的消散动画。

 

通过上述设置,你就可以修改法术持续时间。注意,有时候当你在Unity中扩展整个特效效果时候,很可能会遇见粒子系统的问题。所以,我们可以尽可能使用带滚动纹理的网格代替它

 

着色器

我们的图形程序员创建了一个带有大量选项的主着色器,让我们能自由灵活地探索和测试。你可以随意点击,得到有趣的结果。


我们使用的一些基本着色器选项如下: 

  • Color默认使用红色通道。

  • 主纹理使用1、2、3、4颜色渐变。然后还有个用于从我们选择的渐变制作LUT的工具。

 

 


  • 使用RGBA纹理作为颜色。如果纹理是唯一的,我们可以把它放入颜色中。否则使用灰度,以便能在以后重用该纹理。

  • 设为Cutout着色器。

  • 将绿色通道用于Emission。当我们希望在不同动画中的同一纹理上使用二个不同的颜色时,会用到这个功能(陨石冲击的地面碎裂贴图就用了这个功能,同一纹理淡化了碎片并让作用中心出现火光)。

  • 将蓝色通道用于Alpha。这会带来更多对于主颜色和蓝色通道的控制。

  • 淡入/淡出。和Photoshop里的色阶工具相同方法。

 

 

  • 顶点颜色/Alpha选项。通常使用顶点Alpha淡化网格边缘的纹理。

  • 使用第二纹理,与主纹理混合。

  • 我们可以使用所有混合模式。

  • 使用Flipbook(精灵图集),加入动作向量到Flipbook中。

  • 使用Flow map。

  • 其它的功能...

 

优化

 《魔法战魂》是一款移动端游戏,因此要确保它在所有兼容设备上的法术效果都能正常呈现尤为重要。我们做了大量技术调查与研究,以确定如何优化VFX,于是得到了以下几点规则:

  • 只在必要时使用粒子系统。可以用网格上的滚动纹理模拟粒子效果。

  • 过度绘制会让游戏性能大打折扣,要尽量减少。

  • 尽可能多重用纹理。灰度纹理通常可以以压缩状态保存。测试一下降低分辨率是否会对丢失细节产生影响。如果不会,则保持低分辨率。

  • 如果必须使用序列帧(Flipbook),尽量让它小一些,只包含显示整个元素所需的帧。如果使用Motion-Vector纹理添加帧间混合的话,你可以降低帧数。

 

法术的绘制调用资源预算

  • 法术的稀有度:如果该法术很少见,其特效一定要十分特别!所以我们通常给稀有法术更多的图形资源预算。

  • 法术的持续时间:也对资源预算有影响。如果法术会在战场上持续很久,我们会尽量让它保持在资源预算范围内,这样就能施放多个法术而不影响手机性能。

  • 多单位法术:影响屏幕中的多个单位。影响的单位越多,性能消耗越大。我们会根据给定时间屏幕画面上最多单位数来计算其性能消耗,然后再决定法术的资源预算。

  • 游戏资源消耗:假如说,“陨石冲击”法术消耗游戏内大量资源,那意味着你将无法频繁使用它。所以可以给这个法术更多的资源预算。


环境特效

如果VFX不以任何方式影响游戏玩法,那么它们通常十分简洁精妙,这样能丰富关卡、不分散玩家的注意力。或者它们也可以成为游戏过程的一部分,确保玩家注意到有趣的地方。

 

例子:死灵术士战场 - 我们在场景中加入了四处蔓延的绿色雾气、地板上的毒线和顶部中央的吸魂王座。屏幕顶部还有一个动画渐变,以增加深度和气氛。

 

 

角色特效

我们用特效给角色个性增加额外细节。多数时候,这些特效与角色动画紧密相连。例如:进入战场时或施放法术。有时特效会是角色本身的一部分,会在游戏时反复出现。

 

例子:幻术师莱拉出生动画 - 幻术、水晶、镜像和异次元传送门。

 

 

例子:圣骑士维纶攻击特效-神圣一击、圣光之力、神圣之火、圣耀闪电

 


例子:维纶击杀动画 - 通过重用纹理,我们仅需几小时便就制作出这个VFX,甚至有些网格是用了其它特效中的网格。我们可以给角色制作关键姿势,并为定时过程制作动画。

 

UI特效

在游戏中升级或获得金钱也要有VFX。现在免费游戏里打开宝箱或展示卡牌会出现特效。这些特效会在揭示奖励前出现。从心理学角度看,这提高了玩家的幸运感,更好的奖励会有更明显的特效。

 

例子:卡牌揭示 - 在《魔法战魂》中打开宝箱时,会得到多组卡牌。



例子:死灵术士 - 主菜单的选择界面

 

小结

为游戏制作特效非常有趣,往往非常富有挑战性。这个过程,我们需要打破常规,学习从未料想到的东西。今天游戏中的视觉特效制作过程就为大家介绍到这里,希望通过本文的学习,我们熟悉了解VFX的整个制作过程、关键点,从而制作出更为精彩的视觉特效。更多精彩文章尽在 Unity官方论坛(Unitychina.cn)!


点击“阅读原文”访问Unity官方社区!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存