osu! (lazer)
osu! 官方新一代开源客户端 lazer,基于 C# 与 osu!framework 构建的免费节奏游戏,支持 osu!、taiko、catch、mania 四种玩法,并允许开发者创建自定义 ruleset。
爱鲜报评分
0 人评分
19k
星数
否
中文
C#
主语言
是
活跃
722
贡献者
人工分析
EDITORIAL推荐理由
这是全球最知名的开源节奏游戏项目之一,代码质量与工程实践都相当成熟,是学习大型跨平台 C# 游戏客户端架构的优秀范本。项目对 ruleset 扩展持开放态度,开发者可以基于其引擎和谱面库构建全新玩法。社区活跃、文档与本地化支持完善,非常适合想深入游戏引擎、音频同步或跨平台 UI 的开发者。
适用场景
- 学习大型跨平台 C# 游戏客户端架构
- 开发自定义 ruleset 玩法扩展
- 节奏游戏引擎与音频同步研究
- 跨平台(桌面/移动)UI 与渲染实践
- 参与开源社区贡献与本地化翻译
优点
- 官方维护、社区庞大,长期活跃更新
- 架构清晰,osu!framework 与 osu-resources 分层解耦
- 支持 Windows/macOS/Linux/iOS/Android 多平台
- ruleset 机制开放,便于扩展新玩法
- MIT 许可,代码可自由学习与二次开发
缺点
- C#/.NET 技术栈,非该语言背景者上手有门槛
- 代码库规模庞大,理解整体结构需要时间
- 移动端构建需额外安装 Android/iOS 工具链
- 部分功能仍处于持续开发中,稳定性随版本波动
osu! (lazer) 是什么
osu! 是一款免费游玩的节奏游戏,而本仓库是其新一代、也是最终形态的官方客户端,代号 lazer。它标志着 osu! 进入开放时代:客户端完全开源,基于 C# 与自研的 osu!framework 构建,支持 osu!、taiko、catch、mania 四种经典玩法。
rhythm is just a click away!
核心特性
- 多玩法支持:内置 osu!、taiko、catch、mania 四种 ruleset。
- 跨平台:覆盖 Windows、macOS、Linux,以及 iOS、Android 移动端。
- 开放扩展:任何人都可以开发自定义 ruleset,复用谱面库、游戏引擎与通用 UX。
- 持续演进:项目长期开发,目标是最终取代旧的 osu!stable 客户端。
技术栈与结构
- 主语言:C#,依赖 .NET SDK。
- 相关仓库:
osu-framework(引擎)、osu-resources(资源)。 - 推荐 IDE:Visual Studio、JetBrains Rider,或配置了 C# Dev Kit 的 VS Code。
构建时建议使用平台专属的 .slnf 解决方案筛选文件,例如:
osu.Desktop.slnf // 最常用
osu.Android.slnf
osu.iOS.slnf
命令行快速运行:
dotnet run --project osu.Desktop
做性能测试时记得加上 -c Release,避免 Debug 配置带来的额外开销。
开发自定义 Ruleset
osu! 将玩法抽象为 ruleset,开发者可以借此打造全新的游戏方式。仓库的 Templates 目录提供了起步模板,社区也有自定义 ruleset 目录可供参考。
参与贡献
主要贡献方式包括提交 issue 与 pull request。若想参与本地化翻译,可前往 Crowdin 上的 osu! 项目。项目团队强调人类贡献,对 AI 生成内容的参与有明确态度,提交前请阅读贡献指南。
评论
- 暂无评论,来写第一条吧。