【问题标题】:Load texture on samsung galaxy y (s5360)在三星 Galaxy y (s5360) 上加载纹理
【发布时间】:2012-08-18 01:36:52
【问题描述】:

我在使用 samsung s5360 和使用 textureatlas 时遇到问题。

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

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

当我在 htc mytouch、htc one v 和 huawei 中运行它时,一切正常。但是当我在三星 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)

并且纹理和字体以白色显示。 我该如何解决?谢谢:)

【问题讨论】:

    标签: android libgdx


    【解决方案1】:

    这个:

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

    表示您拥有run out of OpenGL video memory

    您正在加载的文件的大小、文件格式和图像格式 (RGB8888?) 是什么。在此之前您还加载了多少其他纹理?

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-10-02
      • 1970-01-01
      • 1970-01-01
      • 2014-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多