字节笔记本

2026年3月22日

awesome-flame:Flame 2D 游戏引擎生态资源合集

本文介绍 awesome-flame,一个精心策划的 Flame 引擎生态资源合集,收录了与 Flame 2D 游戏引擎相关的最佳游戏项目、插件库、教程文章与开发工具,是 Flutter 游戏开发者不可或缺的导航资源库。

项目简介

awesome-flame 是由 Flame 引擎官方组织维护的一个 Awesome List 类型项目,托管在 flame-engine GitHub 组织下。该仓库系统性地收集和整理了 Flame 生态中最优秀的开源游戏项目、插件与库、文章教程以及各类开发资源,为 Flutter 游戏开发者提供了一站式的参考指南。

Flame 引擎本身是一个基于 Flutter 构建的极简主义 2D 游戏引擎,提供了一组相对独立的模块,开发者可以按需选择来构建自己的游戏。awesome-flame 作为其生态的门户项目,帮助开发者快速发现高质量的学习材料和可直接使用的工具。

核心特性

丰富的教程资源

awesome-flame 收录了多篇高质量的 Flame 引擎教程和文章,覆盖了从入门到进阶的各个阶段:

系统性教程系列:

  • Color Switch 游戏教程(by imaNNeo,2023 年):涵盖 Flame 组件系统(FCM)与事件处理、Camera 和 World 组件、Sprite 与自定义组件、碰撞检测、暂停菜单与 Overlays、评分与粒子系统、音频与音效、性能优化等 8 个章节,是学习 Flame 引擎最全面的中文教程之一
  • Forge2D 物理引擎系列(by YayoCode):从项目搭建到物理世界的创建,涵盖 Body 类型、摩擦力与密度、力与冲量、精灵绑定、碰撞检测等 8 篇文章,适合需要物理模拟的游戏开发
  • raywenderlich.com 教程(by Vincenzo Guzzi):权威技术网站的 Flame 入门指南
  • Dart Box2D 基础系列(by wolfenra.in):深入讲解 Box2D 物理引擎的底层原理

实战项目教程:

  • 使用 Flame 构建打砖块游戏(Brett Morgan),集成 Flutter 状态管理
  • 开发带有广告和国际化的游戏(Bo Hellgren)
  • Flame Web 端实践(Aseem Wangoo)
  • 2D 平台跳跃游戏开发系列 - 不使用 Forge2D(DevKage)
  • Dino Run 跑酷游戏开发系列(DevKage)
  • Spacescape 太空射击游戏开发系列(DevKage)
  • 使用 Flutter + Flame + Supabase 构建实时多人对战游戏(Tyler Shukert)

强大的插件与库生态

awesome-flame 整理了 Flame 生态中重要的插件与工具库:

  • First-Party Plugins:Flame 官方 monorepo 中包含的第一方插件,提供最核心的功能支持
  • bonfire(by rafaelbarbosatec):RPG 游戏制作工具包,提供角色、地图、战斗系统等 RPG 游戏所需的完整组件
  • flame_texturepacker(by Brixto):支持从 TexturePacker 导入精灵表,方便管理大量游戏素材
  • leap(by kurtome):一个有主见的 2D 平台跳跃游戏开发工具包,简化了平台跳跃游戏的常见实现

海量的游戏项目展示

awesome-flame 收录了大量使用 Flame 引擎开发的游戏项目,按类型进行了详细分类,是展示 Flame 引擎能力的最佳窗口。

开源项目:

在开源类别下,包含了多种类型的游戏示例,开发者可以直接学习源代码:

类型代表项目说明
休闲游戏Antimine(扫雷)、Bob Box、Snaake!(贪吃蛇)、Ghost Rigger经典休闲游戏的高质量 Flutter 实现
教育类Visual Graphs图数据结构算法可视化工具
无尽跑酷BGUG、Dino Run高速侧滚平台跳跃游戏
平台跳跃Flutters、Simple Platformer经典平台跳跃游戏实现
RPGDarkness Dungeon简易角色扮演游戏

已上架应用商店的商业游戏:

这是 awesome-flame 最具说服力的部分,展示了 Flame 引擎完全有能力支撑商业级别的游戏发布:

