Saltar al contenido
PORTSNATIVE.
InicioCatálogo
Juegos WebEmuladoresHerramientasNovedades
PORTSNATIVE.

Un catálogo para descubrir ports y proyectos relacionados. Enlazamos a las fuentes oficiales y no alojamos archivos de los juegos originales.

ExplorarCatálogoMi lista
InformaciónNosotrosProponer un portSoporteApoyo y donacionesAviso legal
© 2026 PortsNative
Volver al catálogo
PORTSNATIVE

Rotating Art Launcher

HERRAMIENTAPLATAFORMASANDROIDBETA

Rotating Art Launcher

Celeste

OrigenUnknown

TecnologíaHerramienta de Desarrollo / Utilidad de Compilación

Disponible paraAndroid

Ver proyecto oficial

Sobre el proyecto

Celeste es un videojuego de plataformas publicado por Maddy Makes Games Inc. en 2018.

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗
<img width="100%" src="https://capsule-render.vercel.app/api?type=waving&color=0:6C3483,50:2874A6,100:1ABC9C&height=220&section=header&text=Rotating%20Art%20Launcher&fontSize=42&fontColor=ffffff&animation=fadeIn&fontAlignY=38&desc=Run%20.NET%20Desktop%20Games%20on%20Android&descSize=18&descAlignY=55&descAlign=50"/> <div align="center"> <img src="icons/ral_app.svg" alt="Logo" width="100" height="100"> <br/>

<a href="README.md">English</a>  |  <a href="README_ZH.md">中文</a>

<br/><br/>

Android .NET Kotlin Compose

License GitHub Stars Discord Patreon

<br/>

Rotating Art Launcher is an Android application that lets you run .NET-based desktop games on mobile devices.<br/> Supports native/original releases of FNA/XNA and Mono games, as well as mod loaders like tModLoader, SMAPI, and Everest.<br/> The runtime supports both SDL2 and SDL3, with an integrated Mono runtime for compatible games.

</div>
<details> <summary><h2>📖 Table of Contents</h2></summary>
  • Supported Games
  • Features
  • Getting Started
  • Building from Source
  • Project Architecture
  • Contributing
  • License
  • Acknowledgments
  • Contact
</details>

🎮 Supported Games

<div align="center">
GameEdition / RuntimeStatus
TerrariaOriginal release · Mono✅ Supported
CelesteOriginal release · Mono / Everest✅ Supported
FEZOriginal release · Mono✅ Supported
TerrariatModLoader✅ Supported
Stardew ValleySMAPI✅ Supported
Other FNA/XNA and Mono games—🚧 In progress
</div>

✨ Features

<table> <tr> <td width="50%" valign="top">

🧩 Runtime & Frameworks

  • Full .NET 10.0 Runtime integrated
  • Integrated Mono runtime for original Mono-based games
  • Native .NET assembly execution
  • FNA / XNA game framework support
  • Built-in MonoMod patch system

🔌 SDL Compatibility

  • SDL2 runtime and native libraries supported
  • SDL3 runtime and native libraries supported
  • Select the SDL version required by the game at launch
</td> <td width="50%" valign="top">

🖥️ Multiple Renderers

RendererDescription
Native OpenGL ES 3Fastest, direct GPU
GL4ESBest compatibility
GL4ES + ANGLEVulkan, for Snapdragon
MobileGluesGL 4.6 → GLES 3.2
SDL3 + VulkanNative SDL3 Vulkan renderer
</td> </tr> <tr> <td width="50%" valign="top">

🎛️ Control System

  • Virtual Joysticks — Custom touch controls
  • Virtual Buttons — Irregular shapes
  • Virtual Keyboard — Drag & transparency
  • Xbox Controller — Bluetooth / USB
  • Mouse + Keyboard — Touch mapping
  • Layout Editor — Visual customization
  • Control Packs — Shareable layouts
</td> <td width="50%" valign="top">

🌐 More Features

  • GOG Integration — Download purchased games
  • EasyTier Multiplayer — P2P VPN networking
  • Patch System — Auto game compatibility
  • Multi-Process — Isolated game process
  • Dynamic Loading — On-demand native libs
  • Compose UI — Material 3 modern design
