【发布时间】:2017-09-18 10:03:41
【问题描述】:
我正在尝试使用 libgdx 来渲染一些 fbx 模型,并且我成功地做到了,但我卡在了一个点上。
我在 ModelInstance 的帮助下渲染一个篮球 fbx 文件,现在我想在那个篮球上绘制一个文本。我可以在篮球上绘制文字,但它是线性的,看起来不是篮球的一部分。 我希望文本与那个球具有相同的曲线方式。
这就是我绘制文本的方式--
batch = new SpriteBatch();
batch.setProjectionMatrix(camera.combined);
FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("font/Lato-Bold.ttf"));
FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();
parameter.size = 30;
parameter.color = com.badlogic.gdx.graphics.Color.WHITE;
parameter.magFilter = Texture.TextureFilter.Linear; // used for resizing quality
parameter.minFilter = Texture.TextureFilter.Linear;
generator.scaleForPixelHeight(3);
BitmapFont aFont = generator.generateFont(parameter);
aFont.getRegion().getTexture().setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear);
aFont.draw(batch, options.get(i), aBound.getCenterX(), aBound.getCenterY() + textHeight / 2);
Where aBound --> 模型的BoundingBox(即BasketBall)
【问题讨论】:
-
您正在将文本绘制为同一矩阵上的单独实体。实现此目的的一种方法是在用于篮球等的纹理位图上绘制文本。它将呈球形。