关于 fadeout ,什么情况下fadeout 会不执行

我代码这样 image ,每一次runaction 确实是执行了的,下面的callfunc里的回调也确实是百分百执行了,但是有时候 fadeout 的那个渐隐的效果没有发生, 等到callfun的时候,打印看, preui的 opacity 确实是0,中途opacity确实有变化,动画总共2秒,我动画开始后500毫秒,1000毫秒分别打印opacity,正常减少,但是就是没有渐隐效果。 我知道是我写的bug,但是还是想不明白,什么情况下会打断fadeout的动作效果,

排除节点被销毁, 节点脱离父节点,节点active 改动,stopallaction(),中途修改透明度opacity也是没有的. 排除节点错误,节点层级变动,有新节点生成等

版本的话 cocos creator 2.4

动画总共执行2秒,我延迟 500毫秒后打印, opatity 也是有变化的,是203.95996499999833, 但是 这个节点并没有渐隐的效果, 这就很神奇了, 是偶现的

你确定duration每次都是2吗

很重要吗, 我手动写一个2试试, 不是1就是2,我调试的时候肯定是2. 而且 看效果也是等了2秒左右才callfunc

代码太少了,可能是哪里又修改了透明度和这里冲突了,不然就是哪里的方法影响了这里,可以在fadeout之前加一秒delay测一下,delay之后先call输出一下透明度

代码要全的话就太多了,所以修改透明度会有影响? 我延迟500毫秒打印, 可以看到 opatity 有变少 是203

问题解决,是因为 这个节点上的sprite做了其它的shader效果,改变了 Material, 导致fadeout 的效果做不出来了

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。