libgdx - bmfont自定义字体不是绘图?

时间:2015-05-04 23:33:37

标签: java android libgdx

你好,下面的代码试图将自定义字体作为标签绘制。每当我用调试模式绘制它时,我会得到一个绿色框,文本应该显示在哪里,但什么都没有出现。我从未使用过自定义字体,只使用过已安装在我电脑上的字体。但是,我确实有" .png"在我的资产文件夹中,所以我不明白为什么它不绘图。

堆栈跟踪中没有错误,下面的图片有助于描述问题。

public void show() { 


          stage = new Stage();
            float delta = Gdx.graphics.getDeltaTime();
           stage.setDebugAll(true); // Set outlines for Stage elements for easy debug

            BitmapFont white = new BitmapFont(Gdx.files.internal("hazey.fnt"), false);
            white.setScale(2);
            LabelStyle headingStyle = new LabelStyle(white, Color.BLACK);
            Label gameoverstring = new Label("game over", headingStyle);
            gameoverstring.setPosition(100, 100);
            stage.addActor(gameoverstring);






    }

    // Called every frame so try to put no object creation in it
    @Override
    public void render(float delta) { 

        Gdx.gl.glClearColor((float)96/255,(float)96/255,(float)96/255, 1f);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
        System.out.println("hey");


        stage.act(delta);

        stage.draw();



    }

http://imgur.com/C1NOUbK

2 个答案:

答案 0 :(得分:0)

或多或少地逐字使用您的代码,它似乎有效:http://i.imgur.com/V54okhA.png

您的字体可能已被破坏,请尝试:

BitmapFont white = new BitmapFont();

使用默认值并检查它是否有效。如果是,请确保您的字体包含所有必需的字形。也不要缩放字体,它们看起来很可怕。

答案 1 :(得分:0)

听起来它可能与this question

类似

你是如何运行你的项目的?如果它来自桌面上的IDE,您是否记得将当前工作目录设置为android / assets?

如果没有,那么它将找不到可能导致您看到的问题的字体文件。

将此作为答案发布的应用btw - 我没有足够的声誉将其作为评论发布。