Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将画布转换为OpenGL Android游戏_Java_Android_Opengl Es - Fatal编程技术网

Java 将画布转换为OpenGL Android游戏

Java 将画布转换为OpenGL Android游戏,java,android,opengl-es,Java,Android,Opengl Es,我6个月前开始了我的第一场比赛,一切都很好。现在我已经开始在游戏中添加很多细节,但有些问题 问题。 1.具有高分辨率屏幕的旧设备(Android 2.3)内存不足。虚拟机内存在这些服务器上很小。新设备没有这个问题 在超高分辨率设备上会出现一点不好的延迟 绘制大型位图的速度很慢 目前我有: canvas.drawBitmap(mBitmap, Pos.x, Pos.y, null); 有没有一种简单的方法将其转换为OpenGL,因为我现在有数百个使用上述方法的位图 即 有谁能推荐一些东西吗,我对

我6个月前开始了我的第一场比赛,一切都很好。现在我已经开始在游戏中添加很多细节,但有些问题

问题。 1.具有高分辨率屏幕的旧设备(Android 2.3)内存不足。虚拟机内存在这些服务器上很小。新设备没有这个问题

  • 在超高分辨率设备上会出现一点不好的延迟

  • 绘制大型位图的速度很慢

  • 目前我有:

    canvas.drawBitmap(mBitmap, Pos.x, Pos.y, null);
    
    有没有一种简单的方法将其转换为OpenGL,因为我现在有数百个使用上述方法的位图


    有谁能推荐一些东西吗,我对OpenGL还是个新手。

    我在一个大型项目中工作,该项目需要支持低性能设备将近一个月。对于你的问题,我有几点建议:

  • 考虑是否使用jpg、png和bmp。根据我的经验,jpg可以提高旧设备的性能。然而,jpg有一个巨大的问题:它不支持透明图像。想想看

  • 通过使用png(如果您想使用它),尝试使用8位img。这会稍微降低图像的质量。我的意思是,你不容易识别它,但它确实提高了很多性能

  • 提示是,在启动应用程序之前,您可以重新加载并绘制所有图像。我没有机会看你的代码,但当我看的时候,我的应用程序从35 fps变为55-60 fps

  • 使用精灵而不是有标题的背景。此外,仅在绝对必要时使用标题

  • 干杯

    GLView.drawBitmap(mBitmap, Pos.x, Pos.y, null);