Skip to content

A simple game built with raylib, supporting the Dreamcast (KallistiOS)

License

Notifications You must be signed in to change notification settings

SupremeCommanderTwo/OrbitalRun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orbital Run

An arcade dodger built with raylib. Dodge procedurally spawned meteors while streaking through a parallax starfield. Keyboard and gamepad inputs are supported on desktop, with controller mappings mirroring the Dreamcast pad.

Prerequisites

Desktop (Linux/macOS/Windows)

  • C++20 compiler (GCC 10+, Clang 12+, MSVC 2019+)
  • CMake 3.16+
  • raylib 4.0+ installed on the host system (package manager build or local install)

Dreamcast (KallistiOS)

  • Working KOS toolchain with kos-ports installed (commonly under /opt/toolchains/dc/ when using the default layout)
  • raylib4dc built via kos-ports (expected at $KOS_PORTS/raylib4dc/inst)
  • environ.sh provided by KOS must be sourced before configuring the Dreamcast build

Building

Desktop Build

cmake -S . -B build/native
cmake --build build/native

This produces the desktop executable at build/native/orbital_run (or .exe on Windows). Run it directly. See BUILDING.md for additional details (including compile_commands.json).

Dreamcast Build

source "$KALLISTIOS_HOME/kos/environ.sh"   # replace with your toolchain location
cmake -S . -B build/dc -DCMAKE_TOOLCHAIN_FILE=${KOS_CMAKE_TOOLCHAIN}
cmake --build build/dc

The Dreamcast build targets the ELF output build/dc/orbital_run.elf. Use the usual KOS utilities to convert/package if you need a binary or disc image, for example:

kos-elf2bin build/dc/orbital_run.elf

Configuration Notes

  • You can point CMake at a custom raylib location with -DRAYLIB_ROOT=/path/to/prefix.
  • ENABLE_LTO=ON toggles link-time optimization for supported compilers (off by default).
  • Dreamcast builds automatically link against the KOS OpenGL shim (libGL). If your toolchain is installed in a non-default path, ensure KOS_PORTS is exported when configuring.
  • All sound effects are synthesised at runtime—no external assets required. Desktop builds route audio through raylib; Dreamcast builds use KallistiOS' snd_sfx backend.

Controls

  • Desktop: Arrow keys or WASD to steer, Space/Enter to start, hold Space or either Ctrl key to fire, hold either Shift key to boost.
  • Dreamcast pad: Analog stick to steer, A or Start to launch/retry, hold A to fire, hold the right trigger to boost.
  • Toggle runtime stats (FPS, CPU budget, memory) with F3 on desktop or the left trigger on the Dreamcast pad.
  • The boost gauge drains rapidly while held and refills slowly when idle—watch the top-left bar.
  • The Gun bar works like the boost meter: firing drains it, and it only reloads once you release the trigger.
  • Navigate menus with Up/Down and confirm with Space/Enter/A; Esc or the B button backs out.
  • Press P (desktop) or Start (pad) in-game to open the pause menu (Restart or Quit to title).
  • The Options screen lets you switch ship colors and toggle the debug overlay; back out with Esc/B/Start.

License

This project uses raylib under the zlib/libpng license. Source code for Orbital Run is released under the MIT License (see LICENSE).

About

A simple game built with raylib, supporting the Dreamcast (KallistiOS)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published