我正在使用Fmod库版本1.16.8
我正在为FMOD编写自己的C#包装器,因为我对它们的包装器不满意。翻译“低级示例”的一半,我遇到了一个我不理解的错误。
如果完全有帮助,此包装器将“ AdvancedDLSupport”类库用于本机库绑定。
FMOD_DSP_GetParameterData()
返回Result.Err_Invalid_Param
的有效用法。
包装函数的代码:
public IntPtr GetParameterData(int index, out uint length)
{
length = 0;
if ((uint)index >= (uint)ParameterCount)
{
throw new ArgumentOutOfRangeException(nameof(index));
}
library.DSP_GetParameterData(Handle, index, out IntPtr data, out length, IntPtr.Zero, 0).CheckResult();
return data;
}
index
保证为非零且小于参数计数,但仍返回Result.Err_Invalid_Param
。是的,index
指示的参数是一个数据参数,这就是为什么我不明白它给我的错误。