我的iPhone游戏中OpenAL
出现性能问题。我的游戏以60fps顺利运行但是当我初始化OpenAL时,游戏开始变得混乱。这是我的初始化代码:
ALCdevice* device = alcOpenDevice(NULL);
ALCcontext *context;
if(device) {
context = alcCreateContext(device, NULL);
alcMakeContextCurrent(context);
}
我不会创建任何OpenAL
来源,也不会加载/播放任何声音。抖动(游戏一直抖动)是由OpenAL
的初始化引起的。
XCode乐器说游戏以稳定的60fps运行,但它显然是抖动的(当我没有运行游戏上方的代码时,运行顺利)。
在带有iOS 3.1.3的旧iPod Touch 2G上也不会发生这种情况。在我使用iOS 4的所有其他设备上发生抖动,这也很疯狂。
我还尝试将OpenAL
内容放在一个单独的线程中,但它没有帮助。
有人注意到了类似的行为吗?
答案 0 :(得分:0)
在设置上下文后尝试调用alcGetError()
以确保成功。
这是在模拟器上还是在实际的手机上失败了?
您发布的代码后,您是否正在执行任何声音操作?在alcOpenDevice
失败的情况下,您发布的代码中没有上下文,但您也没有返回。