Rotating Art Launcher 是一款 Android 应用,让你在移动设备上运行基于 .NET 的桌面游戏。
支持 FNA/XNA 框架游戏、tModLoader、SMAPI、Everest 等模组加载器。
| 游戏 | 模组加载器 | 状态 |
|---|---|---|
| Terraria (泰拉瑞亚) | tModLoader | ✅ 支持 |
| Stardew Valley (星露谷物语) | SMAPI | ✅ 支持 |
| Celeste (蔚蓝) | Everest | ✅ 支持 |
| 其他 FNA/XNA .NET 游戏 | — | ✅ 支持 |
|
|
||||||||||
|
|
- 📱 Android 7.0 (API 24) 或更高
- 🏗️ ARM64-v8a 架构设备
- 💾 至少 2GB 可用存储
1. 从 Releases 页面下载最新 APK
2. 启用「允许安装未知来源应用」
3. 安装并启动应用
4. 按照引导完成初始化
- 打开 Rotating Art Launcher
- 点击 「+」 添加游戏(或通过 GOG 下载)
- 选择游戏可执行文件
- 配置渲染器和控件布局
- 启动游戏 🎮
展开查看构建指南
| 工具 | 版本 |
|---|---|
| Android Studio | 最新稳定版 |
| Android NDK | r28 |
| CMake | 3.22.1+ |
| JDK | 21 |
| Git | 含 LFS 支持 |
# 克隆仓库
git clone --recursive https://github.com/FireworkSky/RotatingartLauncher.git
cd RotatingartLauncher
# 构建 Debug APK
./gradlew assembleDebugAPK 输出路径:app/build/outputs/apk/debug/
展开查看目录结构
RotatingartLauncher/
├── app/ # Android 应用主模块
│ └── src/main/
│ ├── java/.../ralaunch/ # Kotlin/Java 源码
│ │ ├── core/ # 游戏启动核心逻辑
│ │ ├── dotnet/ # .NET 运行时集成
│ │ ├── renderer/ # 渲染器配置与加载
│ │ ├── controls/ # 虚拟控件系统
│ │ ├── gog/ # GOG Galaxy 集成
│ │ ├── easytier/ # EasyTier 联机服务
│ │ ├── patch/ # 补丁管理系统
│ │ └── ui/ # Compose UI 界面
│ ├── cpp/ # 原生 C/C++ (SDL2, GL4ES ...)
│ └── assets/ # 运行时资源
├── shared/ # Kotlin Multiplatform 共享模块
│ └── src/
│ ├── commonMain/ # 通用 UI、领域模型、数据层
│ └── androidMain/ # Android 平台实现
└── patches/ # C# 游戏补丁文件
欢迎提交 Issue 和 Pull Request!
展开查看贡献步骤
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
- 遵循 Android Kotlin 编码规范
- 使用有意义的变量和函数命名
- 为复杂逻辑添加注释
- 先查看已有 Issues 避免重复
- 创建新 Issue 时请提供:
- 问题的清晰描述
- 复现步骤
- 设备信息(型号、Android 版本)
- 日志(如有)
本项目基于 GNU General Public License v3.0 (GPLv3) 开源。详见 LICENSE 文件。
第三方库许可
| 库 | 许可证 |
|---|---|
| SDL2 | Zlib License |
| GL4ES | MIT License |
| .NET Runtime | MIT License |
| FNA3D | Microsoft Public License |
感谢以下开源项目和社区
| 项目 | 说明 |
|---|---|
| SDL Project | 跨平台媒体库 |
| GL4ES | OpenGL 兼容层 |
| .NET Runtime | .NET 运行时 |
| FNA | XNA 兼容框架 |
| ANGLE | OpenGL ES over Vulkan |
| EasyTier | P2P 组网 |
| PojavLauncher | 启动器灵感来源 |
感谢所有贡献者和 Patreon 支持者 !