切换场景后,java和Engine精灵不再可见
我又一次遇到了一个问题,我认为我已经尝试了所有的方法,但没有任何效果,所以我想问你一些想法:)
在这里:
在我的AndEngine游戏中,我切换场景。首先我有我的游戏场景,其中我的精灵正在走动,然后我分离精灵并切换到另一个场景[使用^{
我将精灵从另一个场景中分离,切换回来[再次使用mEngine.setScene(gameScene)
],过了一段时间(涉及到时间句柄),精灵再次连接到该游戏场景但它不可见强>
以下是我能想到的一些事情,为什么会失败。。。但到目前为止,一切都很顺利:
- 精灵已附加到正确的场景
- 正确的位置(与他第一次来的位置相同)
- 校正精灵的大小(32x32像素)
setVisible(true);
(不管有没有,都不起作用)- zIndex(设置为它之前的版本或设置为更高的版本…)李>
- Alpha值与
setAlpha(1f);
类似,用于完全可见性 - 精灵有自己的纹理层(1024x1024)<;-我知道,它是巨大的——但它以前起过作用:)
- 我甚至尝试重新加载纹理(^{
)
到目前为止没有任何效果-我仔细检查了每个设置(通过记录、设置并再次记录…)
现在我完全迷路了。问题是,到目前为止一切正常。精灵在移动,我在切换场景时没有问题。。。我甚至第二次切换到另一个场景,精灵又出现了。。。但不是在游戏场景中,甚至不是一个黑色的正方形或什么的,什么都没有
哦,我可以在精灵移动时跟踪他。随着摄像机跟随着精灵我看到他在做他应该做的事情-他只是隐形的
还有什么想法吗?我错过了什么?你们有没有经历过类似的事情? 无论如何,谢谢你花时间阅读这篇文章
致意
克里斯托夫
# 1 楼答案
在创建引擎之前,请尝试调用
engineOptions.getRenderOptions().disableExtensionVertexBufferObjects();
。我遇到了类似的问题,结果证明,这个选项迫使RAM和GPU保持同步,这在某种程度上(我还没有学习OpenGL的原理)阻止了精灵的消失