Java Libgdx assetmanager,加载时退出游戏。otf字体
我使用libgdx资产管理器来加载资产。仅加载图像和声音/音乐时听起来不错。但我在加载.otf字体时遇到了问题。当assetmanager正在进行时,游戏退出 代码如下: Java文件AssetManager.JavaJava Libgdx assetmanager,加载时退出游戏。otf字体,java,android,fonts,libgdx,Java,Android,Fonts,Libgdx,我使用libgdx资产管理器来加载资产。仅加载图像和声音/音乐时听起来不错。但我在加载.otf字体时遇到了问题。当assetmanager正在进行时,游戏退出 代码如下: Java文件AssetManager.Java assetManager = new AssetManager(); // set the loaders for the generator and the fonts themselves FileHandleResolver resolver = new Internal
assetManager = new AssetManager();
// set the loaders for the generator and the fonts themselves
FileHandleResolver resolver = new InternalFileHandleResolver();
assetManager.setLoader(FreeTypeFontGenerator.class, new FreeTypeFontGeneratorLoader(resolver));
assetManager.setLoader(BitmapFont.class, ".otf", new FreetypeFontLoader(resolver));
// load to fonts via the generator (implicitely done by the FreetypeFontLoader).
// Note: you MUST specify a FreetypeFontGenerator defining the ttf font file name and the size
// of the font to be generated. The names of the fonts are arbitrary and are not pointing
// to a file on disk!
FreetypeFontLoader.FreeTypeFontLoaderParameter freeTypeFontLoaderParameterScore = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
freeTypeFontLoaderParameterScore.fontFileName = Constants.FONT_DEFAULT;
freeTypeFontLoaderParameterScore.fontParameters.size = Constants.XLG_FONT_SIZE;
assetManager.load("defaultScore.otf", BitmapFont.class, freeTypeFontLoaderParameterScore);
FreetypeFontLoader.FreeTypeFontLoaderParameter freeTypeFontLoaderParameterScoreShadow = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
freeTypeFontLoaderParameterScoreShadow.fontFileName = Constants.FONT_DEFAULT;
freeTypeFontLoaderParameterScoreShadow.fontParameters.size = Constants.XLG_FONT_SIZE;
assetManager.load("defaultScoreShadow.otf", BitmapFont.class, freeTypeFontLoaderParameterScoreShadow);
FreetypeFontLoader.FreeTypeFontLoaderParameter freeTypeFontLoaderParameterElapsedTime = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
freeTypeFontLoaderParameterElapsedTime.fontFileName = Constants.FONT_DEFAULT;
freeTypeFontLoaderParameterElapsedTime.fontParameters.size = Constants.MD_FONT_SIZE;
assetManager.load("defaultElapsedTime.otf", BitmapFont.class, freeTypeFontLoaderParameterElapsedTime);
FreetypeFontLoader.FreeTypeFontLoaderParameter freeTypeFontLoaderParameterElapsedTimeShadow = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
freeTypeFontLoaderParameterElapsedTimeShadow.fontFileName = Constants.FONT_DEFAULT;
freeTypeFontLoaderParameterElapsedTimeShadow.fontParameters.size = Constants.MD_FONT_SIZE;
assetManager.load("defaultElapsedTimeShadow.otf", BitmapFont.class, freeTypeFontLoaderParameterElapsedTimeShadow);
Mygame.java
@Override
public void create () {
AssetsManager.getInstance().loadAssets();
setScreen(new SplashScreen());
}
@Override
public void dispose() {
super.dispose();
AssetsManager.getInstance().dispose();
AudioManager.dispose();
Gdx.app.log("STATUS", "DISPOSING");
}
@Override
public void render() {
super.render();
if (finishedLoadingSplash == false){
if (AssetsManager.getInstance().update()){
finishedLoadingSplash = true;
AudioManager.getInstance().init();
setScreen(new GameScreen());
}
}
}
在上面的代码中,assetmanager从.otf文件加载4 bitmapfont。
assetmanager正在进行时,游戏突然退出
但是如果我删除了一些代码,assetmanager只加载1或2个bitmapfont,或者如果我更改了字体(字体文件大小为136kb,我更改的字体小于40kb),游戏就很好,不会突然退出。我弄错了吗?谢谢logcat中有任何错误吗?我想没有。我只是在android监视器中看到“com.mygame.test.android(10481)[死亡]”,设备中没有“强制关闭”消息。你应该在崩溃日志中看到stacktrace。请使用logat而不使用任何特定参数。如果您使用基本的“adb logcat”命令跟踪logcat,您将看到堆栈跟踪。