在三星Galaxy y上加载纹理(s5360)

时间:2012-08-17 08:56:08

标签: android libgdx

我对samsung s5360和使用textureatlas有问题。

我的项目正在使用libgdx框架,我通过textureatlas加载纹理:

atlas = new TextureAtlas( Gdx.files.internal( "res-atlases/pages-info" ) );

当我在htc mytouch,htc one v和huawei中运行时,一切正常。但是当我在samsung s5360中运行时,我收到一个错误:

E/(2288): RTOS COMMON MEM zero linear buffer allocated 5603328 0 205

E/(2288): BIG MEM OUT OF HANDLES

08-17 15:02:36.867: E/AndroidRuntime(2288): java.lang.RuntimeException: OpenGL error code while loading texture: 1285 - textureFileHandle

08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.p666.services.AtlasManager.newTextureAtlas(AtlasManager.java:50)

08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.p666.screens.AbstractScreen.<init>(AbstractScreen.java:100)

08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.p666.gamelogic.GameControl.create(GameControl.java:135)
08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:292)
08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.badlogic.gdx.backends.android.surfaceview.GLSurfaceViewCupcake$GLThread.guardedRun(GLSurfaceViewCupcake.java:708)

08-17 15:02:36.867: E/AndroidRuntime(2288):     at com.badlogic.gdx.backends.android.surfaceview.GLSurfaceViewCupcake$GLThread.run(GLSurfaceViewCupcake.java:646)

纹理&amp;字体以白色显示。 我该如何解决?谢谢:))

1 个答案:

答案 0 :(得分:3)

此:

  

加载纹理时的OpenGL错误代码:1285

表示你run out of OpenGL video memory

您要加载的文件的大小,文件格式和图像格式(RGB8888?)是多少?你在这之前加载了多少纹理?

您可能会发现Displaying Bitmaps Efficiently上的Android文档很有用。

对于libGDX,您还可以在旧手机/小手机上使用不同(较小)的纹理格式。将ResolutionFileResolverAssetManager一起使用(请参阅AssetManager in LibGDX)。