libgdx actor-未绘制Alpha动作

纳米

我有一个带有fadeOut / fadeIn动作的图像。像这样:

public void fadeInAndOut() {
    AlphaAction actionFadeOut = new AlphaAction();
    actionFadeOut.setAlpha(0f);
    actionFadeOut.setDuration(2f);
    AlphaAction actionFadeIn = new AlphaAction();
    actionFadeIn.setAlpha(1f);
    actionFadeIn.setDuration(2f);

    this.addAction(Actions.sequence(actionFadeOut, Actions.delay(2f), actionFadeIn));
}

但是调用此方法没有任何反应。

我的绘制方法是:

@Override
public void draw(Batch batch, float parentAlpha) {
    super.draw(batch, parentAlpha);
    batch.draw(objectImage, getX(), getY(), getWidth() * getScaleX(),
            getHeight() * getScaleY());
}

如何使图像的Alpha值起作用?

提前致谢!

纳米

正如Scene2d Wiki所说,我们需要像这样重写draw

@Override
public void draw(Batch batch, float parentAlpha) {
    Color color = getColor();
    batch.setColor(color.r, color.g, color.b, color.a * parentAlpha);
    batch.draw(objectImage, getX(), getY(), getWidth() * getScaleX(),
            getHeight() * getScaleY());
    batch.setColor(color.r, color.g, color.b, 1f);
}

然后你去...

- - - 更新 - - -

我必须在绘制下一行之后添加:

batch.setColor(color.r, color.g, color.b, 1f);

否则,在某些情况下,舞台颜色也会受到影响,而不仅仅是演员。

希望能帮助到你

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

LibGDX Actor绘制覆盖

来自分类Dev

libGDX actor draw()未调用

来自分类Dev

Libgdx Actor未检测到触摸输入

来自分类Dev

Libgdx SpriteBatch绘制Actor,但不绘制其他Textures

来自分类Dev

单击libGDX中的Actor

来自分类Dev

单击libGDX中的Actor

来自分类Dev

禁用libgdx中的actor

来自分类Dev

libgdx中的Actor组合

来自分类Dev

libgdx-删除另一个actor后未添加actor

来自分类Dev

libgdx-删除另一个actor后未添加actor

来自分类Dev

LibGdx:如何使用Table Add Actor At(整数索引,Actor actor)?

来自分类Dev

如何拖放LibGDX Image actor

来自分类Dev

libGDX Actor未收到输入

来自分类Dev

如何拖放LibGDX Image actor

来自分类Dev

libgdx如何检测在actor上滑动

来自分类Dev

libgdx在其Y轴上旋转actor

来自分类Dev

是否可以在libgdx中倾斜actor

来自分类Dev

libgdx-actor交互,有什么机制?

来自分类Dev

设置Actor以监听按钮在LibGDX中的单击

来自分类Dev

将SpriteBatch设置在libgdx中的Actor级别以下

来自分类Dev

Libgdx视图在actor.draw()内部截锥体

来自分类Dev

LibGDX Scene2d Action影响多个Actor

来自分类Dev

如何在libGDX中的ScrollPane中缩放Actor

来自分类Dev

添加actor后Libgdx表的高度为0

来自分类Dev

将多个 InputListener 添加到 Actor libgdx

来自分类Dev

Libgdx scene2d Actor 中的位图字体动画

来自分类Dev

Spritebatch未绘制任何内容LibGDX

来自分类Dev

libgdx中的FadeOut动作

来自分类Dev

libgdx:当我使用Shaperenderer添加一个actor时,为什么我所有的actor都不渲染?