我在使用 monogame 2.5 时遇到了一些声音问题
我的应用程序正在加载一组 png 并在渲染期间显示它。加载和渲染非常好而且很快,但是声音“非常慢”,并且充满了“故障”。似乎主线程没有足够的时间来处理声音。
深入研究代码,我发现了这种方法:
public override bool BeforeDraw(GameTime gameTime)
{
// Update our OpenAL sound buffer pools
soundControllerInstance.Update();
if (IsPlayingVideo) return false;
return true;
}
所以,我认为这个方法必须被称为 1/33 s。
问题是我必须每 1/12 秒加载一个新图像,这个过程很耗时并且会停止主线程。
当然,我尝试使用后台工作者,但由于我需要一个Texture2D
实例,由于OpenGL
上下文,我必须在主线程中加载它。
我试图在后台工作人员中加载图像,并Texture2D
在主线程中创建,但这并没有解决问题。
哦,我的声音是mp3声音,但我用wav测试过,没有结果!!:(