FMOD Audio Engine Implementation

Posted: 17 Dec 2020 17:56
by LMo

I’m just a beginner, and so excited about Naninovel as it seems to be the best option out there for realizing my crazy dreams to be a solo indie developer. I am a composer and sound designer by trade in the game industry, and have no coding chops whatsoever, but have lots of stories to tell!

The wall that I am hitting everywhere with any no-code engine out there is that none of them work with FMOD. Given that I’m an audio guy who uses audio middleware like FMOD Studio on a daily basis for creating high quality and complex audio behaviors in games, I can’t imagine making my own game without it! As most people in the audio game dev world out there know, audio middleware is an absolute necessity to implementing AAA-level audio in a game. The localization features alone in FMOD would be worth it for use in Naninovel, not to mention extremely dynamic music and parameter-based interactivity with audio.

How possible would it be to create some Naninovel extensions that would allow me to do the following without code within your engine:
• streamline the implementation of an FMOD Studio build into Unity and Naninovel. (To clarify, I’m not talking about FMOD’s low-level API, FMOD Core)
• load and unload banks
• reference all my events and hierarchies
• play any FMOD event in my banks
• control local parameters in live FMOD events as well as global FMOD parameters.
• receive callbacks from FMOD and use them in Naninovel to trigger things like expression changes, scene or background transitions.
• (this one would be a huge bonus!): lip-syncing to Live2D models, using only the audio from a single dedicated VO mixer channel in FMOD.

What this could bring to the experience of playing a VN made with Naninovel:
• Automatic Music ducking with VO and sound effects. The mix would feel more cinematic and natural as a movie, as if someone was actively listening to the mix and controlling volume faders on different audio channels. The result is not only clarity but a sheen of polish that, when done correctly, the player doesn’t consciously notice, though they feel the quality.
• Dynamic music that evolves naturally to the player’s choices. Traditionally, music changes involving a simple fade out/in often work fine in a VN. But if you were trying to create a more cinematic experience, you’d want to do what other games do with dynamic music: transition to the next segment of the music while keeping the beat or cohesiveness. Transition to the happy part, or to the somber part, without feeling like one track ended and another one starts. It would feel like the music was one single evolving track, where the music understood the decision you just made, or perfectly mirrored a character’s change of heart or mood, mid-song!
• The ability to correctly and easily juggle recorded VO of different localizations. In FMOD, changing the language is as simple as unloading and loading a bank. All the references to the correct line of dialogue transfers to whatever “language bank” is loaded.
• High-efficiency asset management, making it all super cheap on CPU and RAM.
• It would introduce a AAA tool to the community, making Naninovel a true solution for audio pros to realize their dreams in a professional capacity! Doing this, Naninovel would natively raise the bar for audio implementation in visual novels (currently a pretty low bar). Visual novel is a medium of entertainment much more deserving of cinematic audio than it’s currently getting! I’m hoping to change that by making VNs that bring in audio practices used in high-budget AAA games.

Thanks for hearing me out! I know your time is limited and there may not be many who want this feature, so my expectations are in check here. This is lower on the priority list for pretty much all developers of no-code engines out there. Believe me, I’ve been trying to get this to happen elsewhere for more than 5 years! Let me know if any of this has piqued your curiosity—I’d be happy to talk your ear off about it more! 😄


Re: FMOD Audio Engine Implementation

Posted: 17 Dec 2020 18:38
by Elringus

Hi, Thank you for the suggestion and all the info! Unfortunately, I don't think we'll have the capability required to implement and maintain such integration in the foreseeable future. That said, I'm confident Naninovel is extensible enough to replace the built-in (Unity) audio solution with FMOD without modifying any of the source code. If you happen to find any difficulties with that, please let me know.