类型游戏名称平台说明
动作VitayajaAndroid2D 对战格斗游戏
街机Air Hockey ClassicAndroid, iOS经典空气曲棍球
街机Oh Dash!Android, iOS快节奏闪避游戏
棋盘Four In A RowAndroid, iOS经典四子棋
棋盘OmnichessWeb, Android, iOS自定义国际象棋变体
棋盘Chinese CheckersAndroid, iOS支持在线对战的中国跳棋
休闲KINGAAndroid, iOS保护饼干不被苍蝇碰到
休闲WormoAndroid, iOS软体虫子休闲游戏
休闲Brick ManiaAndroid, iOS经典打砖块重制版
休闲Save The PotatoAndroid, iOSFlame Game Jam 3.0 冠军作品
教育Sky AcademyAndroid, iOS天文学习应用
教育MathonautAndroid, iOS数学平台游戏
教育Japanese Fun J64Android, iOS日语学习互动小游戏
银河恶魔城Tales of a Lost MineAndroid平台冒险银河恶魔城游戏
音乐Relo Music InstrumentAndroid, iOS创新性相对音乐乐器
多人在线Penguin ChatAndroid, GitHub企鹅虚拟世界聊天
解谜Jigsaw PuzzlesAndroid, iOS拼图游戏,数千张 HD 图片
解谜Bumble MazeAndroid, iOS程序化生成花园迷宫
角色扮演The DarkbladeDesktop魂类 2D 单人 RPG
角色扮演Grid LandsWeb实时 MMO 扫雷 + PvP
体育Pool Ball ClassicAndroid, iOS3D 图形台球游戏
体育Cycling EscapeAndroid, iOS自行车竞速游戏
塔防XtrikeAndroid策略塔防游戏
塔防Bubble Panic!Android, iOS休闲塔防,自动生成关卡
RoguelikeGeometry Survival BetaAndroid几何生存 Roguelike
模拟Random RaceAndroid, iOS恐龙竞速决策模拟

技术栈

核心引擎

  • Flame Engine:基于 Flutter 构建的极简主义 2D 游戏引擎,采用模块化设计,开发者可以按需引入组件
  • Flutter:底层跨平台框架,使得 Flame 游戏可以运行在 Android、iOS、Web、macOS、Linux、Windows 等多平台

生态工具

  • Forge2D:Flame 的物理引擎模块,基于 Box2D 提供 2D 物理模拟能力
  • TexturePacker:精灵表打包工具,用于优化游戏素材的加载效率
  • bonfire:RPG 游戏专用扩展包
  • leap:平台跳跃游戏专用工具包

关键技术特性

Flame 引擎的核心技术特性包括:

  • Flame Component System (FCM):组件化架构,支持灵活的游戏对象组合
  • Camera & World 组件:相机系统和世界坐标系管理
  • Sprite 与精灵动画:精灵加载与帧动画支持
  • 碰撞检测:内置碰撞检测系统
  • 粒子系统:高性能粒子效果
  • 音频系统:音效与背景音乐播放
  • Overlay 与 Decorator:UI 叠加层与装饰器模式

安装指南

引擎安装

在 Flutter 项目中添加 Flame 引擎依赖:

bash
flutter create my_game
cd my_game
flutter pub add flame

根据需要添加可选模块:

bash
# 物理引擎
flutter pub add flame_forge2d

# 音频支持
flutter pub add flame_audio

# 其他可选模块...

克隆 awesome-flame 资源库

bash
git clone https://github.com/flame-engine/awesome-flame.git

快速开始

学习路径建议

对于想要学习 Flame 游戏开发的开发者,建议按以下路径进行:

  1. 入门阶段:阅读 raywenderlich.com 的入门教程,了解 Flame 的基本概念和组件系统
  2. 基础实践:跟随 DevKage 的 Simple Platformer 或 Dino Run 教程,完成第一个完整游戏
  3. 进阶学习:学习 imaNNeo 的 Color Switch 教程系列,掌握碰撞检测、粒子系统、音频等进阶功能
  4. 物理引擎:通过 YayoCode 的 Forge2D 系列教程学习物理模拟
  5. 实战参考:研究 awesome-flame 中收录的开源项目源码,学习实际项目的架构设计

从模板开始

开发者可以直接从 awesome-flame 中挑选感兴趣的开源游戏项目,克隆源码后进行学习和修改,这是最快的上手方式。

使用示例

游戏类型参考

awesome-flame 中收录的游戏覆盖了极其广泛的类型,开发者可以根据自己想要开发的游戏类型找到对应的参考项目:

  • 想做休闲游戏:参考 Antimine(扫雷)、Bob Box、Wormo 等项目
  • 想做平台跳跃:参考 leap 工具包和 Simple Platformer、BGUG 等项目
  • 想做 RPG:参考 bonfire 工具包和 Darkness Dungeon、Xeonjia、The Darkblade 等项目
  • 想做塔防:参考 Xtrike 和 Bubble Panic! 项目
  • 想做解谜游戏:参考 Bumble Maze、Pixelado、Jigsaw Puzzles 等项目
  • 想做多人在线游戏:参考 Penguin Chat 和 Grid Lands 项目,以及 Tyler Shukert 的实时多人对战教程
  • 想做教育类游戏:参考 Sky Academy、Mathonaut、Japanese Fun J64 等项目

资源工具

awesome-flame 还提供了实用的游戏开发资源:

  • Game UI Database:游戏界面设计参考工具,收录了超过 500 款游戏的 19000+ 界面截图,可按屏幕类型、材质、布局、纹理等维度筛选,是游戏 UI 设计的宝贵参考资料

项目链接

分享: