🎶 GML bindings to the FMOD Studio low-level API for GM:S and GMS2. Can be used in Windows, macOS, and Linux games.
C C++ Game Maker Language Shell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
img uploaded fmodgms2.png May 3, 2017
src changes in config Aug 18, 2018
.gitattributes Update .gitattributes Feb 13, 2018
.gitignore updated README and gitignore Jul 24, 2018
LICENSE updated date on license Feb 3, 2017
README.md Update README.md Aug 4, 2018

README.md

FMODGMS

A GameMaker: Studio and GameMaker Studio 2 extension that provides GML bindings to the FMOD Studio low-level API. Can be used in Windows, macOS, and Linux games.


Status

Latest - 0.10.0

  • Platform coverage:
Windows macOS Ubuntu
GM:S 1.4 VM ✔️ ⚠️1 ✔️
GM:S 1.4 YYC ✔️ 🚧 ✔️
GMS 2.1 VM ✔️ ⚠️1 ✔️
GMS 2.1 YYC ✔️ ✔️ ✔️

1. Works with "Create Executable" only, not "Run" or "Debug"

  • FMOD Studio API: 1.10.07
  • GMS 2 Runtime: v.2.1.5.246
  • GM:S Runtime: v.1.4.1804

Stable - 0.9.1

  • Platform coverage:
Windows macOS Ubuntu
GM:S 1.4 VM ✔️ ❌ ✔️
GM:S 1.4 YYC ✔️ ❌ ✔️
GMS 2.1 VM ✔️ ❌ ✔️
GMS 2.1 YYC ✔️ ❌ ✔️
  • FMOD Studio API: 1.10.07
  • GMS 2 Runtime: v.2.1.4.218
  • GM:S Runtime: v.1.4.1804

Features

  • Load and play a wide variety of audio formats not natively supported by GameMaker:Studio (e.g. MP3, MIDI, MOD, S3M, XM, IT, etc.).
  • Play MIDI files using DLS1 sound banks.
  • Add custom loop points to sounds. This allows, for example, a music track to have an intro section that can seamlessly transition into an infinitely looping main section without having to break them up into two separate files.
  • Dynamically change to volume, playback frequency and relative pitch of a sound.
  • Analyze an audio stream using Fast Fourier Transform (FFT) and obtain its spectrum data.
  • Support for DSP effects such as flange, reverb and filters.
  • Extract tag information from audio files (e.g. ID3 tags from MP3s and Vorbis tags from OGGs).
  • Supports various audio output modes (e.g. ASIO, WASAPI, ALSA).

What's inside

  • FMODGMS_x64.gmez - FMODGMS GameMaker: Studio extension for GMS 2.
  • FMODGMS_x86.gmez - FMODGMS GameMaker: Studio extension for GM:S 1.4. Contains a 32-bit build of the Linux library for compatibility.
  • FMODGMS_Demo_win.zip - FMODGMS player demo for Windows
  • FMODGMS_Demo_linux.tar.gz - FMODGMS player demo for Linux
  • FMODGMS_Starter.yyz - A minimal FMODGMS project for GMS 2.
  • FMODGMS_Starter.gmz - A minimal FMODGMS project for GM:S 1.4.
  • src - library, player demo, and unpackage starter project source code
    • gms/FMODGMS Test.gmx - GM:S 1.4 project for player demo
    • gms/FMODGMS Starter.gmx - GM:S 1.4 starter project
    • gms2/FMODGMS Test - GMS 2 project for player demo
    • gms2/FMODGMS Starter - GMS 2 starter project
    • linux - FMODGMS source for Linux
    • xcode - Xcode project for macOS. Shares code with Linux.
    • vc/FMODGMS - FMODGMS source for Windows as a Visual Studio project

Possible Features in the Future

  • More options for FFT and spectrum data functionality.
  • Android support.

For a list of changes and development history, click here.

Contributors