我有使用PIXI.js制作的应用程序,它使用WebGLRenderer。使用PIXI.js和WebGLRenderer跟踪淡入淡出
我保留绘制缓冲区,而不是清除之前渲染:
{ preserveDrawingBuffer: true, clearBeforeRender: false }
这允许我创建创新为对象走动。 我想让路径随着时间的推移而逐渐消失,所以我在每个渲染上应用一个透明的黑色矩形。这有效,但淡出最终变成灰色。我想要一个完整的淡入淡出。
我试过在根容器上使用降低亮度的ColorMatrixFilter
过滤器,希望它会造成淡入淡出效果。它没有造成任何淡入淡出效果,而只是造成一切变得稍暗。如果这有效,那么自定义过滤器可以帮助完成这项工作。
我怎样才能获得缓慢的渐变淡入淡出以完成呈现对象的小径的黑色?
编辑:这里是什么,我已经尝试了几个例子:
// `this` being my app object.
this.fadeGraphics = new PIXI.Graphics()
this.root.addChild(this.fadeGraphics)
// Blend Mode
this.fadeGraphics.blendMode = PIXI.BLEND_MODES.MULTIPLY
this.fadeGraphics.beginFill(0xf0f0f0)
this.fadeGraphics.drawRect(0, 0, this.screenWidth, this.screenHeight)
this.fadeGraphics.endFill()
// Transparent black rectangle.
this.fadeGraphics.beginFill(0x000000, .05)
this.fadeGraphics.drawRect(0, 0, this.screenWidth, this.screenHeight)
this.fadeGraphics.endFill()
这两种方法离开我用灰色小道,小道就会消失,如果我的价值观是足够强大。尽管如此,我想要一个非常长远的线索,所以我必须使用小的值,并且可能还会在第n帧中应用它们。
我认为一个SUBTRACT混合模式可能能够做我需要的。
不幸的是,它似乎并没有在Pixi.js中可用。