PostProcessing.js 654 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { vec4, NodeMaterial } from '../../nodes/Nodes.js';
  2. import QuadMesh from '../../objects/QuadMesh.js';
  3. const quadMesh = new QuadMesh( new NodeMaterial() );
  4. class PostProcessing {
  5. constructor( renderer, outputNode = vec4( 0, 0, 1, 1 ) ) {
  6. this.renderer = renderer;
  7. this.outputNode = outputNode;
  8. }
  9. render() {
  10. quadMesh.material.fragmentNode = this.outputNode;
  11. quadMesh.render( this.renderer );
  12. }
  13. renderAsync() {
  14. quadMesh.material.fragmentNode = this.outputNode;
  15. return quadMesh.renderAsync( this.renderer );
  16. }
  17. set needsUpdate( value ) {
  18. quadMesh.material.needsUpdate = value;
  19. }
  20. }
  21. export default PostProcessing;