https://github.com/chadowo/gosu-mruby-wrapper
Wrapper around Gosu and MRuby to run Gosu games natively on desktop platforms
https://github.com/chadowo/gosu-mruby-wrapper
game-dev gamedev gamedev-tool gosu libgosu mruby ruby
Last synced: 6 months ago
JSON representation
Wrapper around Gosu and MRuby to run Gosu games natively on desktop platforms
- Host: GitHub
- URL: https://github.com/chadowo/gosu-mruby-wrapper
- Owner: Chadowo
- License: mit
- Created: 2023-11-03T15:54:55.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-14T14:22:51.000Z (over 1 year ago)
- Last Synced: 2025-07-06T12:06:37.772Z (8 months ago)
- Topics: game-dev, gamedev, gamedev-tool, gosu, libgosu, mruby, ruby
- Language: C
- Homepage:
- Size: 831 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Gosu MRuby Wrapper
  
Wrapper around [Gosu](https://www.libgosu.org/) and [MRuby](https://mruby.org/) (and the [mruby-gosu](https://github.com/cyberarm/mruby-gosu) mgem by Cyberarm)
to run Gosu games natively on desktop platforms.
**NOTE**: This project is really **experimental** and the person behind it (me) isn't
all that great in C, so don't expect that much. Having said that feel free
to try it out, and report any problems or things that should be nice to have.
## Features
- Targets major desktop platforms: Windows, MacOS-Intel (**experimental**, contributions appreciated!) and Linux.
**NOTE**: The Windows binary's MRuby is linked with the [UCRT](https://devblogs.microsoft.com/cppblog/introducing-the-universal-crt/) (Universal C Runtime),
the which is bundled by default only on Windows 10 and higher, for older systems
it eithers needs to be installed or provided with the executable.
- Lightweight. The Windows binary is smaller than 8MB!
- Exporting a game should be as easily as bundling the assets and nothing
more, there's no need for Ruby to be installed in the target systems.
## Limitations
- No 32 bit builds, Gosu does support it though, so it's possible.
- No gems, this means that if your game uses CRuby gems it **will not work**.
However you can use gems made in plain Ruby by bundling them with your source code,
similar to how Love2D libraries are used.
## Usage
Take a look at the [Getting Started](https://github.com/Chadowo/gosu-mruby-wrapper/wiki/Getting-Started) wiki page.
## Building
See instructions for [Windows](https://github.com/Chadowo/gosu-mruby-wrapper/wiki/Compiling-On-Windows), [MacOS](https://github.com/Chadowo/gosu-mruby-wrapper/wiki/Compiling-On-MacOS) and [Linux](https://github.com/Chadowo/gosu-mruby-wrapper/wiki/Compiling-On-Linux) on the wiki.
## License
This project is licensed under the [MIT license](https://github.com/Chadowo/gosu-mruby-wrapper/blob/main/LICENSE).
## Credits
This project was possible thanks to the following libraries.
- Gosu - [MIT license](https://github.com/gosu/gosu/blob/master/COPYING)
- MRuby - [MIT license](https://github.com/mruby/mruby/blob/master/LICENSE)
- Whereami - [MIT license](https://github.com/gpakosz/whereami/blob/master/LICENSE.MIT) and [WTFPLv2 license](https://github.com/gpakosz/whereami/blob/master/LICENSE.WTFPLv2)
- PhysFS - [zlib license](https://github.com/icculus/physfs/blob/main/LICENSE.txt)