@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.8.2 → 3.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/RenderingEngine.js +2 -2
  2. package/dist/RenderingEngine.js.map +1 -1
  3. package/dist/loaders/EnvironmentMapLoader.d.ts +15 -0
  4. package/dist/loaders/EnvironmentMapLoader.d.ts.map +1 -1
  5. package/dist/loaders/EnvironmentMapLoader.js +29 -0
  6. package/dist/loaders/EnvironmentMapLoader.js.map +1 -1
  7. package/dist/loaders/MaterialLoader.js +1 -1
  8. package/dist/loaders/MaterialLoader.js.map +1 -1
  9. package/dist/managers/PostProcessingManager.d.ts.map +1 -1
  10. package/dist/managers/PostProcessingManager.js +5 -2
  11. package/dist/managers/PostProcessingManager.js.map +1 -1
  12. package/dist/managers/postprocessing/ao/hbao/shader/hbao_utils.d.ts +2 -0
  13. package/dist/managers/postprocessing/ao/hbao/shader/hbao_utils.d.ts.map +1 -0
  14. package/dist/managers/postprocessing/ao/hbao/shader/hbao_utils.js +99 -0
  15. package/dist/managers/postprocessing/ao/hbao/shader/hbao_utils.js.map +1 -0
  16. package/dist/managers/postprocessing/effects/ToneMappingEffect.d.ts +1 -0
  17. package/dist/managers/postprocessing/effects/ToneMappingEffect.d.ts.map +1 -0
  18. package/dist/managers/postprocessing/effects/ToneMappingEffect.js +2 -0
  19. package/dist/managers/postprocessing/effects/ToneMappingEffect.js.map +1 -0
  20. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.d.ts +166 -0
  21. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.d.ts.map +1 -0
  22. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js +292 -0
  23. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js.map +1 -0
  24. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingPass.d.ts +1 -0
  25. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingPass.d.ts.map +1 -0
  26. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingPass.js +160 -0
  27. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingPass.js.map +1 -0
  28. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.d.ts +2 -0
  29. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.d.ts.map +1 -0
  30. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.js +97 -0
  31. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.js.map +1 -0
  32. package/package.json +17 -17
@@ -46,6 +46,7 @@ const SelectiveBloomManager_1 = require("./postprocessing/SelectiveBloomManager"
46
46
  const SSAARenderPass_1 = require("./postprocessing/SSAARenderPass");
47
47
  const SSAOEffect_1 = require("./postprocessing/ao/ssao/SSAOEffect");
48
48
  const gl_matrix_1 = require("gl-matrix");
49
+ const ToneMappingEffect_1 = require("./postprocessing/effects/tone-mapping/ToneMappingEffect");
49
50
  class PostProcessingManager {
50
51
  // #endregion Properties (23)
51
52
  // #region Constructors (1)
@@ -546,8 +547,7 @@ class PostProcessingManager {
546
547
  return postprocessing_1.ToneMappingMode.LINEAR;
547
548
  }
548
549
  })();
549
- this._toneMappingEffect = new postprocessing_1.ToneMappingEffect({ mode });
550
- this._renderingEngine.renderer.toneMapping = THREE.NoToneMapping;
550
+ this._toneMappingEffect = new ToneMappingEffect_1.ToneMappingEffect({ mode });
551
551
  const effectPass = new postprocessing_1.EffectPass(this._renderingEngine.camera, this._toneMappingEffect);
552
552
  this.addPassToEffectComposer(effectPass);
553
553
  }
@@ -1003,13 +1003,16 @@ class PostProcessingManager {
1003
1003
  this._currentCameraId = cameraId;
1004
1004
  this.changeEffectPass();
1005
1005
  }
1006
+ const currentToneMapping = this._renderingEngine.renderer.toneMapping;
1006
1007
  const currentClearColor = this._renderingEngine.renderer.getClearColor(new THREE.Color());
1007
1008
  const convertedClearColor = currentClearColor.clone().convertSRGBToLinear();
1009
+ this._renderingEngine.renderer.toneMapping = THREE.NoToneMapping;
1008
1010
  this._renderingEngine.renderer.setClearColor(convertedClearColor);
1009
1011
  this._renderingEngine.renderer.setClearAlpha(this._renderingEngine.clearAlpha);
1010
1012
  this._renderingEngine.renderer.autoClear = false;
