libGDX后台绘制镜像文本
我在libGDX后台绘制镜像文本,libgdx,Libgdx,我在libGDX中使用Stage来绘制GUI,并在游戏的控件中添加监听器 但当我在ImageTextButton上绘制文本时,我会得到镜像文本,如下图所示 有人能帮我,告诉我如何画普通文字,而不是镜像文字吗 stage = new Stage(Constants.VIEWPORT_GUI_WIDTH, Constants.VIEWPORT_GUI_HEIGHT); stage.clear(); .... Image
libGDX
中使用Stage
来绘制GUI,并在游戏的控件中添加监听器
但当我在ImageTextButton上绘制文本时,我会得到镜像文本,如下图所示
有人能帮我,告诉我如何画普通文字,而不是镜像文字吗
stage = new Stage(Constants.VIEWPORT_GUI_WIDTH, Constants.VIEWPORT_GUI_HEIGHT);
stage.clear();
....
ImageTextButtonStyle imageTextButtonStyle = new ImageTextButtonStyle();
imageTextButtonStyle.font = Assets.instance.fonts.defaultSmall;
ImageTextButton imageTextButton = new ImageTextButton("ddsds", imageTextButtonStyle);
imageTextButton.setBackground( gameUISkin.getDrawable("fil_coins"));
imageTextButton.setPosition(50, 600);
imageTextButton.setHeight(85);
imageTextButton.setWidth(183);
stage.addActor(imageTextButton);
....
public void render (float deltaTime) {
stage.act(deltaTime);
stage.draw();
}
谢谢
编辑:
按钮图像显示正确,只有文本具有镜像视图正如@Springrbua在下面的评论中建议我的那样,我的位图字体在创建时被翻转
defaultSmall = new BitmapFont(Gdx.files.internal("images/font.fnt"), true);
应该是
defaultSmall = new BitmapFont(Gdx.files.internal("images/font.fnt"), false);
即使不是这样,它也可能对某些人有用-如果字体大小参数设置为负值,文本将呈现为倒置(Y比例)。我认为这应该与您的相机/SpriteBatch的投影矩阵有关。你能把代码贴在你设置摄像机和矩阵的地方吗?@Springrbua我想舞台上有自己的摄像机和精灵批是的,我知道。我只是觉得你可能会操纵他们。尝试:对于BitMapFont
boolean isFlipped()
“如果此BitMapFont已翻转用于y向下坐标系,则返回true。”感谢@Springrbua font已翻转用于y向下坐标系。我不能接受这个答案,我可以帮上忙(:我不认为这是解决方案XD谢谢!我的字体比例设置为负Y,即,whiteFont.setScale(.25f,-.25f);
。将其更改为正修复了它。