📈 GH Trending Explorer 🎲 Surprise me

← all repos

OpenPort-Labs / Galaxy-Android

git clone https://github.com/OpenPort-Labs/Galaxy-Android.git v0.0.4-gamma · 1d ago

Native 100% ARM64 Android port of the 2007 cosmic gravity platformer with OpenGL ES 3.2, AAudio, Hor+ ultrawide, and touch controls.

—
stars, 24h
+241
stars, 7 days · #266
+241
stars, 30 days · #1,089
241
★ total · +241% this week
21
forks · 15 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC++
LicenseGPL-3.0
Created2026-10-13 (7d ago)
Last pushtoday
Watchers15
OwnerOrganization

GitHub topics

Links

README excerpt
# Galaxy Android
 -orange.svg)
**Play the classic 3D cosmic gravity platformer natively on your Android phone, tablet, or handheld console.**
**Galaxy Android** is a **100% native Android ARM64 port**, compiled directly from reconstructed C++ source code. Maintained by OpenPort Labs.
It is **not an emulator**: the game code executes natively on your phone's processor using **Vulkan 1.0** and **AAudio**. Vulkan 1.0 is a hard requirement - the manifest declares `android.hardware.vulkan.version` as required, so devices without a Vulkan 1.0 driver cannot install the app.
---
## Acknowledgements & Deep Gratitude
This project is made possible through the pioneering work of the community:
- **bigmak94 / GalaxyQuest**: For the standalone mobile/ARM port architecture, memory reservation shims, and the little-endian asset cooker toolchain.
- **Petari Decompilation Project**: For the reverse-engineering and C++ decompilation research.
- **LukeValen**: Special thanks for helping sort out ARM Mali GPU rendering issues and shader pipeline compatibility.
We express our deepest thanks to our contributors and the community for keeping game preservation alive.
---
## Key Features
### Zero-Stutter Native Vulkan 1.0 Architecture (Primary & Recommended)
- **Asynchronous Pipelined Presentation**: Dedicated swapchain presentation command buffer (`mPresentCommandBuffer`) decoupled from offscreen rendering via GPU semaphore (`mRenderToPresentSem`), completely eliminating synchronous CPU fence stalls.
- **Non-Blocking Texture Streaming**: In-command texture upload recording with deferred staging buffer deletion, eliminating `vkQueueWaitIdle` stalls during galaxy transitions.
- **Phase-Locked VI Retrace Clocking**: Wii engine Video Interface tick synchronized directly to physical Android screen presentation flips (`port_vi_retrace()`), eliminating clock drift judder.
- **Zero-Syscall Persistent Memory Mapping**: Dynamic vertex, index, row, and uniform buffers persistently mapped upon allocation, replacing per-frame kernel `mmap`/`munmap` calls with direct `memcpy()`.
- **TBDR Tile Memory Optimization**: EFB depth attachments configured with `VK_ATTACHMENT_STORE_OP_DONT_CARE`, discarding depth on-chip in GMEM/SRAM to eliminate DRAM memory bus saturation.
- **CPU big.LITTLE Performance Core Pinning**: Render and game threads locked to high-performance cores (Cores 4-7) via `sched_setaffinity()`.
- **First-Boot Shader Precompilation**: Common TEV combinations pre-compiled into binary SPIR-V during initial engine initialization (`vk_shaders.bin`) and Vulkan driver pipeline cache serialized on pause/exit (`vk_pipeline_cache.bin`).
- **Native Vulkan 1.0 UI Overlay**: Completely native Vulkan pipeline (`mUiPipeline`) rendering touch controls, vector joystick lines, and Material 3 drawer widgets directly into the swapchain render pass.
### Real-Time Hardware Performance Telemetry HUD
- Monoscopic render submission and frame-time telemetry powered by `port_perf_render`.
- Live on-s