Java 如何让我的LibGDX位图字体绘制?
我到处寻找这个问题,但找不到解决办法 这是我的渲染循环:Java 如何让我的LibGDX位图字体绘制?,java,libgdx,Java,Libgdx,我到处寻找这个问题,但找不到解决办法 这是我的渲染循环: Gdx.gl.glClearColor(0, 0, 0, 1); Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); batch.begin(); BitmapFont font = new BitmapFont(Gdx.files.internal("data/Media/font/myfont1.fnt"), false); font.setColor(new Color(1, 1, 1,
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
batch.begin();
BitmapFont font = new BitmapFont(Gdx.files.internal("data/Media/font/myfont1.fnt"), false);
font.setColor(new Color(1, 1, 1, 1));
font.draw(batch, "Hello", 100, 100);
batch.end();
我尝试了所有可能的颜色、位置和不同的程序来生成字体。
但结果总是一样的:黑屏!(当glClearColor为(1,1,1,1)时,白色屏幕…)有人能告诉我出了什么问题吗
提前谢谢
编辑:
我自己发现了问题。这是一个设置不好的照相机 似乎U没有将png文件与fnt文件一起加载
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);
请不要尝试在渲染方法中加载任何内容。
尝试在构造器中加载字体,否则u将以G.C调用结束,f.p.s最终将下拉似乎u没有将png文件与fnt文件一起加载
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);
请不要尝试在渲染方法中加载任何内容。
尝试在构造器中加载字体,否则u将以G.C调用结束,f.p.s最终将下降
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);
如果您只有少量字体图像,例如billy.fnt、billy_1.png、billy_2.png,您可以使用:
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), false);
如果您只有少量字体图像,例如billy.fnt、billy_1.png、billy_2.png,您可以使用:
font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), false);
使用libgdx网站提供的hiero创建.fnt文件 设置字体150的大小,它将创建一个.fnt文件和一个png文件 复制资产文件夹中的两个文件 现在声明字体
BitmapFont font;
创建方法中的nw
font = new BitmapFont(Gdx.files.internal("data/rayanfont.fnt"), false);
//rayanfont是一种字体名称,您可以为字体指定任何名称
渲染中
batch.begin();
font.setscale(.2f);
font.draw(batch, "hello", x,y);
batch.end();
这将顺利进行使用libgdx网站提供的hiero创建一个.fnt文件 设置字体150的大小,它将创建一个.fnt文件和一个png文件 复制资产文件夹中的两个文件 现在声明字体
BitmapFont font;
创建方法中的nw
font = new BitmapFont(Gdx.files.internal("data/rayanfont.fnt"), false);
//rayanfont是一种字体名称,您可以为字体指定任何名称
渲染中
batch.begin();
font.setscale(.2f);
font.draw(batch, "hello", x,y);
batch.end();
这将顺利进行您可以初始化新的位图字体,而无需在项目中使用.fnt
BitmapFont font = new BitmapFont();
然后渲染它:
batch.begin();
font.draw(batch, "Hello world", 200, 0);
batch.end();
不要忘记Y轴从底部开始 您可以初始化新的位图字体,而不必在项目中使用.fnt
BitmapFont font = new BitmapFont();
然后渲染它:
batch.begin();
font.draw(batch, "Hello world", 200, 0);
batch.end();
不要忘记Y轴从底部开始