[BUG] tween修改sprite颜色,发生闪烁现象

3.4.1版本
set_color(_color: Color) {
var sp: Sprite = this.getComponent(Sprite);
tween(sp).to(1, { color: _color }).start();
}

确实会这样,加个uiOpacity组件然后再对这个组件做tween可以解决

已知问题,给你们带来的不便,感到非常抱歉!

这个组件不是只能该透明度嘛? 能可以修改颜色嘛?

加入uiOpacity后有解决吗?

没解决…首次的时候不会闪, 第二次以后就还是会闪的

还没有解决吗?

我这边实测

3.5.2 依然有这个问题

3.6依旧又问题,不知道怎么处理了

color的缓动修改的是color的组合值_val,所以会出现rgb变化过大闪烁。可以直接缓动rgb。类似这样

const c0 = this.m_Color0;
c0.set(c1.r, c1.g, c1.b);
tween(c0)
    .to(0.1, { r: c2.r, g: c2.g, b: c2.b }, {
        onUpdate: () => {
            sprite.color = c0;
        }
    })
    .start();

大佬牛逼!!