#Unitune - A WebGL-compatible tracker music player - Huge soundtrack, tiny build size!

1 messages · Page 1 of 1 (latest)

amber radish
#

Unitune

A WebGL-compatible easy-to-use tracker music player.
Huge soundtrack, tiny build size!

Store page


When working on a retro WebGL game for a client, I realized that the majority of the build size was due to the music files.
While we were using tracker music, as Unity natively supports the most common formats, they are converted to AAC when targeting WebGL.

**This translated to a 1000% increase in our expected build size. **😱

It motivated me to develop a solution: Unitune, a tracker player that converts module files to AudioClips at runtime.
Thanks to its generative nature, it will give you more control over your music at runtime while keeping your build size as tiny as possible.

Key Features

  • **Optimize the build size **of your music files thanks to the module format.
  • Over 50 tracker music formats are supported.
  • Custom importer with** audio preview.**
  • One** simple-to-use** component.
  • Finetune the audio output with many settings.
  • Add support to subsongs, allowing incredible build size optimization.
  • Rely on Unity's AudioSource component to ensure a consistent workflow.

Compatibility

  • **Unity 2022.1 **and upward.
  • Compatible out of the box with** WebGL, Windows and Linux.**
  • MacOS compatibility is untested but should work via the Linux plugin as well.
  • Other platforms can be supported by building Libopenmpt.

Store page

📖 Documentation

🏠 Website / Demo

💬 Unity discussion


Thank you for considering Unitune and have a nice day!

scarlet pelican
#

Love this! Out of curiosity, does it allow for any control? I.e. turning on and off channels or changing sequence ordering?

#

Even without that, it's nice to see. Great work.

amber radish
#

Thank you @scarlet pelican !
It's possible through the use of low-level API. It's a bit more complicated than just using the UnituneSource component though.
But there is a sample included in the package about it and a documentation page with some examples: https://unitune.moartis.dev/documentation/use-the-low-level-api/

A tracker music player for Unity compatible with WebGL.
Many music, tiny build size!

#

If the demand is strong enough, I might add pattern channel controls directly in the UnituneSource component in the future.

scarlet pelican
#

That is very cool indeed.

azure locust
amber radish
#

@azure locust It depends on your module files. If you tracker music artist can fits the entire soundtrack using the same shared samples, it will be a huge optimization. Especially if the format allows compressed samples (I.E. mo3).