2013-11-02 90 views
1

我注意到,当我使用opengl 2 bitmapfont颜色不起作用 它始终显示我的字体黑色。 如何解决这个问题?(Libgdx)BitmapFont颜色和Opengl 2

代码:

在创建()

BitmapFont font; 
font = new BitmapFont(Gdx.files.internal("font/arial.fnt"),Gdx.files.internal("font/arial_0.png"),false); 
font.setColor(Color.WHITE); 

在渲染()

font.draw(batch, "test", 10, 10); 

输出是测试在黑色。

回答

0

问题不是来自png文件的文本颜色,它已经是白色的,但背景颜色是黑色。我把它变成了透明的,它工作。 顺便说一句,感谢莱斯特让我解决这个问题。

1

使你的字体从png文件中变成白色。字体颜色被绘制在原始颜色的顶部。黑色的白色仍然是黑色的。

+0

它已经是白色的,它使用的是opengl 1,但与opengl 2不兼容,并且由于某些库,我必须在程序中使用opengl 2 – LeSam

0

如果你正在读这篇文章,那么你可能已经遇到了,我正好遇到和到达此页类似的症状的问题:

问题: 标签文本将不会在黑色背景上显示出来,或只是默认为黑色,并且不能更改颜色。

我找到的解决方案: 确保您导出字体为32位深度,白色为alpha。再试一次;等瞧:

//create font 
white = new BitmapFont(Gdx.files.internal("font/white.fnt"), false); 
//create label with associated style 
LabelStyle headingStyle = new LabelStyle(white, Color.WHITE); 
heading = new Label(MainActivity.TITLE, headingStyle); 
1

对我来说是停止使用setColor(Color.WHITE),而使用setColor(1.0f,1.0f,1.0f,1.0f)的解决方案。我也发现batch.setColor(1.0f,1.0f,1.0f,1.0f)工作得很好。