在我们的全新匹配-3 样本《宝石猎人匹配》中寻找灯光和视觉效果的宝库

宝石猎人匹配》(Gem Hunter Match )是一款全新的官方 Unity 示例,它向您展示了如何通过在Unity 2022 LTS 中使用 通用渲染管道(URP)创建的抢眼光照和视觉效果,让 2D 解谜/匹配-3 游戏在竞争中脱颖而出。


气泡、珊瑚和警惕的美人鱼构成了《宝石猎人对决》游戏棋盘的背景。珍珠、粉色蓝宝石、红宝石海星、蓝色鱼类、金色蛤蜊和昏昏欲睡的海龟遍布三个可玩关卡的棋盘。清除宝石,通过匹配三个或三个以上的物品获得助推器和金币。助推器能帮助你实现目标,但如果失败了,你就会失去一颗心。木箱和绳子是阻挡物;在木箱旁边或绳子下面匹配三个阻挡物即可将其移除。

简单的游戏循环包括一个可以重复使用的库存。以下是其主要内容:
主场景该屏幕列出了所有可玩关卡,这些关卡是通过数据文件夹内名为LevelList 的 ScriptableObject 引用的。
关卡场景:这显示了游戏的设置。您需要清除目标部分的元素。
在Data/BonusItems文件夹中,您可以找到助推器和引用的预制件,其中包含要生成的组合形状等参数(在多个部件具有相同组合形状的情况下,将随机选择一个)。您可以在顶部菜单中通过 "资产">"创建">"2D 匹配 "创建自己的助推器。
关卡结束 / 商店:失败或完成关卡后进入商店,为自己购买助推器、红心或其他货币。所有商店物品都在名为Data/ShopItems的文件夹中(您也可以通过 "资产">"创建">"2D 匹配 "添加自己的物品。商店里的商品包括
硬币匹配三条或更多即可获得金币,并将其作为软货币使用。 是心还是生命这些助推器能为您赢得重试失败关卡的机会。在三消游戏中,如果玩家用完了这种助推器,通常会有一段冷却时间,然后才能补充生命值/健康值。
明星们在实际的匹配-3 游戏中,星星通常是元游戏、装饰的一部分,或用于推进故事情节。

2D 拼图/3D 游戏之所以受欢迎,是因为它们色彩鲜艳可爱,玩法简单有趣,而且几乎任何人都可以随时随地进行游戏。
它们也可以包含精美的艺术作品,但由于其静态的镜头、重复的游戏玩法,以及在许多情况下预制的灯光和阴影,它们并不以出众的光影效果而闻名。不过,你也可以用很多方法来增加闪光和闪烁的效果,以获得额外的乐趣。
精灵自定义光照着色器是用于在《宝石猎人对战》中创建视觉效果的技术之一。该着色器可替代场景照明,让我们可以修改二维光线纹理信息,并控制每个作品的照明。其结果是创造性地照亮了精灵,比如在棋子上移动的闪亮效果。
光线位置数据被移到着色器中,从而无需在场景中使用实际的光线对象,这也有助于保持场景的整洁。着色器中封装的每个对象的照明效果很好,可以更好地进行隔离和大规模编辑,并在可以批处理的情况下提高性能。
由于光影信息保存在着色器中,精灵中只包含颜色信息。二维光照系统使用法线贴图来计算每个像素的方向,确保像素根据其位置接收到更多或更少的光照。遮罩贴图用于可影响特定 RGB 通道的灯光。
宝石猎人匹配关卡场景中的灯光预制件包含网格的 2D 灯光。这些灯光会影响默认的 Sprite Lit 着色器,并应用于接收灯光的分类层中的网格项。
下图说明了创建精灵的步骤,以及精灵自定义点亮着色器在此过程中的作用。

在《宝石猎人对决》中,"虚构 "的灯光位置由LightRotator游戏对象表示,该游戏对象会以动画的形式在宝石上产生眩光效果。对 2D 灯光纹理的修改和使用点乘积节点制作的高光效果,都会被应用到游戏中宝石的TileShader着色图中。

在 2D 项目中,如果您想自定义灯光,点积节点会非常有用。点积衡量两个矢量的相近程度。在样本中,LightDirection 位置与法线贴图中每个像素的视方向进行比较。采样的黑白图像可用于为精灵添加光线,并在运行时使用相同的着色器更新所有片段的数值。


希望您能下载《宝石猎人火柴人》,玩玩并定制它,然后在自己的项目中尝试它的图形技术。Unite 2023 会议 "2D 游戏的照明和人工智能技术"将介绍所有这些内容以及更多内容。
不要错过 URP 的其他样本、电子书和教程:
