首页 > 解决方案 > 从 C# 在 FMOD 中创建事件

问题描述

我正在尝试学习如何从 FMOD 工作室中看到的 C# 创建 FMOD 事件,以便与我一起从事业余项目的音频工程师可以在没有我帮助的情况下管理我的整个游戏的声音。有没有办法从 C# 做到这一点?我目前正在使用 FMOD 的官方包装器。

编辑:据我所知:

        FMOD.RESULT result7 = FMOD.Studio.System.create(out FMOD.Studio.System a);
        FMOD.RESULT result6 = a.initialize(1, INITFLAGS.NORMAL, FMOD.INITFLAGS.NORMAL, IntPtr.Zero);
        FMOD.RESULT result = a.loadBankFile(FileSystemManager.RootDirectory + "/Content/Banks/Master Bank.bank", FMOD.Studio.LOAD_BANK_FLAGS.NORMAL, out Bank testBank);
        FMOD.RESULT result5 = testBank.getEventList(out EventDescription[] someArray);
        FMOD.RESULT result4 = someArray[0].createInstance(out EventInstance instance);
        FMOD.RESULT result3 = instance.setVolume(1F);
        FMOD.RESULT result2 = instance.start();

但是,它不会播放我在 Studio 中附加到事件的声音。有任何想法吗?

如果您想查看我的项目,可以在这里查看

谢谢!

标签: c#interopfmod

解决方案


在我的 FMOD.Studio.System 实例上的每一帧调用 update() 为我解决了这个问题。


推荐阅读