1011
1013
  this._composer.setMainCamera(camera);
1012
1014
  this._composer.render();
1015
+ this._renderingEngine.renderer.toneMapping = currentToneMapping;
1013
1016
  this._renderingEngine.renderer.autoClear = true;
1014
1017
  this._renderingEngine.renderer.setClearColor(currentClearColor);
1015
1018
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PostProcessingManager.js","sourceRoot":"","sources":["../../src/managers/PostProcessingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostProcessingManager.js","sourceRoot":"","sources":["../../src/managers/PostProcessingManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const hbao_utils = "\n#include <sampleBlueNoise>\n\nuniform sampler2D normalTexture;\nuniform float cameraNear;\nuniform float cameraFar;\nuniform mat4 projectionMatrixInverse;\nuniform mat4 cameraMatrixWorld;\n\n// source: https://github.com/mrdoob/three.js/blob/342946c8392639028da439b6dc0597e58209c696/examples/js/shaders/SAOShader.js#L123\nfloat getViewZ(const float depth) {\n#ifdef PERSPECTIVE_CAMERA\n return perspectiveDepthToViewZ(depth, cameraNear, cameraFar);\n#else\n return orthographicDepthToViewZ(depth, cameraNear, cameraFar);\n#endif\n}\n\n// source: https://github.com/N8python/ssao/blob/master/EffectShader.js#L52\nvec3 getWorldPos(const float depth, const vec2 coord) {\n float z = depth * 2.0 - 1.0;\n vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);\n vec4 viewSpacePosition = projectionMatrixInverse * clipSpacePosition;\n\n // Perspective division\n vec4 worldSpacePosition = cameraMatrixWorld * viewSpacePosition;\n worldSpacePosition.xyz /= worldSpacePosition.w;\n\n return worldSpacePosition.xyz;\n}\n\nvec3 slerp(const vec3 a, const vec3 b, const float t) {\n float cosAngle = dot(a, b);\n float angle = acos(cosAngle);\n\n if (abs(angle) < 0.001) {\n return mix(a, b, t);\n }\n\n float sinAngle = sin(angle);\n float t1 = sin((1.0 - t) * angle) / sinAngle;\n float t2 = sin(t * angle) / sinAngle;\n\n return (a * t1) + (b * t2);\n}\n\nvec3 computeWorldNormal() {\n vec2 size = vec2(textureSize(depthTexture, 0));\n ivec2 p = ivec2(vUv * size);\n float c0 = texelFetch(depthTexture, p, 0).x;\n float l2 = texelFetch(depthTexture, p - ivec2(2, 0), 0).x;\n float l1 = texelFetch(depthTexture, p - ivec2(1, 0), 0).x;\n float r1 = texelFetch(depthTexture, p + ivec2(1, 0), 0).x;\n float r2 = texelFetch(depthTexture, p + ivec2(2, 0), 0).x;\n float b2 = texelFetch(depthTexture, p - ivec2(0, 2), 0).x;\n float b1 = texelFetch(depthTexture, p - ivec2(0, 1), 0).x;\n float t1 = texelFetch(depthTexture, p + ivec2(0, 1), 0).x;\n float t2 = texelFetch(depthTexture, p + ivec2(0, 2), 0).x;\n float dl = abs((2.0 * l1 - l2) - c0);\n float dr = abs((2.0 * r1 - r2) - c0);\n float db = abs((2.0 * b1 - b2) - c0);\n float dt = abs((2.0 * t1 - t2) - c0);\n vec3 ce = getWorldPos(c0, vUv).xyz;\n vec3 dpdx = (dl < dr) ? ce - getWorldPos(l1, (vUv - vec2(1.0 / size.x, 0.0))).xyz\n : -ce + getWorldPos(r1, (vUv + vec2(1.0 / size.x, 0.0))).xyz;\n vec3 dpdy = (db < dt) ? ce - getWorldPos(b1, (vUv - vec2(0.0, 1.0 / size.y))).xyz\n : -ce + getWorldPos(t1, (vUv + vec2(0.0, 1.0 / size.y))).xyz;\n return normalize(cross(dpdx, dpdy));\n}\n\nvec3 getWorldNormal(const vec2 uv) {\n#ifdef useNormalTexture\n vec3 worldNormal = unpackRGBToNormal(textureLod(normalTexture, uv, 0.).rgb);\n\n worldNormal = (vec4(worldNormal, 1.) * viewMatrix).xyz; // view-space to world-space\n return normalize(worldNormal);\n#else\n return computeWorldNormal(); // compute world normal from depth\n#endif\n}\n\n#define PI 3.14159265358979323846264338327950288\n\n// source: https://www.shadertoy.com/view/cll3R4\nvec3 cosineSampleHemisphere(const vec3 n, const vec2 u) {\n float r = sqrt(u.x);\n float theta = 2.0 * PI * u.y;\n\n vec3 b = normalize(cross(n, vec3(0.0, 1.0, 1.0)));\n vec3 t = cross(b, n);\n\n return normalize(r * sin(theta) * b + sqrt(1.0 - u.x) * n + r * cos(theta) * t);\n}\n\n";
2
+ //# sourceMappingURL=hbao_utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hbao_utils.d.ts","sourceRoot":"","sources":["../../../../../../src/managers/postprocessing/ao/hbao/shader/hbao_utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,84GA8FtB,CAAA"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hbao_utils = void 0;
4
+ exports.hbao_utils = `
5
+ #include <sampleBlueNoise>
6
+
7
+ uniform sampler2D normalTexture;
8
+ uniform float cameraNear;
9
+ uniform float cameraFar;
10
+ uniform mat4 projectionMatrixInverse;
11
+ uniform mat4 cameraMatrixWorld;
12
+
13
+ // source: https://github.com/mrdoob/three.js/blob/342946c8392639028da439b6dc0597e58209c696/examples/js/shaders/SAOShader.js#L123
14
+ float getViewZ(const float depth) {
15
+ #ifdef PERSPECTIVE_CAMERA
16
+ return perspectiveDepthToViewZ(depth, cameraNear, cameraFar);
17
+ #else
18
+ return orthographicDepthToViewZ(depth, cameraNear, cameraFar);
19
+ #endif
20
+ }
21
+
22
+ // source: https://github.com/N8python/ssao/blob/master/EffectShader.js#L52
23
+ vec3 getWorldPos(const float depth, const vec2 coord) {
24
+ float z = depth * 2.0 - 1.0;
25
+ vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);
26
+ vec4 viewSpacePosition = projectionMatrixInverse * clipSpacePosition;
27
+
28
+ // Perspective division
29
+ vec4 worldSpacePosition = cameraMatrixWorld * viewSpacePosition;
30
+ worldSpacePosition.xyz /= worldSpacePosition.w;
31
+
32
+ return worldSpacePosition.xyz;
33
+ }
34
+
35
+ vec3 slerp(const vec3 a, const vec3 b, const float t) {
36
+ float cosAngle = dot(a, b);
37
+ float angle = acos(cosAngle);
38
+
39
+ if (abs(angle) < 0.001) {
40
+ return mix(a, b, t);
41
+ }
42
+
43
+ float sinAngle = sin(angle);
44
+ float t1 = sin((1.0 - t) * angle) / sinAngle;
45
+ float t2 = sin(t * angle) / sinAngle;
46
+
47
+ return (a * t1) + (b * t2);
48
+ }
49
+
50
+ vec3 computeWorldNormal() {
51
+ vec2 size = vec2(textureSize(depthTexture, 0));
52
+ ivec2 p = ivec2(vUv * size);
53
+ float c0 = texelFetch(depthTexture, p, 0).x;
54
+ float l2 = texelFetch(depthTexture, p - ivec2(2, 0), 0).x;
55
+ float l1 = texelFetch(depthTexture, p - ivec2(1, 0), 0).x;
56
+ float r1 = texelFetch(depthTexture, p + ivec2(1, 0), 0).x;
57
+ float r2 = texelFetch(depthTexture, p + ivec2(2, 0), 0).x;
58
+ float b2 = texelFetch(depthTexture, p - ivec2(0, 2), 0).x;
59
+ float b1 = texelFetch(depthTexture, p - ivec2(0, 1), 0).x;
60
+ float t1 = texelFetch(depthTexture, p + ivec2(0, 1), 0).x;
61
+ float t2 = texelFetch(depthTexture, p + ivec2(0, 2), 0).x;
62
+ float dl = abs((2.0 * l1 - l2) - c0);
63
+ float dr = abs((2.0 * r1 - r2) - c0);
64
+ float db = abs((2.0 * b1 - b2) - c0);
65
+ float dt = abs((2.0 * t1 - t2) - c0);
66
+ vec3 ce = getWorldPos(c0, vUv).xyz;
67
+ vec3 dpdx = (dl < dr) ? ce - getWorldPos(l1, (vUv - vec2(1.0 / size.x, 0.0))).xyz
68
+ : -ce + getWorldPos(r1, (vUv + vec2(1.0 / size.x, 0.0))).xyz;
69
+ vec3 dpdy = (db < dt) ? ce - getWorldPos(b1, (vUv - vec2(0.0, 1.0 / size.y))).xyz
70
+ : -ce + getWorldPos(t1, (vUv + vec2(0.0, 1.0 / size.y))).xyz;
71
+ return normalize(cross(dpdx, dpdy));
72
+ }
73
+
74
+ vec3 getWorldNormal(const vec2 uv) {
75
+ #ifdef useNormalTexture
76
+ vec3 worldNormal = unpackRGBToNormal(textureLod(normalTexture, uv, 0.).rgb);
77
+
78
+ worldNormal = (vec4(worldNormal, 1.) * viewMatrix).xyz; // view-space to world-space
79
+ return normalize(worldNormal);
80
+ #else
81
+ return computeWorldNormal(); // compute world normal from depth
82
+ #endif
83
+ }
84
+
85
+ #define PI 3.14159265358979323846264338327950288
86
+
87
+ // source: https://www.shadertoy.com/view/cll3R4
88
+ vec3 cosineSampleHemisphere(const vec3 n, const vec2 u) {
89
+ float r = sqrt(u.x);
90
+ float theta = 2.0 * PI * u.y;
91
+
92
+ vec3 b = normalize(cross(n, vec3(0.0, 1.0, 1.0)));
93
+ vec3 t = cross(b, n);
94
+
95
+ return normalize(r * sin(theta) * b + sqrt(1.0 - u.x) * n + r * cos(theta) * t);
96
+ }
97
+
98
+ `;
99
+ //# sourceMappingURL=hbao_utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hbao_utils.js","sourceRoot":"","sources":["../../../../../../src/managers/postprocessing/ao/hbao/shader/hbao_utils.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FzB,CAAA"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=ToneMappingEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToneMappingEffect.d.ts","sourceRoot":"","sources":["../../../../src/managers/postprocessing/effects/ToneMappingEffect.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=ToneMappingEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToneMappingEffect.js","sourceRoot":"","sources":["../../../../src/managers/postprocessing/effects/ToneMappingEffect.ts"],"names":[],"mappings":""}
@@ -0,0 +1,166 @@
1
+ import { AdaptiveLuminancePass, BlendFunction, Effect, LuminancePass, ToneMappingMode } from 'postprocessing';
2
+ import { WebGLRenderer, WebGLRenderTarget } from 'three';
3
+ /**
4
+ * A tone mapping effect.
5
+ *
6
+ * Note: `ToneMappingMode.REINHARD2_ADAPTIVE` requires support for `EXT_shader_texture_lod`.
7
+ *
8
+ * Reference:
9
+ * GDC2007 - Wolfgang Engel, Post-Processing Pipeline
10
+ * http://perso.univ-lyon1.fr/jean-claude.iehl/Public/educ/GAMA/2007/gdc07/Post-Processing_Pipeline.pdf
11
+ */
12
+ export declare class ToneMappingEffect extends Effect {
13
+ adaptiveLuminancePass: AdaptiveLuminancePass;
14
+ luminancePass: LuminancePass;
15
+ renderTargetLuminance: WebGLRenderTarget;
16
+ /**
17
+ * Constructs a new tone mapping effect.
18
+ *
19
+ * The additional parameters only affect the Reinhard2 operator.
20
+ *
21
+ * @param {Object} [options] - The options.
22
+ * @param {BlendFunction} [options.blendFunction=BlendFunction.SRC] - The blend function of this effect.
23
+ * @param {boolean} [options.adaptive=false] - Deprecated. Use mode instead.
24
+ * @param {ToneMappingMode} [options.mode=ToneMappingMode.AGX] - The tone mapping mode.
25
+ * @param {number} [options.resolution=256] - The resolution of the luminance texture. Must be a power of two.
26
+ * @param {number} [options.maxLuminance=4.0] - Deprecated. Same as whitePoint.
27
+ * @param {number} [options.whitePoint=4.0] - The white point.
28
+ * @param {number} [options.middleGrey=0.6] - The middle grey factor.
29
+ * @param {number} [options.minLuminance=0.01] - The minimum luminance. Prevents very high exposure in dark scenes.
30
+ * @param {number} [options.averageLuminance=1.0] - The average luminance. Used for the non-adaptive Reinhard operator.
31
+ * @param {number} [options.adaptationRate=1.0] - The luminance adaptation rate.
32
+ */
33
+ constructor({ blendFunction, adaptive, mode, resolution, maxLuminance, whitePoint, middleGrey, minLuminance, averageLuminance, adaptationRate, }?: {
34
+ blendFunction?: BlendFunction;
35
+ adaptive?: boolean;
36
+ mode?: ToneMappingMode;
37
+ resolution?: number;
38
+ maxLuminance?: number;
39
+ whitePoint?: number;
40
+ middleGrey?: number;
41
+ minLuminance?: number;
42
+ averageLuminance?: number;
43
+ adaptationRate?: number;
44
+ });
45
+ /**
46
+ * The luminance adaptation rate.
47
+ *
48
+ * @type {number}
49
+ * @deprecated Use adaptiveLuminanceMaterial.adaptationRate instead.
50
+ */
51
+ get adaptationRate(): any;
52
+ set adaptationRate(value: any);
53
+ /**
54
+ * Indicates whether this pass uses adaptive luminance.
55
+ *
56
+ * @type {boolean}
57
+ * @deprecated Use mode instead.
58
+ */
59
+ get adaptive(): boolean;
60
+ set adaptive(value: boolean);
61
+ /**
62
+ * The adaptive luminance material.
63
+ *
64
+ * @type {AdaptiveLuminanceMaterial}
65
+ */
66
+ get adaptiveLuminanceMaterial(): import("three").Material;
67
+ /**
68
+ * The average luminance.
69
+ *
70
+ * Only applies to Reinhard2 (Modified).
71
+ *
72
+ * @type {number}
73
+ */
74
+ get averageLuminance(): any;
75
+ set averageLuminance(value: any);
76
+ /**
77
+ * @type {number}
78
+ * @deprecated
79
+ */
80
+ get distinction(): number;
81
+ set distinction(value: number);
82
+ /**
83
+ * The middle grey factor. Default is `0.6`.
84
+ *
85
+ * Only applies to Reinhard2 (Modified & Adaptive).
86
+ *
87
+ * @type {number}
88
+ */
89
+ get middleGrey(): any;
90
+ set middleGrey(value: any);
91
+ /**
92
+ * The tone mapping mode.
93
+ *
94
+ * @type {ToneMappingMode}
95
+ */
96
+ get mode(): number;
97
+ set mode(value: number);
98
+ /**
99
+ * The resolution of the luminance texture. Must be a power of two.
100
+ *
101
+ * @type {number}
102
+ */
103
+ get resolution(): number;
104
+ set resolution(value: number);
105
+ /**
106
+ * The white point. Default is `4.0`.
107
+ *
108
+ * Only applies to Reinhard2 (Modified & Adaptive).
109
+ *
110
+ * @type {number}
111
+ */
112
+ get whitePoint(): any;
113
+ set whitePoint(value: any);
114
+ /**
115
+ * Returns the adaptive luminance material.
116
+ *
117
+ * @deprecated Use adaptiveLuminanceMaterial instead.
118
+ * @return {AdaptiveLuminanceMaterial} The material.
119
+ */
120
+ getAdaptiveLuminanceMaterial(): import("three").Material;
121
+ /**
122
+ * Returns the current tone mapping mode.
123
+ *
124
+ * @deprecated Use mode instead.
125
+ * @return {ToneMappingMode} The tone mapping mode.
126
+ */
127
+ getMode(): number;
128
+ /**
129
+ * Returns the resolution of the luminance texture.
130
+ *
131
+ * @deprecated Use resolution instead.
132
+ * @return {number} The resolution.
133
+ */
134
+ getResolution(): number;
135
+ /**
136
+ * Performs initialization tasks.
137
+ *
138
+ * @param {WebGLRenderer} renderer - The renderer.
139
+ * @param {boolean} alpha - Whether the renderer uses the alpha channel or not.
140
+ * @param {number} frameBufferType - The type of the main frame buffers.
141
+ */
142
+ initialize(renderer: WebGLRenderer, alpha: boolean, frameBufferType: number): void;
143
+ /**
144
+ * Sets the tone mapping mode.
145
+ *
146
+ * @deprecated Use mode instead.
147
+ * @param {ToneMappingMode} value - The tone mapping mode.
148
+ */
149
+ setMode(value: ToneMappingMode): void;
150
+ /**
151
+ * Sets the resolution of the luminance texture. Must be a power of two.
152
+ *
153
+ * @deprecated Use resolution instead.
154
+ * @param {number} value - The resolution.
155
+ */
156
+ setResolution(value: number): void;
157
+ /**
158
+ * Updates this effect.
159
+ *
160
+ * @param {WebGLRenderer} renderer - The renderer.
161
+ * @param {WebGLRenderTarget} inputBuffer - A frame buffer that contains the result of the previous pass.
162
+ * @param {number} [deltaTime] - The time between the last frame and the current one in seconds.
163
+ */
164
+ update(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget, deltaTime: number): void;
165
+ }
166
+ //# sourceMappingURL=ToneMappingEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToneMappingEffect.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.ts"],"names":[],"mappings":"AACA,OAAO,EACN,qBAAqB,EACrB,aAAa,EACb,MAAM,EAEN,aAAa,EACb,eAAe,EACd,MAAM,gBAAgB,CAAC;AACzB,OAAO,EAIN,aAAa,EACb,iBAAiB,EAChB,MAAM,OAAO,CAAC;AAGhB;;;;;;;;GAQG;AAEH,qBAAa,iBAAkB,SAAQ,MAAM;IAC5C,qBAAqB,EAAE,qBAAqB,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;IAC7B,qBAAqB,EAAE,iBAAiB,CAAC;IAEhD;;;;;;;;;;;;;;;;OAgBG;gBACS,EACX,aAAiC,EACjC,QAAgB,EAChB,IAA0E,EAC1E,UAAgB,EAChB,YAAkB,EAClB,UAAyB,EACzB,UAAgB,EAChB,YAAmB,EACnB,gBAAsB,EACtB,cAAoB,GACpB,GAAE;QACF,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,IAAI,CAAC,EAAE,eAAe,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;KACnB;IAwDN;;;;;OAKG;IAEH,IAAW,cAAc,QAExB;IAED,IAAW,cAAc,CAAC,KAAK,KAAA,EAE9B;IAED;;;;;OAKG;IAEH,IAAW,QAAQ,YAElB;IAED,IAAW,QAAQ,CAAC,KAAK,SAAA,EAExB;IAED;;;;OAIG;IAEH,IAAW,yBAAyB,6BAEnC;IAED;;;;;;OAMG;IAEH,IAAW,gBAAgB,QAE1B;IAED,IAAW,gBAAgB,CAAC,KAAK,KAAA,EAEhC;IAED;;;OAGG;IAEH,IAAW,WAAW,WAGrB;IAED,IAAW,WAAW,CAAC,KAAK,QAAA,EAE3B;IAED;;;;;;OAMG;IAEH,IAAW,UAAU,QAEpB;IAED,IAAW,UAAU,CAAC,KAAK,KAAA,EAE1B;IAED;;;;OAIG;IAEH,IAAW,IAAI,WAEd;IAED,IAAW,IAAI,CAAC,KAAK,QAAA,EA4CpB;IAED;;;;OAIG;IAEH,IAAW,UAAU,WAEpB;IAED,IAAW,UAAU,CAAC,KAAK,QAAA,EAO1B;IAED;;;;;;OAMG;IAEH,IAAW,UAAU,QAEpB;IAED,IAAW,UAAU,CAAC,KAAK,KAAA,EAE1B;IAED;;;;;OAKG;IAEI,4BAA4B;IAInC;;;;;OAKG;IAEI,OAAO;IAId;;;;;OAKG;IAEI,aAAa;IAIpB;;;;;;OAMG;IAEI,UAAU,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM;IAIlF;;;;;OAKG;IAEI,OAAO,CAAC,KAAK,EAAE,eAAe;IAIrC;;;;;OAKG;IAEI,aAAa,CAAC,KAAK,EAAE,MAAM;IAIlC;;;;;;OAMG;IAEI,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM;CAMxF"}