《动物井》33Mb背后的秘密:开发者GDC揭秘,还能更小?

   时间:2025-03-21 01:22 来源:ITBEAR作者:柳晴雪

在独立游戏界,去年有两款作品犹如璀璨双星,吸引了众多玩家的目光,它们分别是《动物井》与《小丑牌》。这两款游戏的共同点在于,它们都是由个人开发者独立完成,且在业界收获了极高的评价。近日,在GDC游戏开发者大会上,《动物井》的开发者Billy Basso分享了他的创作历程,让我们得以窥见这款仅有33MB大小的PC游戏背后的故事。

Billy Basso在演讲中透露,《动物井》的开发始于2017年,起初只是一个计划用6个月时间完成、时长1小时的小型游戏。然而,随着开发的深入,这个项目逐渐壮大,最终耗费了他7年的时间。在这漫长的过程中,Billy Basso还曾是一名医疗模拟软件的全职开发者,直到2022年1月,他才辞去了这份工作,全身心投入到《动物井》的创作中。

Billy Basso表示,他曾参与过多个大型游戏团队的项目,但始终未能拥有一款真正属于自己的游戏。因此,当他决定开发《动物井》时,首要目标就是选择一个他确信能够完成并发布的项目。为了实现这一目标,他在开发过程中做出了许多自我限制,只使用自己熟悉的技术,避免采用新技术或复杂的3D建模,而是专注于2D像素艺术。他还选择自行开发游戏引擎,而不是使用Unity或虚幻等常见的商业引擎。

Billy Basso详细介绍了他的开发工具,包括Visual Studio 2019用于代码开发,以及一个自定义的关卡编辑器,该编辑器支持类似《超级马里奥制造》的瓦片绘制模式和世界地图的拖拽式构建。在像素艺术创作方面,他使用了Sprite软件,并对其进行了修改以支持自定义的动画格式和导出。音频处理则使用了Reaper软件,而文本设计与任务追踪则通过Notepad完成。

关于游戏引擎,Billy Basso表示,他基于C++自行开发了游戏引擎,这需要处理大量的底层工作,包括内存管理和资源加载等。然而,这也让他能够完全掌控游戏的各个方面,避免了与第三方合作的麻烦,并满足了他构建和理解底层系统的乐趣。在演讲中,他还展示了自定义关卡编辑器的三种主要模式:屏幕编辑模式、世界构建模式和精灵图集编辑模式。

在动画方面,Billy Basso使用了Aseprite软件进行像素动画的制作,并修改了Aseprite程序本身以便导出他自定义的二进制动画格式。他认为解析JSON会涉及动态内存分配,这是他想要避免的。因此,他的动画格式是以帧和图层的数组形式存储,可以在运行时快速循环播放并根据画布偏移量进行绘制。他还编写了大量的过程化动画函数库,用于创建各种形状和效果。

《动物井》中的视觉效果和光照也给玩家留下了深刻印象。Billy Basso表示,他没有采用单一的着色器,而是使用了约50个小的独立技术来实现这些效果。他介绍了动态阴影、边缘光照、水体效果和流体系统等技术,这些技术共同构成了游戏中独特而迷人的视觉效果。

最后,Billy Basso总结了为什么《动物井》的游戏文件大小仅有33MB。他表示,这并非是他刻意的追求,而是其技术选择和资源管理策略的自然结果。通过自研引擎、低分辨率像素艺术、音频压缩和稀疏的音乐使用、大量动态生成内容以及无文本内容等策略,他成功地实现了这一小巧而精致的游戏。

Billy Basso的分享让我们看到了独立开发的独特魅力,即通过限制范围、专注于已知技术、自制工具和拥抱实验性的方法,个人开发者也能够创造出独特且充满创意的游戏。而《动物井》的成功,无疑是对这一理念的最好诠释。

 
 
更多>同类内容
全站最新
热门内容