|
1 | 1 | /** |
2 | | - * postprocessing v4.4.1 build Apr 06 2018 |
| 2 | + * postprocessing v4.4.2 build Apr 19 2018 |
3 | 3 | * https://github.com/vanruesc/postprocessing |
4 | 4 | * Copyright 2018 Raoul van Rüschen, Zlib |
5 | 5 | */ |
|
10 | 10 | (factory((global.POSTPROCESSING = {}),global.THREE)); |
11 | 11 | }(this, (function (exports,three) { 'use strict'; |
12 | 12 |
|
13 | | - var fragment = "uniform sampler2D tPreviousLum;\r\nuniform sampler2D tCurrentLum;\r\nuniform float minLuminance;\r\nuniform float delta;\r\nuniform float tau;\r\n\r\nvarying vec2 vUv;\r\n\r\nvoid main() {\r\n\r\n\tfloat previousLum = texture2D(tPreviousLum, vUv, MIP_LEVEL_1X1).r;\r\n\tfloat currentLum = texture2D(tCurrentLum, vUv, MIP_LEVEL_1X1).r;\r\n\r\n\tpreviousLum = max(minLuminance, previousLum);\r\n\tcurrentLum = max(minLuminance, currentLum);\r\n\r\n\t// Adapt the luminance using Pattanaik's technique.\r\n\tfloat adaptedLum = previousLum + (currentLum - previousLum) * (1.0 - exp(-delta * tau));\r\n\r\n\tgl_FragColor.r = adaptedLum;\r\n\r\n}\r\n"; |
14 | | - |
15 | | - var vertex = "varying vec2 vUv;\r\n\r\nvoid main() {\r\n\r\n\tvUv = uv;\r\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\r\n\r\n}\r\n"; |
16 | | - |
17 | 13 | var classCallCheck = function (instance, Constructor) { |
18 | 14 | if (!(instance instanceof Constructor)) { |
19 | 15 | throw new TypeError("Cannot call a class as a function"); |
|
80 | 76 | return call && (typeof call === "object" || typeof call === "function") ? call : self; |
81 | 77 | }; |
82 | 78 |
|
| 79 | + var Disposable = function () { |
| 80 | + function Disposable() { |
| 81 | + classCallCheck(this, Disposable); |
| 82 | + } |
| 83 | + |
| 84 | + createClass(Disposable, [{ |
| 85 | + key: "dispose", |
| 86 | + value: function dispose() {} |
| 87 | + }]); |
| 88 | + return Disposable; |
| 89 | + }(); |
| 90 | + |
| 91 | + var fragment = "uniform sampler2D tPreviousLum;\r\nuniform sampler2D tCurrentLum;\r\nuniform float minLuminance;\r\nuniform float delta;\r\nuniform float tau;\r\n\r\nvarying vec2 vUv;\r\n\r\nvoid main() {\r\n\r\n\tfloat previousLum = texture2D(tPreviousLum, vUv, MIP_LEVEL_1X1).r;\r\n\tfloat currentLum = texture2D(tCurrentLum, vUv, MIP_LEVEL_1X1).r;\r\n\r\n\tpreviousLum = max(minLuminance, previousLum);\r\n\tcurrentLum = max(minLuminance, currentLum);\r\n\r\n\t// Adapt the luminance using Pattanaik's technique.\r\n\tfloat adaptedLum = previousLum + (currentLum - previousLum) * (1.0 - exp(-delta * tau));\r\n\r\n\tgl_FragColor.r = adaptedLum;\r\n\r\n}\r\n"; |
| 92 | + |
| 93 | + var vertex = "varying vec2 vUv;\r\n\r\nvoid main() {\r\n\r\n\tvUv = uv;\r\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\r\n\r\n}\r\n"; |
| 94 | + |
83 | 95 | var AdaptiveLuminosityMaterial = function (_ShaderMaterial) { |
84 | 96 | inherits(AdaptiveLuminosityMaterial, _ShaderMaterial); |
85 | 97 |
|
|
3662 | 3674 | } |
3663 | 3675 | }, { |
3664 | 3676 | key: "reset", |
3665 | | - value: function reset(renderTarget) { |
| 3677 | + value: function reset() { |
3666 | 3678 |
|
3667 | | - var depthBuffer = this.readBuffer.depthBuffer; |
3668 | | - var stencilBuffer = this.readBuffer.stencilBuffer; |
3669 | | - var depthTexture = this.readBuffer.depthTexture !== null; |
| 3679 | + var renderTarget = this.createBuffer(this.readBuffer.depthBuffer, this.readBuffer.stencilBuffer, this.readBuffer.depthTexture !== null); |
3670 | 3680 |
|
3671 | | - this.dispose(renderTarget === undefined ? this.createBuffer(depthBuffer, stencilBuffer, depthTexture) : renderTarget); |
| 3681 | + this.dispose(); |
| 3682 | + |
| 3683 | + this.readBuffer = renderTarget; |
| 3684 | + this.writeBuffer = this.readBuffer.clone(); |
| 3685 | + this.copyPass = new ShaderPass(new CopyMaterial()); |
3672 | 3686 | } |
3673 | 3687 | }, { |
3674 | 3688 | key: "dispose", |
3675 | | - value: function dispose(renderTarget) { |
| 3689 | + value: function dispose() { |
3676 | 3690 |
|
3677 | 3691 | var passes = this.passes; |
3678 | 3692 |
|
3679 | | - if (this.readBuffer !== null && this.writeBuffer !== null) { |
| 3693 | + var i = void 0, |
| 3694 | + l = void 0; |
3680 | 3695 |
|
3681 | | - this.readBuffer.dispose(); |
3682 | | - this.writeBuffer.dispose(); |
| 3696 | + for (i = 0, l = passes.length; i < l; ++i) { |
3683 | 3697 |
|
3684 | | - this.readBuffer = null; |
3685 | | - this.writeBuffer = null; |
| 3698 | + passes[i].dispose(); |
3686 | 3699 | } |
3687 | 3700 |
|
3688 | | - while (passes.length > 0) { |
| 3701 | + this.passes = []; |
| 3702 | + |
| 3703 | + if (this.readBuffer !== null) { |
3689 | 3704 |
|
3690 | | - passes.pop().dispose(); |
| 3705 | + this.readBuffer.dispose(); |
| 3706 | + this.readBuffer = null; |
3691 | 3707 | } |
3692 | 3708 |
|
3693 | | - if (renderTarget !== undefined) { |
3694 | | - this.readBuffer = renderTarget; |
3695 | | - this.writeBuffer = this.readBuffer.clone(); |
3696 | | - } else { |
| 3709 | + if (this.writeBuffer !== null) { |
3697 | 3710 |
|
3698 | | - this.copyPass.dispose(); |
| 3711 | + this.writeBuffer.dispose(); |
| 3712 | + this.writeBuffer = null; |
3699 | 3713 | } |
| 3714 | + |
| 3715 | + this.copyPass.dispose(); |
3700 | 3716 | } |
3701 | 3717 | }, { |
3702 | 3718 | key: "depthTexture", |
|
3713 | 3729 | return EffectComposer; |
3714 | 3730 | }(); |
3715 | 3731 |
|
| 3732 | + var Resizable = function () { |
| 3733 | + function Resizable() { |
| 3734 | + classCallCheck(this, Resizable); |
| 3735 | + } |
| 3736 | + |
| 3737 | + createClass(Resizable, [{ |
| 3738 | + key: "setSize", |
| 3739 | + value: function setSize(width, height) {} |
| 3740 | + }]); |
| 3741 | + return Resizable; |
| 3742 | + }(); |
| 3743 | + |
3716 | 3744 | function createCanvas(width, height, data, channels) { |
3717 | 3745 |
|
3718 | 3746 | var canvas = document.createElementNS("http://www.w3.org/1999/xhtml", "canvas"); |
|
4578 | 4606 | return SMAASearchImageData; |
4579 | 4607 | }(); |
4580 | 4608 |
|
| 4609 | + exports.Disposable = Disposable; |
4581 | 4610 | exports.EffectComposer = EffectComposer; |
| 4611 | + exports.Resizable = Resizable; |
4582 | 4612 | exports.BloomPass = BloomPass; |
4583 | 4613 | exports.BlurPass = BlurPass; |
4584 | 4614 | exports.BokehPass = BokehPass; |
|
0 commit comments