Я разрабатываю игру с использованием рамки libgdx. Как я могу достичь действия scene2d в объекте шрифта растрового изображения? так что я могу написать какой-то текст, такой как оценка, сообщение и запустить действие, как актер сцены2d.Как использовать растровый шрифт в качестве сцены 2-го актера?
-1
A
ответ
0
вы можете расширить класс актера, чтобы достичь того же.
как: -
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.Batch;
import com.badlogic.gdx.graphics.g2d.BitmapFontCache;
import com.badlogic.gdx.graphics.g2d.GlyphLayout;
import com.badlogic.gdx.math.Matrix4;
import com.badlogic.gdx.scenes.scene2d.Actor;
public class FontActor extends Actor
{
private Matrix4 matrix = new Matrix4();
private BitmapFontCache bitmapFontCache;
private GlyphLayout glplayout;
public FontActor(float posX, float posY, String fontText)
{
BitmapFont fnt=new BitmapFont(Gdx.files.internal("time_newexport.fnt"),
Gdx.files.internal("time_ne-export.png"),false);
bitmapFontCache = new BitmapFontCache(fnt);
glplayout=bitmapFontCache.setText(fontText, 0, 0);
setPosition(posX, posY);
setOrigin(glplayout.width/2, -glplayout.height/2);
}
@Override
public void draw(Batch batch, float alpha)
{
Color color = getColor();
bitmapFontCache.setColor(color.r, color.g, color.b, color.a*alpha);
matrix.idt();
matrix.translate(getX(), getY(), 0);
matrix.rotate(0, 0, 1, getRotation());
matrix.scale(getScaleX(), getScaleY(), 1);
matrix.translate(-getOriginX(), -getOriginY(), 0);
batch.setTransformMatrix(matrix);
bitmapFontCache.draw(batch);
}
public void setAlpha(int a)
{
Color color = getColor();
setColor(color.r, color.g, color.b, a);
}
public void setText(String newFontText)
{
glplayout = bitmapFontCache.setText(newFontText, 0, 0);
setOrigin(glplayout.width/2, -glplayout.height/2);
}
}
и вы можете использовать его как.
Actor actor=new FontActor(20,30,"test");
stage.addActor(actor);
actor.addAction(Actions.moveTo(10,10,1));
3
Посмотрите на Label класса, в частности, конструктор, который принимает CharSequence и LabelStyle. Когда вы инициализируете свой LabelStyle, вы можете предоставить BitmapFont.
Обратите внимание, что если вы хотите повернуть или повернуть этикетку, вам необходимо обернуть ее в Container или добавить ее в Table с включенным setTransform(). (Это сбрасывает SpriteBatch, поэтому используйте его с умом.)
Смежные вопросы
- 1. Как использовать растровый шрифт в текстовой сетке?
- 2. Как сохранить актера внутри сцены в libgdx?
- 3. Растровый шрифт не работает
- 4. Как преобразовать растровый шрифт (.FON) в шрифт truetype (.TTF)?
- 5. как использовать растровый шрифт, который имеет 2 png-файла libGDX?
- 6. Создать растровый шрифт, используя C#
- 7. Как настроить шрифт консоли на Растровый шрифт, программно?
- 8. OpenGL цветной растровый шрифт с белым контуром
- 9. Растровый шрифт перевернутый при использовании AssetManager
- 10. Получение координат сцены Актера в таблице в libGDX
- 11. Использование спрея клиента (SendReceive) в качестве актера
- 12. Использовать случай setValues растровый
- 13. LIBGDX MoveToAction.setPosition() в отрицательные координаты для перемещения актера вне сцены
- 14. Akka-Http: Как использовать актера в запросе?
- 15. Пример директора, сцены, группы, актера, Box2D и GestureDector LibGdx
- 16. Libgdx aligning Растровый шрифт в верхнем правом углу экрана
- 17. использовать * .bmf bitmap шрифт на LWUIt?
- 18. Как использовать pixi.js без сцены?
- 19. Как сделать загруженный шрифт в качестве фона?
- 20. Использовать SVM предсказать растровый файл в R
- 21. Как использовать этот шрифт?
- 22. Как использовать шрифт в уведомлении?
- 23. Как использовать шрифт bm?
- 24. Возможно ли использовать шрифт в качестве фонового изображения div?
- 25. Как использовать шрифт Google
- 26. Как использовать шрифт Calibri?
- 27. Можете ли вы использовать шрифт в качестве параметра?
- 28. Scen2D.UI растровый шрифт не может найти область атласа
- 29. Android использовать шрифт-удивительный шрифт как значок в пункте меню
- 30. андроид - растровый в качестве фона в элемент в ListView
спасибо @amitkumar –