使用 SpecKit、Rust 和 Bevy 进行游戏开发

发布: (2025年12月3日 GMT+8 06:00)
5 min read
原文: Dev.to

Source: Dev.to

概览

brkrs — 一个有趣、可玩且用于学习的砖块破坏游戏与练习场

brkrs 是一个真实可玩的 Breakout/Arkanoid 风格游戏,使用 Rust 🦀 编写,基于 Bevy 引擎。它也是一个 动手学习项目,让你可以探索:

  • 使用 GitHub speckit规格优先开发
  • 通过 issue 与 PR 进行增量特性开发
  • AI 辅助与代理式编码实验

每个特性都从规格开始,经过 issue 或 PR 流程,最终成为可运行的 Rust 代码。你可以 玩游戏、浏览代码,同时学习现代 Rust/Bevy 工作流

“Talk is cheap. Show me the code.” – Linus Torvalds

brkrs 让你可以玩、摆弄,并看到规格在真实游戏中变为现实。

brkrs 背后的故事

我一直想 用现代游戏框架重写我以前的 Arkanoid/Breakout‑style 游戏,YaAC 🐧。我最初 手动实现核心游戏玩法:阅读文档、参考示例,搭建一个包含基本机制(球、挡板、砖块)的概念验证。

很快我就意识到,手动完成所有工作会 学习曲线陡峭且耗时

brkrs 于是诞生,作为一种解决方案:一种 学习现代 Rust 游戏开发、应用 规格优先工作流、并尝试 AI 辅助编码 的方式,同时还能玩一款真实的游戏。

立即尝试

GitHub Pages 上玩网页版。

关键特性

  • 经典 Breakout 风格玩法:挡板、球、砖块和关卡
  • 关卡为人类可读格式,易于修改
  • 规格优先工作流:每个特性从规格开始,最终成为可运行的 Rust 代码
  • 小而增量的 PR 展示开发工作流和学习路径
  • 可作为 crate 使用,跨平台(桌面 + WebAssembly 构建)

一种 有趣、易上手的方式来学习 Rust、Bevy 以及现代编码实践

快速入门(玩 & 学)

前置条件: Rust、Cargo、Git

git clone https://github.com/cleder/brkrs.git
cd brkrs
cargo run --release
  • 进入全屏模式
  • 退出全屏模式

控制方式: 用鼠标移动挡板,滚轮旋转(如果启用),ESC 暂停。

玩、调试、学习 —— 修改关卡、砖块或机制,观察规格如何转化为特性。

核心系统

  • 物理(Rapier3D) – 受限于平面上的 3D 物理。
  • 游戏状态 – (计划中)菜单、游戏中、暂停、游戏结束、状态切换。
  • 关卡加载器 – 解析 RON 文件,生成实体,支持每关重力设置。
  • 砖块系统 – 通过组件与事件实现可扩展的砖块行为。
  • 暂停系统ESC 暂停,点击恢复,支持窗口模式切换(原生)。

学习路径与贡献

本项目旨在 有趣且具教育意义。建议的学习步骤:

  1. 阅读仓库或 wiki 中的规格
  2. 挑选一个小 issue 来实现。
  3. 提交满足规格的 PR
  4. 尝试 AI 辅助特性或游戏玩法的微调

文档

完整文档位于 brkrs.readthedocs.io

为什么你会喜欢它

  • 在学习编码实践的同时玩一款真实游戏
  • 观看规格转化为可运行特性
  • 安全地尝试 Rust、Bevy 与 AI 辅助工作流

通过 动手、玩乐的方式 学习。

Back to Blog

相关文章

阅读更多 »

开源邮件预热:完整指南

引言 开源电子邮件预热是逐步与邮箱提供商建立信任的过程,使您的邮件进入收件箱,而不是垃圾邮件文件夹....