LibGDX应用程序的低帧速率不执行任何操作

时间:2015-08-07 13:37:33

标签: android libgdx frame-rate

我对LibGDX很陌生,也没有多少Java经验,但是想学习。我已经做了一个简单的游戏,但我正在努力与FPS;我的Galaxy S5上的游戏达到了60 FPS,而我的Galaxy Tab S 10.5只有40 FPS。桌面应用程序在我的笔记本电脑上也只能运行40 FPS(带有Win7,Core i7,12GB RAM的Old-ish HP EliteBook)。我尝试从游戏中移除各种东西,但似乎没有什么能提高帧速率。

然后我创建了一个"空" LibGDX测试项目(使用Libgdx项目生成器),称为" test"。它没有其他功能,只是将fps计数器输出到Gdx.app.log,但仍然只能达到40 FPS(每次调用的增量时间约为25 ms)。

只是LibGDX本身对我的笔记本电脑和Galaxy Tab S来说太重了吗?或者我做错了什么?或者我的开发环境有问题吗?其中包括

  • Windows 7 Pro 64bit
  • Android Studio 1.2.2
  • JRE 1.8.0_45-b15 amd64
  • Android SDK工具24.3.3,平台工具22,构建工具22.0.1
  • LibGDX版本1.6.4

Libgdx项目生成器确实抱怨我有比建议的更新版本的Android构建工具和API,我还记得读过Android Studio不支持1.7以上的Java版本。那些可能导致性能问题吗?

在我的测试应用程序的代码下面(在我的笔记本电脑上运行40 FPS),它只有我写的2个课程:

TestGame

import com.badlogic.gdx.Game;

public class TestGame extends Game {

    @Override
    public void create () {
        setScreen(new GameScreen());
    }
}

GameScreen

import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Screen;

public class GameScreen implements Screen {

    public GameScreen() {}

    @Override
    public void show() {}

    @Override
    public void render(float delta) {
        Gdx.app.log("FPS", (1/delta) + "");
    }

    @Override
    public void resize(int width, int height) {}

    @Override
    public void pause() {}

    @Override
    public void resume() {}

    @Override
    public void hide() {}

    @Override
    public void dispose() {}
}

这是DesktopLauncher:

import com.badlogic.gdx.backends.lwjgl.LwjglApplication;
import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration;
import [my package name].TestGame;

public class DesktopLauncher {
    public static void main (String[] arg) {
        LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
        new LwjglApplication(new TestGame(), config);
    }
}

0 个答案:

没有答案