我正在用AndEngine创建一个简单的游戏.一个球落在地板上,每当它与地板碰撞时,我想发挥短暂的碰撞声.在方法onUpdate()中,我检查碰撞并相应地播放声音.
我使用类Sound来播放声音(如在AndEngine的SoundExample中).在三星galaxy S2上测试.
问题是当播放声音时程序会滞后.它甚至会影响游戏物理(有时候球的反d高于禁用声音时的最高点).
这是代码:
public voID onUpdate(float pSecondsElapsed) {// mSound.play(); if (this.mSprite.collIDesWith(ball.getSprite())) { if (!collIDing && mSound != null){ // play sound for first collision only mSound.play(); collIDing = true; }}else{ collIDing = false;}
}
如果我删除mSound.play()或继续播放声音(删除第2行的评论),程序将顺利运行.
有没有人遇到同样的问题?并有一个摆脱滞后的解决方案?非常感谢!
解决方法:
正如你提到的那样,当你继续播放声音时它会顺利运行..那么问题不在于声音
collIDesWith()方法可能是你的罪魁祸首,请记住onUpdate每帧被调用..也许你将不得不重新设计你的代码或限制每秒的帧数[改变引擎选项以使用FixedStepEngine来实现这一点]
总结以上是内存溢出为你收集整理的android – AndEngine – 播放声音时滞后全部内容,希望文章能够帮你解决android – AndEngine – 播放声音时滞后所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)