squaretangle projects

FMODUnity .NET Plugin

SquareTangle FMOD plugin for Unity.

This .NET plugin allows FMOD to be used from within Unity. FMOD is a library and toolkit for the creation and playback of interactive audio, widely used in the games industry. Unity is a multiplatform game development tool. This plugin allows sound designers to use the FMOD Designer tool to create sophisticated interactive audio designs which will work in Unity. See the FMOD and Unity sites for full details.

We have released this plugin free and open source under the MIT license. You may use this plugin in your own projects free of charge in accordance with the MIT license, which allows anybody to use the software without restriction. See below or see the LICENSE.txt file for full details of the license. Please see the FMOD and Unity licenses separately for details on their usage in your projects. FMOD license details are here www.fmod.org/sales FMOD is free for non-commercial use.

FMODUnity is a .NET Assembly and will work with both Indie and Pro versions of Unity on Mac and Win desktops.

FMODUnity.dll has been tested with both the Indie and Pro versions of Unity 2.5 on both Mac and Windows. It will work on desktop projects but sorry, no Webplayer, IOS or Android. It works with the low level FMOD_Ex as well as the FMOD_Event systems. Currently supported FMOD versions are 4.24, 4.26 and 4.42.

Usage

Place FMODUnity.dll in your Assets/Plugins folder.

Place fmodex.dll, fmod_event.dll, libfmodex.dylib and libfmod_event.dylib in the root folder of your Unity project.

If you have downloaded the FMODUnity_Demo.zip example unity project look at the FMOD_Ex_Test.unity or FMOD_Event_Test.unity scenes. Example Unity C# scripts for both the Ex and Event system are in the Assets/FMOD folder. The examples are translations of the playsound and simple_event examples from the FMOD API.

Download

You can download the demo project containing the FMODUnity plugin:
  • FMODUnity_Demo for FMOD 4.24 (~8Mb)
  • FMODUnity_Demo for FMOD 4.26 (~8Mb)
Or you can download just the required libraries:
  • FMODUnity_DLL for FMOD 4.24(~1.4Mb)
  • FMODUnity_DLL for FMOD 4.26(~1.4Mb)
Or you can download just the source files. These are Visual Studio 2005 solutions, mainly because the Windows version of FMOD comes with a C# interface and also because it was easier to write the plugin so we can explicitly tell windows where to find the correct libraries and then let Mac Mono find the correct dylibs for Mac. See the "Library Names" section in this link: Interop_with_Native_Libraries for details on cross platform library interop. The Windows version of the FMOD Programmer's API is also the best place to look for details of how to access FMOD Ex and Event system using C#. Examples in the demo projects linked above illustrate how to convert the FMOD C# examples for use within Unity:
  • FMODUnity_Source_for FMOD 4.24(~0.5Mb)
  • FMODUnity_Source_for FMOD 4.26(~0.5Mb)

March 4 2012

FMOD 4.42 in Unity 3.42 update

Sorry, it's been a while since we updated these. We were waiting to see what functionality was incorporated into the UT implementation of FMOD, which also broke the original plugin ;-( There were some workarounds as in this thread http://www.fmod.org/forum/viewtopic.php?p=46744 and most things we used were in the UT implementation. But we still get requests for a full implementation of FMOD so we have recompiled the wrapper for anyone who is interested using FMOD 4.42. The source is for Visual Studio 2010. We have tested with Unity 3.42 on Mac and Windows. It should work for Pro and Indie but we have only tested on Unity Pro. Here is a Demo Unity project, the plugin source for VS2010 and a build so you can see where the files need to go for a demo build. I've also included the C Sharp examples from the windows install of FMOD 4.42 as they aren't included in the Mac distribution. Hope no-one minds. The plugin uses the FMOD libs so sorry, NO webplayer, IOS or Android with this version, desktop only. There are others working on an IOS version, check the Unity forums.

  • FMODUnity_Source_for FMOD 4.42(~0.2Mb)
  • FMODUnity_Demo for FMOD 4.42 Unity 3.42(~10Mb)
  • FMODUnity_Build for FMOD 4.42 Unity 3.42 (~21Mb)
  • C_Sharp examples from FMOD 4.42 (~0.1Mb)

A few people have requested the FMOD Designer project file so they can see how the published .fsv files relate to the .fdp files. So here is a version of the Unity Demo with the Example.fdp and .fsv from FMOD 4.42. I don't have the project file that goes with the above demo and the latest sound bank is much larger. But if you need it here is the Demo with FMOD example.fdp.

  • FMODUnity_Demo for FMOD 4.42 Unity 3.42_WithFDP(~47Mb)
We hope you find this plugin useful and enjoyable. Adam Square, Johnny Tangle.

License

The MIT License.

FMODUnity. Copyright (c) 2009 SquareTangle.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.