resize/scale andengine中的动态文本
resize/scale text dynamically in andengine
我创建了一个简单的游戏,将对象从一个地方移动到另一个地方,每次移动都会增加分数中的移动次数 table。在正确移动所有对象后,我想将不透明度设置为屏幕并慢慢地将分数从初始大小(例如 15 像素)调整为整个屏幕(例如 50 像素)。我这样加载字体:
FontFactory.setAssetBasePath("font/");
final ITexture mainFontTexture = new BitmapTextureAtlas(activity.getTextureManager(), 256, 256, TextureOptions.BILINEAR_PREMULTIPLYALPHA);
font = FontFactory.createStrokeFromAsset(activity.getFontManager(), mainFontTexture, activity.getAssets(), "font.ttf", 15, true, Color.WHITE, 2, Color.BLACK);
font.load();
在 createScene() 方法中,我创建了带文本的 HUD 和初始文本:
Int mMoves = 0;
HUD gameHUD = new HUD();
Text mText = new Text(25, 25, font, "Moves: " + "123456789", getVertexBufferObjectManager());
并且每个移动设置文本与实际移动计数:
mText.setText("Moves: " + mMoves++);
关卡完成后,我不知道如何调整此文本的大小。我的意思是 CSS3 中带有过渡的比例之类的东西。
感谢所有评论
您可以使用 setscale 函数设置文本的大小。
如果您只想设置大小,请使用以下命令:
示例:mText.setScale(1.5f);
您还可以使用实体修改器来创建动画:
ScaleModifier scale = new ScaleModifier(1f, 1f, 1.1f);
LoopEntityModifier loop = new LoopEntityModifier(scale);
mText.registerEntityModifier(loop);
这将产生一种动画效果,可以循环调整文本大小。
我创建了一个简单的游戏,将对象从一个地方移动到另一个地方,每次移动都会增加分数中的移动次数 table。在正确移动所有对象后,我想将不透明度设置为屏幕并慢慢地将分数从初始大小(例如 15 像素)调整为整个屏幕(例如 50 像素)。我这样加载字体:
FontFactory.setAssetBasePath("font/");
final ITexture mainFontTexture = new BitmapTextureAtlas(activity.getTextureManager(), 256, 256, TextureOptions.BILINEAR_PREMULTIPLYALPHA);
font = FontFactory.createStrokeFromAsset(activity.getFontManager(), mainFontTexture, activity.getAssets(), "font.ttf", 15, true, Color.WHITE, 2, Color.BLACK);
font.load();
在 createScene() 方法中,我创建了带文本的 HUD 和初始文本:
Int mMoves = 0;
HUD gameHUD = new HUD();
Text mText = new Text(25, 25, font, "Moves: " + "123456789", getVertexBufferObjectManager());
并且每个移动设置文本与实际移动计数:
mText.setText("Moves: " + mMoves++);
关卡完成后,我不知道如何调整此文本的大小。我的意思是 CSS3 中带有过渡的比例之类的东西。 感谢所有评论
您可以使用 setscale 函数设置文本的大小。
如果您只想设置大小,请使用以下命令:
示例:mText.setScale(1.5f);
您还可以使用实体修改器来创建动画:
ScaleModifier scale = new ScaleModifier(1f, 1f, 1.1f);
LoopEntityModifier loop = new LoopEntityModifier(scale);
mText.registerEntityModifier(loop);
这将产生一种动画效果,可以循环调整文本大小。