</td> </tr> </table>

🚀 Getting Started

Requirements

  • 📱 Android 9.0 (API 28) or higher
  • 🏗️ ARM64-v8a architecture device
  • 💾 At least 2GB free storage

Installation

1. Download the latest APK from the Releases page
2. Enable "Install from Unknown Sources"
3. Install the APK and launch the app
4. Follow the setup wizard
<div align="center">

Download

</div>

Usage

  1. Open Rotating Art Launcher
  2. Tap "+" to add a game (or download via GOG)
  3. Select the game executable
  4. Configure the renderer, SDL version (SDL2 or SDL3), runtime (.NET or Mono), and controls; with SDL3, Vulkan rendering is available
  5. Launch and enjoy 🎮

🛠️ Building from Source

<details> <summary><b>Click to expand build guide</b></summary>

Prerequisites

ToolVersion
Android StudioLatest stable
Android NDKr28
CMake3.22.1+
JDK21
GitWith LFS support

Build Steps

# Clone the repository
git clone --recursive https://github.com/FireworkSky/RotatingartLauncher.git
cd RotatingartLauncher

# Build the Debug APK
./gradlew assembleDebug

Output: app/build/outputs/apk/debug/

</details>

📁 Project Architecture

<details> <summary><b>Click to expand directory structure</b></summary>
RotatingartLauncher/
├── app/                          # Main Android application module
│   └── src/main/
│       ├── java/.../ralaunch/    # Kotlin/Java source code
│       │   ├── core/             #   Game launch core logic
│       │   ├── dotnet/           #   .NET runtime integration
│       │   ├── renderer/         #   Renderer config & loading
│       │   ├── controls/         #   Virtual control system
│       │   ├── gog/              #   GOG Galaxy integration
│       │   ├── easytier/         #   EasyTier multiplayer service
│       │   ├── patch/            #   Patch management system
│       │   └── ui/               #   Compose UI screens
│       ├── cpp/                  #   Native C/C++ (SDL2, GL4ES ...)
│       └── assets/               #   Runtime resources
├── shared/                       # Kotlin Multiplatform shared module
│   └── src/
│       ├── commonMain/           #   Shared UI, domain, data layer
│       └── androidMain/          #   Android-specific implementations
└── patches/                      # C# game patch files
</details>

🤝 Contributing

Contributions are welcome! Feel free to submit Issues and Pull Requests.

<details> <summary><b>Click to expand contributing guide</b></summary>
  1. Fork this repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Code Style

  • Follow Android Kotlin coding guidelines
  • Use meaningful variable and function names
  • Add comments for complex logic

Reporting Issues

  1. Check existing Issues to avoid duplicates
  2. Create a new issue with:
    • Clear description of the problem
    • Steps to reproduce
    • Device info (model, Android version)
    • Logs (if applicable)
</details>

📄 License

This project is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE file for details.

<details> <summary><b>Third-Party Licenses</b></summary>
LibraryLicense
SDL2Zlib License
GL4ESMIT License
.NET RuntimeMIT License
FNA3DMicrosoft Public License
</details>

🙏 Acknowledgments

<div align="center">

Special thanks to the following open-source projects and communities

</div>
ProjectDescription
SDL ProjectCross-platform media library
GL4ESOpenGL compatibility layer
.NET Runtime.NET runtime
FNAXNA compatibility framework
ANGLEOpenGL ES over Vulkan
EasyTierP2P networking
PojavLauncherLauncher inspiration
<div align="center">

Thanks to all contributors and Patreon supporters!

</div>

📬 Contact

<div align="center">

Issue Discussions Discord Patreon

</div> <img width="100%" src="https://capsule-render.vercel.app/api?type=waving&color=0:6C3483,50:2874A6,100:1ABC9C&height=120&section=footer"/>
Leer guía oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
HERRAMIENTA
Género
Plataformas
Estado
beta
Plataforma de origen
Unknown
Tecnología
Herramienta de Desarrollo / Utilidad de Compilación
Versión
—
Actualización
29 oct 2026

Plataformas de destino 1

Android
Ver en GitHub
Publicidad