java - Libgdx - 加载字体会减慢游戏速度

标签 java fonts libgdx

我正在使用 FreeTypeFontGenerator 加载我的字体。目前我有 6 种不同的 BitmapFont,我将它们加载到 Screen 类的构造函数中,并在渲染函数中绘制它们。 这是一个代码片段,myFont是我编写的一个类,它内部使用FreeTypeFontGenerator,并且loadFont函数返回一个BitmapFont对象。

public Screen1 () {
    .....
    .....

    myFont = new MyFont();

    circleFonts = new BitmapFont[4];
    for (int i=0; i<4; i++) {
        circleFonts[i] = myFont.loadFont("fonts/roboto/Roboto-Light.ttf", 20);
    }
    textOrColorFont = myFont.loadFont("fonts/roboto/Roboto-Light.ttf",15);
    currentColorFont = myFont.loadFont("fonts/roboto/Roboto-Light.ttf", 15);
}

问题是,由于我每次移动到 Screen1 时都必须加载这些字体,所以游戏会卡住 2-3 秒,因为它必须从文件加载字体。有更好的方法吗?

谢谢。

最佳答案

也许你想看看这个:

Libgdx FreeTypeFontGenerator with AssetManager

不仅用于字体,您还可以将其用于所有资源,无论是位图字体、音乐、图片还是任何支持 AssetManager 的其他资源。

AssetManager wiki -> https://github.com/libgdx/libgdx/wiki/Managing-your-assets

希望对您有所帮助。

关于java - Libgdx - 加载字体会减慢游戏速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29690185/

相关文章:

java - 尝试通过 MySQL 正确保存/加载数组

java - 如何通过反射将字段值设置为普通对象

windows - 在 emacs 中输入多调希腊语

java - libGDX:从多维数组类获取项目的特定索引

java - java 文本区域错误

java - Spring @value 未设置属性

android - 在 Android 中将 res/font 中的自定义字体与 WebView 结合使用

html - CSS增加网站上的所有字体

java - Libgdx:保存和加载

java - 每次在 libgdx 中单击按钮时,如何向前和向后移动 Sprite?