[LayaAir 2.0]话说Laya3D怎么自定义shader来实现后期处理呢?

我参考Laya源码的Bloom后期处理的代码,  虽然我继承 PostProcessEffect 后 能拿到每帧渲染后的图像, 但是经过shader处理后, 怎么输出到屏幕呢? 
 
我以为可以通过直接给 destination 赋值就行了, 但是没用!!
 
代码如下: 
 

1.png

 
已邀请:

185*****024

赞同来自:

还有我发现这句代码没用啊,,, 通过shader处理没有起作用啊
cmd.blitScreenTriangle(sourceTexture, destTexture, null, this._shader, this._shaderData, 0);

MQ

赞同来自:

Try......................
 render(context: { command: any; camera: { viewport: any; }; source: Laya.RenderTexture; deferredReleaseTextures: any; })
    {
.......
        var sourceTex = context.source;
        var targetTex = Laya.RenderTexture.createFromPool(tw, th, Laya.RenderTexture.FORMAT_R8G8B8, Laya.RenderTexture.FORMAT_DEPTHSTENCIL_NONE, Laya.BaseTexture.FILTERMODE_BILINEAR);
        cmd.blitScreenTriangle(sourceTex, targetTex, null, this.mShader, this.mShaderData, 0);
        context.source = targetTex;
        Laya.RenderTexture.recoverToPool(targetTex);
        context.deferredReleaseTextures.push(sourceTex);
    }

要回复问题请先

商务合作
商务合作