《Forest Fears》最初是为Game For Change挑战赛而开发的。在为期三个月的开发过程中,我们制作了一款以自然为主题的2.5D平台跳跃游戏。
我主要负责游戏设计,音乐创作与音效实现,同时也参与了关卡搭建与过场动画录制。
此游戏由我, Kai Dodson, Chenyen Liaw, Evan Beck共同制作完成。
在早期的设计阶段,我们进行了头脑风暴,构思了游戏的基本框架,包括核心角色、剧情以及其他关键游戏要素。
我们设定了各项截止日期,用于确定故事情节,游戏机制与美术风格。
随着前期hi做的推进,我们开始进行关卡设计。最初的版本以直面草图的形式完成,最总定稿则在Figma中完成,由团队成员共同参与完善。
在进入Unity开发后,我们各自负责搭建一部分关卡设计,最终将这些部分拼合在一起。在搭建过程中,我们也不断进行细节调整,以避免出现不合理设计,例如玩家无法完成的跳跃等问题.
Figma中的关卡设计
我在Unity中通过音频中间件Wwise进行了所有音频的整合与实现。
所有音频的前期处理工作均在Logic Pro中完成,所使用的声音素材来自版权免费的音源,或是我自己录制的声音。
借助Wwise,我能够更好控制每个音频事件的触发与暂停逻辑。
我们使用了三个音频库(Soundbank),分别负责环境音效、音效效果以及音乐。
通过 Wwise 的使用,我们实现了 互动式音乐。
在游戏中,玩家会随着进程探索多个不同区域。正如我们的设计,当玩家进入新的区域时,音乐会随之变化,但不会出现 暂停或突兀的断层。
为此,我们将音乐导出为 独立片段,并同时分离为 不同的音轨层。如图所示,MUS_State_1 仅包含 键盘层(Keys),而 MUS_State_6 则包含全部六个层:低音(Bass)、铃声(Bells)、鼓组(Drum Kit)、键盘(Keys)以及主旋律(Lead)。
这些层彼此之间差异明显,从而营造出 从一个区域到另一个区域的音乐变化效果。
每一段音乐都绑定到一个Wwise状态(state),当玩家进入Unity中预先设置的触发区域时,该状态会被触发。随后Wwise会按照设定好的逻辑切换到对应的音乐片段,实现区域间的平滑音乐过渡。
Unity中音乐触发器的设置
音乐触发器代码
我使用 RTPC(实时参数控制) 来管理游戏音量并实现特定音效。
在游戏设置页面中有一个音量滑块,它与 Wwise 中的RTPC 参数相连。该 RTPC 直接控制游戏音频系统主总线的输出音量,从而使游戏中所有声音都能随之变化。
RTPC和音量滑块通过代码相互关联
另一个 RTPC 被用于控制藤蔓摆动音效的音量。该 RTPC 与玩家的 速度相连,玩家速度越快,音效就会越响。
我还制作了不同的脚步声,在玩家移动时随机播放。脚步声在泥土与草地上听起来会有所不同。这里使用了 Wwise 的切换容器(Switch Container),通过从玩家角色垂直向下发射的射线来检测地面材质,从而改变至相应的音效。
脚步声的触发则依赖于动画事件。当玩家模型的脚触碰到地面时,事件会被广播,并触发音效。这样可以确保音画同步,避免出现不协调的情况。
脚步声实现代码