Wie zeichnet man ein BitmapFont in LibGDX?

Ich wette ernsthaft, dass ich etwas Dummes getan habe und es einfach nicht zu bemerken scheint.

package com.me.mygdxgame;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.Texture.TextureFilter;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.TextureRegion;

public class Locked implements ApplicationListener
{
    private OrthographicCamera camera;
    private SpriteBatch batch;
    private Texture texture;
    private Sprite sprite;
    private BitmapFont font;
    private CharSequence str = "Hello World!";
    private float width;
    private float height;

    @Override
    public void create()
    {
        width = Gdx.graphics.getWidth();
        height = Gdx.graphics.getHeight();

        camera = new OrthographicCamera(1, height / width);
        batch = new SpriteBatch();

        texture = new Texture(Gdx.files.internal("data/libgdx.png"));
        texture.setFilter(TextureFilter.Linear, TextureFilter.Linear);

        TextureRegion region = new TextureRegion(texture, 0, 0, 512, 275);

        sprite = new Sprite(region);
        sprite.setSize(0.9f, 0.9f * sprite.getHeight() / sprite.getWidth());
        sprite.setOrigin(sprite.getWidth() / 2, sprite.getHeight() / 2);
        sprite.setPosition(-sprite.getWidth() / 2, -sprite.getHeight() / 2);

        font = new BitmapFont(Gdx.files.internal("data/digib.fnt"),
                Gdx.files.internal("data/digib.png"), false);
    }

    @Override
    public void dispose()
    {
        batch.dispose();
        texture.dispose();
    }

    @Override
    public void render()
    {
        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        batch.begin();
        font.setColor(0.0f, 0.0f, 0.0f, 1.0f);

        //sprite.draw(batch);
        font.draw(batch, str, width*0.5f, height*0.5f);
        batch.end();
    }

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

    @Override
    public void pause()
    {
    }

    @Override
    public void resume()
    {
    }
}

Das Projekt wurde mit dem von ihnen bereitgestellten Vorlagentool erstelltgdx-setup-ui.jar Wie Sie im Code sehen können, habe ich mich nicht darum gekümmert, die Standardcodes zu entfernen (nur ein paar einfache Zeichencodes zum Rendern des LibGDX-Logos).

Bei dem sauber erstellten Projekt bin ich diesem Leitfaden hier gefolgthttp://code.google.com/p/libgdx-users/wiki/addingText2D

und schließlich mit dem oben angegebenen Code ankommen.

Das Problem ist, warum wird der! @ # $ Ing-Text nicht angezeigt !? Ich habe die Position so oft gewechselt und immer noch kein Glück: \ Habe ich etwas verpasst?

Zu Ihrer Information:

 Die Schriften sind in Ordnung, ich habe sie in ein anderes Spiel verschoben und es funktioniert.Versuchen Sie, die Projektionsmatrix wie folgt zu ändern:

Antworten auf die Frage(6)

Ihre Antwort auf die Frage