UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

40 lines (37 loc) 1.34 kB
// /** // * Adds An AfterImage effect, where the previous render remains and only slowly fades away. // * // * // */ // import {TypedPostNode, TypedPostNodeContext, PostParamOptions} from './_Base'; // import {AfterimagePass} from 'three/examples/jsm/postprocessing/AfterimagePass'; // import {IUniformN} from '../utils/code/gl/Uniforms'; // interface AfterImagePassWithUniforms extends AfterimagePass { // uniforms: { // damp: IUniformN; // }; // } // import {NodeParamsConfig, ParamConfig} from '../utils/params/ParamsConfig'; // class AfterImagePostParamsConfig extends NodeParamsConfig { // /** @param damping */ // damp = ParamConfig.FLOAT(0.96, { // range: [0, 1], // rangeLocked: [true, true], // ...PostParamOptions, // }); // } // const ParamsConfig = new AfterImagePostParamsConfig(); // export class AfterImagePostNode extends TypedPostNode<AfterImagePassWithUniforms, AfterImagePostParamsConfig> { // override paramsConfig = ParamsConfig; // static override type() { // return 'afterImage'; // } // protected override _createPass(context: TypedPostNodeContext) { // const pass = new AfterimagePass() as AfterImagePassWithUniforms; // this.updatePass(pass); // return pass; // } // override updatePass(pass: AfterImagePassWithUniforms) { // pass.uniforms.damp.value = this.pv.damp; // } // }