UNPKG

@forbespro/lead-agent

Version:
2 lines (1 loc) 1.83 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("three"),r=require("./index52.js"),i=require("./index49.js"),a=require("./index53.js");class h extends r.Pass{constructor(e=.96){super(),this.uniforms=t.UniformsUtils.clone(a.AfterimageShader.uniforms),this.uniforms.damp.value=e,this.compFsMaterial=new t.ShaderMaterial({uniforms:this.uniforms,vertexShader:a.AfterimageShader.vertexShader,fragmentShader:a.AfterimageShader.fragmentShader}),this.copyFsMaterial=new t.ShaderMaterial({uniforms:t.UniformsUtils.clone(i.CopyShader.uniforms),vertexShader:i.CopyShader.vertexShader,fragmentShader:i.CopyShader.fragmentShader,blending:t.NoBlending,depthTest:!1,depthWrite:!1}),this._textureComp=new t.WebGLRenderTarget(window.innerWidth,window.innerHeight,{magFilter:t.NearestFilter,type:t.HalfFloatType}),this._textureOld=new t.WebGLRenderTarget(window.innerWidth,window.innerHeight,{magFilter:t.NearestFilter,type:t.HalfFloatType}),this._compFsQuad=new r.FullScreenQuad(this.compFsMaterial),this._copyFsQuad=new r.FullScreenQuad(this.copyFsMaterial)}render(e,s,o){this.uniforms.tOld.value=this._textureOld.texture,this.uniforms.tNew.value=o.texture,e.setRenderTarget(this._textureComp),this._compFsQuad.render(e),this._copyFsQuad.material.uniforms.tDiffuse.value=this._textureComp.texture,this.renderToScreen?(e.setRenderTarget(null),this._copyFsQuad.render(e)):(e.setRenderTarget(s),this.clear&&e.clear(),this._copyFsQuad.render(e));const d=this._textureOld;this._textureOld=this._textureComp,this._textureComp=d}setSize(e,s){this._textureComp.setSize(e,s),this._textureOld.setSize(e,s)}dispose(){this._textureComp.dispose(),this._textureOld.dispose(),this.compFsMaterial.dispose(),this.copyFsMaterial.dispose(),this._compFsQuad.dispose(),this._copyFsQuad.dispose()}}exports.AfterimagePass=h;