【问题标题】:(Libgdx) BitmapFont color and Opengl 2(Libgdx) BitmapFont 颜色和 Opengl 2
【发布时间】:2015-02-03 07:49:35
【问题描述】:

我注意到当我使用 opengl 2 时,位图字体颜色不起作用 它总是显示我的字体黑色。 如何解决?

代码:

在create()中

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);

输出是黑色的测试。

【问题讨论】:

    标签: android opengl-es-2.0 libgdx


    【解决方案1】:

    将 png 文件中的字体设为白色。字体颜色被绘制在原始颜色之上。黑底白字还是黑底白字。

    【讨论】:

    • 它已经是白色的了,它可以使用 opengl 1 但不能使用 opengl 2,并且由于某些库,我必须在我的程序中使用 opengl 2
    【解决方案2】:

    我的解决方案是停止使用setColor(Color.WHITE),而是使用setColor(1.0f,1.0f,1.0f,1.0f)。我还发现batch.setColor(1.0f,1.0f,1.0f,1.0f) 的效果同样好。

    【讨论】:

      【解决方案3】:

      问题不是来自 png 文件的文本颜色已经是白色,而是背景颜色是黑色。我把它变成透明的,它起作用了。 顺便说一句,感谢 Lestat 让我找到了解决这个问题的方法。

      【讨论】:

        【解决方案4】:

        如果您正在阅读本文,那么您可能遇到了与我刚刚遇到并到达此页面类似的症状的问题:

        问题: 标签文本不会显示在黑色背景上,或者默认为黑色,并且您无法更改颜色。

        我找到的解决方案: 确保以 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);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-06-04
          • 1970-01-01
          • 1970-01-01
          • 2012-01-20
          相关资源
          最近更新 更多