@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.9.0 → 3.9.1
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.
- package/README.md +1 -1
- package/dist/RenderingEngine.d.ts +23 -23
- package/dist/RenderingEngine.d.ts.map +1 -1
- package/dist/RenderingEngine.js +245 -128
- package/dist/RenderingEngine.js.map +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -11
- package/dist/index.js.map +1 -1
- package/dist/injectors/TextureUnifierInjector.d.ts.map +1 -1
- package/dist/injectors/TextureUnifierInjector.js +22 -13
- package/dist/injectors/TextureUnifierInjector.js.map +1 -1
- package/dist/interfaces/ILoader.d.ts.map +1 -1
- package/dist/interfaces/IPostProcessingEffectDefinitions.d.ts.map +1 -1
- package/dist/interfaces/IPostProcessingEffectDefinitions.js.map +1 -1
- package/dist/interfaces/IRenderingEngine.d.ts +6 -6
- package/dist/interfaces/IRenderingEngine.d.ts.map +1 -1
- package/dist/loaders/EnvironmentMapLoader.d.ts +3 -3
- package/dist/loaders/EnvironmentMapLoader.d.ts.map +1 -1
- package/dist/loaders/EnvironmentMapLoader.js +150 -52
- package/dist/loaders/EnvironmentMapLoader.js.map +1 -1
- package/dist/loaders/GeometryLoader.d.ts +6 -6
- package/dist/loaders/GeometryLoader.d.ts.map +1 -1
- package/dist/loaders/GeometryLoader.js +140 -93
- package/dist/loaders/GeometryLoader.js.map +1 -1
- package/dist/loaders/HTMLElementAnchorLoader.d.ts +4 -4
- package/dist/loaders/HTMLElementAnchorLoader.d.ts.map +1 -1
- package/dist/loaders/HTMLElementAnchorLoader.js +26 -14
- package/dist/loaders/HTMLElementAnchorLoader.js.map +1 -1
- package/dist/loaders/LightLoader.d.ts +5 -5
- package/dist/loaders/LightLoader.d.ts.map +1 -1
- package/dist/loaders/LightLoader.js +43 -15
- package/dist/loaders/LightLoader.js.map +1 -1
- package/dist/loaders/MaterialLoader.d.ts +17 -17
- package/dist/loaders/MaterialLoader.d.ts.map +1 -1
- package/dist/loaders/MaterialLoader.js +563 -198
- package/dist/loaders/MaterialLoader.js.map +1 -1
- package/dist/managers/CameraManager.d.ts +6 -6
- package/dist/managers/CameraManager.d.ts.map +1 -1
- package/dist/managers/CameraManager.js +47 -27
- package/dist/managers/CameraManager.js.map +1 -1
- package/dist/managers/EnvironmentGeometryManager.d.ts +7 -7
- package/dist/managers/EnvironmentGeometryManager.d.ts.map +1 -1
- package/dist/managers/EnvironmentGeometryManager.js +20 -8
- package/dist/managers/EnvironmentGeometryManager.js.map +1 -1
- package/dist/managers/PostProcessingManager.d.ts +9 -9
- package/dist/managers/PostProcessingManager.d.ts.map +1 -1
- package/dist/managers/PostProcessingManager.js +358 -173
- package/dist/managers/PostProcessingManager.js.map +1 -1
- package/dist/managers/RenderingManager.d.ts +4 -4
- package/dist/managers/RenderingManager.d.ts.map +1 -1
- package/dist/managers/RenderingManager.js +164 -79
- package/dist/managers/RenderingManager.js.map +1 -1
- package/dist/managers/SceneTracingManager.d.ts +3 -3
- package/dist/managers/SceneTracingManager.d.ts.map +1 -1
- package/dist/managers/SceneTracingManager.js +12 -9
- package/dist/managers/SceneTracingManager.js.map +1 -1
- package/dist/managers/SceneTreeManager.d.ts +7 -7
- package/dist/managers/SceneTreeManager.d.ts.map +1 -1
- package/dist/managers/SceneTreeManager.js +100 -52
- package/dist/managers/SceneTreeManager.js.map +1 -1
- package/dist/managers/environmentGeometry/ContactShadow.d.ts +4 -4
- package/dist/managers/environmentGeometry/ContactShadow.d.ts.map +1 -1
- package/dist/managers/environmentGeometry/ContactShadow.js +14 -9
- package/dist/managers/environmentGeometry/ContactShadow.js.map +1 -1
- package/dist/managers/environmentGeometry/Grid.d.ts +5 -5
- package/dist/managers/environmentGeometry/Grid.d.ts.map +1 -1
- package/dist/managers/environmentGeometry/Grid.js +28 -13
- package/dist/managers/environmentGeometry/Grid.js.map +1 -1
- package/dist/managers/environmentGeometry/GroundPlane.d.ts +5 -5
- package/dist/managers/environmentGeometry/GroundPlane.d.ts.map +1 -1
- package/dist/managers/environmentGeometry/GroundPlane.js +17 -10
- package/dist/managers/environmentGeometry/GroundPlane.js.map +1 -1
- package/dist/managers/environmentGeometry/GroundPlaneShadow.d.ts +5 -5
- package/dist/managers/environmentGeometry/GroundPlaneShadow.d.ts.map +1 -1
- package/dist/managers/environmentGeometry/GroundPlaneShadow.js +11 -8
- package/dist/managers/environmentGeometry/GroundPlaneShadow.js.map +1 -1
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.d.ts +2 -2
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.d.ts.map +1 -1
- package/dist/managers/postprocessing/GodRaysManager.d.ts +3 -3
- package/dist/managers/postprocessing/GodRaysManager.d.ts.map +1 -1
- package/dist/managers/postprocessing/GodRaysManager.js +5 -5
- package/dist/managers/postprocessing/GodRaysManager.js.map +1 -1
- package/dist/managers/postprocessing/OutlineManager.d.ts +3 -3
- package/dist/managers/postprocessing/OutlineManager.d.ts.map +1 -1
- package/dist/managers/postprocessing/OutlineManager.js +1 -1
- package/dist/managers/postprocessing/OutlineManager.js.map +1 -1
- package/dist/managers/postprocessing/SSAARenderPass.d.ts +12 -12
- package/dist/managers/postprocessing/SSAARenderPass.d.ts.map +1 -1
- package/dist/managers/postprocessing/SSAARenderPass.js +83 -35
- package/dist/managers/postprocessing/SSAARenderPass.js.map +1 -1
- package/dist/managers/postprocessing/SelectiveBloomManager.d.ts +3 -3
- package/dist/managers/postprocessing/SelectiveBloomManager.d.ts.map +1 -1
- package/dist/managers/postprocessing/SelectiveBloomManager.js +1 -1
- package/dist/managers/postprocessing/SelectiveBloomManager.js.map +1 -1
- package/dist/managers/postprocessing/ao/ao/AOEffect.d.ts +5 -5
- package/dist/managers/postprocessing/ao/ao/AOEffect.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/ao/AOEffect.js +43 -34
- package/dist/managers/postprocessing/ao/ao/AOEffect.js.map +1 -1
- package/dist/managers/postprocessing/ao/ao/AOPass.d.ts +2 -2
- package/dist/managers/postprocessing/ao/ao/AOPass.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/ao/AOPass.js +26 -14
- package/dist/managers/postprocessing/ao/ao/AOPass.js.map +1 -1
- package/dist/managers/postprocessing/ao/hbao/HBAOEffect.d.ts +3 -3
- package/dist/managers/postprocessing/ao/hbao/HBAOEffect.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/hbao/HBAOEffect.js +2 -2
- package/dist/managers/postprocessing/ao/hbao/HBAOEffect.js.map +1 -1
- package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.d.ts +2 -2
- package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.js +51 -36
- package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.js.map +1 -1
- package/dist/managers/postprocessing/ao/ssao/SSAOEffect.d.ts +3 -3
- package/dist/managers/postprocessing/ao/ssao/SSAOEffect.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/ssao/SSAOEffect.js +15 -10
- package/dist/managers/postprocessing/ao/ssao/SSAOEffect.js.map +1 -1
- package/dist/managers/postprocessing/ao/utils/shader/basic.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/utils/shader/basic.js.map +1 -1
- package/dist/managers/postprocessing/ao/utils/shader/sampleBlueNoise.d.ts.map +1 -1
- package/dist/managers/postprocessing/ao/utils/shader/sampleBlueNoise.js.map +1 -1
- package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.d.ts +2 -2
- package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.d.ts.map +1 -1
- package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js +43 -35
- package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js.map +1 -1
- package/dist/managers/postprocessing/utils/CopyMaterial.d.ts.map +1 -1
- package/dist/managers/postprocessing/utils/CopyMaterial.js +2 -2
- package/dist/managers/postprocessing/utils/CopyMaterial.js.map +1 -1
- package/dist/managers/postprocessing/utils/CopyShader.d.ts.map +1 -1
- package/dist/managers/postprocessing/utils/CopyShader.js +4 -4
- package/dist/managers/postprocessing/utils/CopyShader.js.map +1 -1
- package/dist/managers/postprocessing/utils/FullScreenQuad.d.ts +1 -1
- package/dist/managers/postprocessing/utils/FullScreenQuad.d.ts.map +1 -1
- package/dist/managers/postprocessing/utils/FullScreenQuad.js +2 -2
- package/dist/managers/postprocessing/utils/FullScreenQuad.js.map +1 -1
- package/dist/managers/postprocessing/utils/NormalPass.d.ts +2 -2
- package/dist/managers/postprocessing/utils/NormalPass.d.ts.map +1 -1
- package/dist/managers/postprocessing/utils/NormalPass.js +3 -3
- package/dist/managers/postprocessing/utils/NormalPass.js.map +1 -1
- package/dist/managers/postprocessing/utils/RenderPass.d.ts +2 -2
- package/dist/managers/postprocessing/utils/RenderPass.d.ts.map +1 -1
- package/dist/managers/postprocessing/utils/RenderPass.js +14 -5
- package/dist/managers/postprocessing/utils/RenderPass.js.map +1 -1
- package/dist/materials/GemMaterial.d.ts +2 -2
- package/dist/materials/GemMaterial.d.ts.map +1 -1
- package/dist/materials/GemMaterial.js +20 -20
- package/dist/materials/GemMaterial.js.map +1 -1
- package/dist/materials/MeshUnlitMaterialParameters.d.ts +1 -1
- package/dist/materials/MeshUnlitMaterialParameters.d.ts.map +1 -1
- package/dist/materials/MultiPointsMaterial.d.ts +1 -1
- package/dist/materials/MultiPointsMaterial.d.ts.map +1 -1
- package/dist/materials/MultiPointsMaterial.js +46 -45
- package/dist/materials/MultiPointsMaterial.js.map +1 -1
- package/dist/materials/SpecularGlossinessMaterial.d.ts +2 -2
- package/dist/materials/SpecularGlossinessMaterial.d.ts.map +1 -1
- package/dist/materials/SpecularGlossinessMaterial.js +47 -47
- package/dist/materials/SpecularGlossinessMaterial.js.map +1 -1
- package/dist/objects/SDBone.d.ts +3 -3
- package/dist/objects/SDBone.d.ts.map +1 -1
- package/dist/objects/SDBone.js.map +1 -1
- package/dist/objects/SDColor.d.ts +2 -2
- package/dist/objects/SDColor.d.ts.map +1 -1
- package/dist/objects/SDColor.js +15 -11
- package/dist/objects/SDColor.js.map +1 -1
- package/dist/objects/SDData.d.ts +1 -1
- package/dist/objects/SDData.d.ts.map +1 -1
- package/dist/objects/SDData.js.map +1 -1
- package/dist/objects/SDObject.d.ts +3 -3
- package/dist/objects/SDObject.d.ts.map +1 -1
- package/dist/objects/SDObject.js.map +1 -1
- package/dist/shaders/PCSS.d.ts.map +1 -1
- package/dist/shaders/PCSS.js.map +1 -1
- package/dist/shaders/gem.d.ts.map +1 -1
- package/dist/shaders/gem.js.map +1 -1
- package/dist/three/CSS2DRenderer.d.ts +1 -1
- package/dist/three/CSS2DRenderer.d.ts.map +1 -1
- package/dist/three/CSS2DRenderer.js +33 -17
- package/dist/three/CSS2DRenderer.js.map +1 -1
- package/dist/three/geometries/TextGeometry.d.ts +1 -1
- package/dist/three/geometries/TextGeometry.d.ts.map +1 -1
- package/dist/three/geometries/TextGeometry.js +3 -2
- package/dist/three/geometries/TextGeometry.js.map +1 -1
- package/dist/three/loaders/RGBELoader.d.ts +1 -1
- package/dist/three/loaders/RGBELoader.d.ts.map +1 -1
- package/dist/three/loaders/RGBELoader.js +59 -46
- package/dist/three/loaders/RGBELoader.js.map +1 -1
- package/dist/types/IThreejsData.d.ts +2 -2
- package/dist/types/IThreejsData.d.ts.map +1 -1
- package/dist/types/ThreejsData.d.ts +3 -3
- package/dist/types/ThreejsData.d.ts.map +1 -1
- package/dist/types/ThreejsData.js.map +1 -1
- package/package.json +63 -63
|
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SSAARenderPass = void 0;
|
|
4
4
|
const postprocessing_1 = require("postprocessing");
|
|
5
5
|
const three_1 = require("three");
|
|
6
|
+
const CopyMaterial_1 = require("./utils/CopyMaterial");
|
|
6
7
|
const CopyShader_1 = require("./utils/CopyShader");
|
|
7
8
|
const FullScreenQuad_1 = require("./utils/FullScreenQuad");
|
|
8
|
-
const CopyMaterial_1 = require("./utils/CopyMaterial");
|
|
9
9
|
let geometry = null;
|
|
10
10
|
/**
|
|
11
11
|
* Returns a shared fullscreen triangle.
|
|
@@ -26,16 +26,16 @@ const getFullscreenTriangle = () => {
|
|
|
26
26
|
return geometry;
|
|
27
27
|
};
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
30
|
-
* Supersample Anti-Aliasing Render Pass
|
|
31
|
-
*
|
|
32
|
-
* This manual approach to SSAA re-renders the scene once for each sample with camera jitter and accumulates the results.
|
|
33
|
-
*
|
|
34
|
-
* References: https://en.wikipedia.org/wiki/Supersampling
|
|
35
|
-
*
|
|
36
|
-
* original implementation from three.js@0.152.2 was modified to work with the postprocessing library
|
|
37
|
-
*
|
|
38
|
-
*/
|
|
29
|
+
*
|
|
30
|
+
* Supersample Anti-Aliasing Render Pass
|
|
31
|
+
*
|
|
32
|
+
* This manual approach to SSAA re-renders the scene once for each sample with camera jitter and accumulates the results.
|
|
33
|
+
*
|
|
34
|
+
* References: https://en.wikipedia.org/wiki/Supersampling
|
|
35
|
+
*
|
|
36
|
+
* original implementation from three.js@0.152.2 was modified to work with the postprocessing library
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
39
39
|
class SSAARenderPass extends postprocessing_1.Pass {
|
|
40
40
|
// #endregion Properties (9)
|
|
41
41
|
// #region Constructors (1)
|
|
@@ -151,8 +151,9 @@ class SSAARenderPass extends postprocessing_1.Pass {
|
|
|
151
151
|
// render the scene multiple times, each slightly jitter offset from the last and accumulate the results.
|
|
152
152
|
for (let i = 0; i < jitterOffsets.length; i++) {
|
|
153
153
|
const jitterOffset = jitterOffsets[i];
|
|
154
|
-
if (this.camera
|
|
155
|
-
|
|
154
|
+
if (this.camera
|
|
155
|
+
.setViewOffset) {
|
|
156
|
+
(this.camera).setViewOffset(viewOffset.fullWidth, viewOffset.fullHeight, viewOffset.offsetX + jitterOffset[0] * 0.0625, viewOffset.offsetY + jitterOffset[1] * 0.0625, // 0.0625 = 1 / 16
|
|
156
157
|
viewOffset.width, viewOffset.height);
|
|
157
158
|
}
|
|
158
159
|
let sampleWeight = baseSampleWeight;
|
|
@@ -186,11 +187,14 @@ class SSAARenderPass extends postprocessing_1.Pass {
|
|
|
186
187
|
this.scene.add(this._fullScreen);
|
|
187
188
|
renderer.render(this.scene, this.camera);
|
|
188
189
|
this.scene.remove(this._fullScreen);
|
|
189
|
-
if (this.camera
|
|
190
|
+
if (this.camera
|
|
191
|
+
.setViewOffset &&
|
|
192
|
+
originalViewOffset.enabled) {
|
|
190
193
|
this.camera.setViewOffset(originalViewOffset.fullWidth, originalViewOffset.fullHeight, originalViewOffset.offsetX, originalViewOffset.offsetY, originalViewOffset.width, originalViewOffset.height);
|
|
191
194
|
}
|
|
192
|
-
else if (this.camera
|
|
193
|
-
|
|
195
|
+
else if (this.camera
|
|
196
|
+
.clearViewOffset) {
|
|
197
|
+
(this.camera).clearViewOffset();
|
|
194
198
|
}
|
|
195
199
|
renderer.autoClear = autoClear;
|
|
196
200
|
renderer.setClearColor(this._oldClearColor, oldClearAlpha);
|
|
@@ -201,34 +205,78 @@ class SSAARenderPass extends postprocessing_1.Pass {
|
|
|
201
205
|
}
|
|
202
206
|
exports.SSAARenderPass = SSAARenderPass;
|
|
203
207
|
const _JitterVectors = [
|
|
208
|
+
[[0, 0]],
|
|
204
209
|
[
|
|
205
|
-
[
|
|
210
|
+
[4, 4],
|
|
211
|
+
[-4, -4],
|
|
206
212
|
],
|
|
207
213
|
[
|
|
208
|
-
[
|
|
214
|
+
[-2, -6],
|
|
215
|
+
[6, -2],
|
|
216
|
+
[-6, 2],
|
|
217
|
+
[2, 6],
|
|
209
218
|
],
|
|
210
219
|
[
|
|
211
|
-
[
|
|
220
|
+
[1, -3],
|
|
221
|
+
[-1, 3],
|
|
222
|
+
[5, 1],
|
|
223
|
+
[-3, -5],
|
|
224
|
+
[-5, 5],
|
|
225
|
+
[-7, -1],
|
|
226
|
+
[3, 7],
|
|
227
|
+
[7, -7],
|
|
212
228
|
],
|
|
213
229
|
[
|
|
214
|
-
[1,
|
|
215
|
-
[-
|
|
230
|
+
[1, 1],
|
|
231
|
+
[-1, -3],
|
|
232
|
+
[-3, 2],
|
|
233
|
+
[4, -1],
|
|
234
|
+
[-5, -2],
|
|
235
|
+
[2, 5],
|
|
236
|
+
[5, 3],
|
|
237
|
+
[3, -5],
|
|
238
|
+
[-2, 6],
|
|
239
|
+
[0, -7],
|
|
240
|
+
[-4, -6],
|
|
241
|
+
[-6, 4],
|
|
242
|
+
[-8, 0],
|
|
243
|
+
[7, -4],
|
|
244
|
+
[6, 7],
|
|
245
|
+
[-7, -8],
|
|
216
246
|
],
|
|
217
247
|
[
|
|
218
|
-
[
|
|
219
|
-
[-
|
|
220
|
-
[-
|
|
221
|
-
[-
|
|
248
|
+
[-4, -7],
|
|
249
|
+
[-7, -5],
|
|
250
|
+
[-3, -5],
|
|
251
|
+
[-5, -4],
|
|
252
|
+
[-1, -4],
|
|
253
|
+
[-2, -2],
|
|
254
|
+
[-6, -1],
|
|
255
|
+
[-4, 0],
|
|
256
|
+
[-7, 1],
|
|
257
|
+
[-1, 2],
|
|
258
|
+
[-6, 3],
|
|
259
|
+
[-3, 3],
|
|
260
|
+
[-7, 6],
|
|
261
|
+
[-3, 6],
|
|
262
|
+
[-5, 7],
|
|
263
|
+
[-1, 7],
|
|
264
|
+
[5, -7],
|
|
265
|
+
[1, -6],
|
|
266
|
+
[6, -5],
|
|
267
|
+
[4, -4],
|
|
268
|
+
[2, -3],
|
|
269
|
+
[7, -2],
|
|
270
|
+
[1, -1],
|
|
271
|
+
[4, -1],
|
|
272
|
+
[2, 1],
|
|
273
|
+
[6, 2],
|
|
274
|
+
[0, 4],
|
|
275
|
+
[4, 4],
|
|
276
|
+
[2, 5],
|
|
277
|
+
[7, 5],
|
|
278
|
+
[5, 6],
|
|
279
|
+
[3, 7],
|
|
222
280
|
],
|
|
223
|
-
[
|
|
224
|
-
[-4, -7], [-7, -5], [-3, -5], [-5, -4],
|
|
225
|
-
[-1, -4], [-2, -2], [-6, -1], [-4, 0],
|
|
226
|
-
[-7, 1], [-1, 2], [-6, 3], [-3, 3],
|
|
227
|
-
[-7, 6], [-3, 6], [-5, 7], [-1, 7],
|
|
228
|
-
[5, -7], [1, -6], [6, -5], [4, -4],
|
|
229
|
-
[2, -3], [7, -2], [1, -1], [4, -1],
|
|
230
|
-
[2, 1], [6, 2], [0, 4], [4, 4],
|
|
231
|
-
[2, 5], [7, 5], [5, 6], [3, 7]
|
|
232
|
-
]
|
|
233
281
|
];
|
|
234
282
|
//# sourceMappingURL=SSAARenderPass.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SSAARenderPass.js","sourceRoot":"","sources":["../../../src/managers/postprocessing/SSAARenderPass.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"SSAARenderPass.js","sourceRoot":"","sources":["../../../src/managers/postprocessing/SSAARenderPass.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ITreeNode } from
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
|
|
2
|
+
import { SelectiveBloomEffect } from "postprocessing";
|
|
3
|
+
import { RenderingEngine } from "../../RenderingEngine";
|
|
4
4
|
export declare class SelectiveBloomManager {
|
|
5
5
|
private readonly _renderingEngine;
|
|
6
6
|
private _selectiveBloomEffect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectiveBloomManager.d.ts","sourceRoot":"","sources":["../../../src/managers/postprocessing/SelectiveBloomManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SelectiveBloomManager.d.ts","sourceRoot":"","sources":["../../../src/managers/postprocessing/SelectiveBloomManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAC9D,OAAO,EAAC,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAEtD,qBAAa,qBAAqB;IAUrB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAP7C,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,oBAAoB,CAAmB;gBAMlB,gBAAgB,EAAE,eAAe;IAMvD,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAKnC,cAAc,IAAI,IAAI;IAKtB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAQzC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB;IAKpD,iCAAiC;CAgBxC"}
|
|
@@ -56,7 +56,7 @@ class SelectiveBloomManager {
|
|
|
56
56
|
updateSelectiveBloomEffectObjects() {
|
|
57
57
|
this._selectiveBloomEffect.selection.clear();
|
|
58
58
|
for (let i = 0; i < this._selectiveBloomNodes.length; i++) {
|
|
59
|
-
this._selectiveBloomNodes[i].convertedObject[this._renderingEngine.id].traverse(o => {
|
|
59
|
+
this._selectiveBloomNodes[i].convertedObject[this._renderingEngine.id].traverse((o) => {
|
|
60
60
|
if (o instanceof THREE.Mesh)
|
|
61
61
|
this._selectiveBloomEffect.selection.add(o);
|
|
62
62
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectiveBloomManager.js","sourceRoot":"","sources":["../../../src/managers/postprocessing/SelectiveBloomManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"SelectiveBloomManager.js","sourceRoot":"","sources":["../../../src/managers/postprocessing/SelectiveBloomManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,6CAA+B;AAG/B,MAAa,qBAAqB;IAMjC,4BAA4B;IAE5B,2BAA2B;IAE3B,YAA6B,gBAAiC;QAAjC,qBAAgB,GAAhB,gBAAgB,CAAiB;QANtD,yBAAoB,GAAgB,EAAE,CAAC;IAMkB,CAAC;IAElE,8BAA8B;IAE9B,6BAA6B;IAEtB,YAAY,CAAC,IAAe;QAClC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC1C,CAAC;IAEM,cAAc;QACpB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC1C,CAAC;IAEM,eAAe,CAAC,IAAe;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAE7D,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACzC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC;IACrB,CAAC;IAEM,SAAS,CAAC,oBAA0C;QAC1D,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC;QAClD,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC1C,CAAC;IAEM,iCAAiC;QACvC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAEzD,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,eAAe,CAC3C,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAEzB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChB,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI;oBAC1B,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;SACH;IACF,CAAC;CAGD;AAvDD,sDAuDC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Effect, EffectComposer } from
|
|
2
|
-
import { Camera, Color, Scene, WebGLRenderer } from
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { Effect, EffectComposer } from "postprocessing";
|
|
2
|
+
import { Camera, Color, Scene, WebGLRenderer } from "three";
|
|
3
|
+
import { NormalPass } from "../../utils/NormalPass";
|
|
4
|
+
import { PoissionDenoisePass } from "../poissionDenoise/PoissionDenoisePass";
|
|
5
|
+
import { AOPass } from "./AOPass";
|
|
6
6
|
declare class AOEffect extends Effect {
|
|
7
7
|
static DefaultOptions: {
|
|
8
8
|
iterations: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AOEffect.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOEffect.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"AOEffect.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOEffect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,cAAc,EAAC,MAAM,gBAAgB,CAAC;AACtD,OAAO,EACN,MAAM,EACN,KAAK,EACL,KAAK,EAGL,aAAa,EACb,MAAM,OAAO,CAAC;AACf,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAgBhC,cAAM,QAAS,SAAQ,MAAM;IAG5B,OAAc,cAAc;;;;;;;;;;;;;;;;;;;MAAoB;IAEzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ;;;;MAA6C;IAC5D,UAAU,CAAC,EAAE,UAAU,CAAC;IACjB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,eAAe,SAAK;gBAO1B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAoB;IA8C9C,mBAAmB,CAAC,OAAO,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC;IAwFrD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAyBrC,MAAM,CAAC,QAAQ,EAAE,aAAa;CA0BrC;AAED,OAAO,EAAC,QAAQ,EAAC,CAAC"}
|
|
@@ -3,22 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AOEffect = void 0;
|
|
4
4
|
const postprocessing_1 = require("postprocessing");
|
|
5
5
|
const three_1 = require("three");
|
|
6
|
+
const NormalPass_1 = require("../../utils/NormalPass");
|
|
6
7
|
const PoissionDenoisePass_1 = require("../poissionDenoise/PoissionDenoisePass");
|
|
7
8
|
const ao_compose_1 = require("./shader/ao_compose");
|
|
8
|
-
const
|
|
9
|
-
const defaultAOOptions = Object.assign({ resolutionScale: 1, spp: 8, distancePower: 1, power: 2, bias: 40, thickness: 0.075, color: new three_1.Color('black'), useNormalPass: false, velocityDepthNormalPass: null }, PoissionDenoisePass_1.PoissionDenoisePass.DefaultOptions);
|
|
9
|
+
const defaultAOOptions = Object.assign({ resolutionScale: 1, spp: 8, distancePower: 1, power: 2, bias: 40, thickness: 0.075, color: new three_1.Color("black"), useNormalPass: false, velocityDepthNormalPass: null }, PoissionDenoisePass_1.PoissionDenoisePass.DefaultOptions);
|
|
10
10
|
class AOEffect extends postprocessing_1.Effect {
|
|
11
11
|
// #endregion Properties (7)
|
|
12
12
|
// #region Constructors (1)
|
|
13
13
|
constructor(composer, camera, scene, aoPass, options = defaultAOOptions) {
|
|
14
14
|
var _a, _b;
|
|
15
|
-
super(
|
|
15
|
+
super("AOEffect", ao_compose_1.ao_compose, {
|
|
16
16
|
uniforms: new Map([
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
])
|
|
17
|
+
["inputTexture", new three_1.Uniform(null)],
|
|
18
|
+
["depthTexture", new three_1.Uniform(null)],
|
|
19
|
+
["power", new three_1.Uniform(0)],
|
|
20
|
+
["color", new three_1.Uniform(new three_1.Color("black"))],
|
|
21
|
+
]),
|
|
22
22
|
});
|
|
23
23
|
this.lastSize = { width: 0, height: 0, resolutionScale: 0 };
|
|
24
24
|
this.resolutionScale = 1;
|
|
@@ -28,11 +28,11 @@ class AOEffect extends postprocessing_1.Effect {
|
|
|
28
28
|
this.normalPass = new NormalPass_1.NormalPass(scene, camera);
|
|
29
29
|
const normalTexture = (_a = options.normalTexture) !== null && _a !== void 0 ? _a : (_b = this.normalPass) === null || _b === void 0 ? void 0 : _b.texture;
|
|
30
30
|
this.aoPass.fullscreenMaterial.uniforms.normalTexture.value = normalTexture;
|
|
31
|
-
this.aoPass.fullscreenMaterial.defines.useNormalTexture =
|
|
31
|
+
this.aoPass.fullscreenMaterial.defines.useNormalTexture = "";
|
|
32
32
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
33
33
|
this.aoPass.fullscreenMaterial.uniforms.depthTexture.value = this.normalPass.depthTexture;
|
|
34
34
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
|
-
this.uniforms.get(
|
|
35
|
+
this.uniforms.get("depthTexture").value = this.normalPass.depthTexture;
|
|
36
36
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
37
37
|
this.poissionDenoisePass = new PoissionDenoisePass_1.PoissionDenoisePass(camera, this.aoPass.texture, this.normalPass.depthTexture);
|
|
38
38
|
this.makeOptionsReactive(options);
|
|
@@ -50,42 +50,47 @@ class AOEffect extends postprocessing_1.Effect {
|
|
|
50
50
|
return;
|
|
51
51
|
options[key] = value;
|
|
52
52
|
switch (key) {
|
|
53
|
-
case
|
|
53
|
+
case "spp":
|
|
54
54
|
this.aoPass.fullscreenMaterial.defines.spp = value.toFixed(0);
|
|
55
55
|
this.aoPass.fullscreenMaterial.needsUpdate = true;
|
|
56
56
|
break;
|
|
57
|
-
case
|
|
57
|
+
case "distance":
|
|
58
58
|
this.aoPass.fullscreenMaterial.uniforms.aoDistance.value = value;
|
|
59
|
-
this.poissionDenoisePass.fullscreenMaterial.uniforms[
|
|
59
|
+
this.poissionDenoisePass.fullscreenMaterial.uniforms["distance"].value = Math.max(value, 0.0001);
|
|
60
60
|
break;
|
|
61
|
-
case
|
|
61
|
+
case "resolutionScale":
|
|
62
62
|
this.setSize(this.lastSize.width, this.lastSize.height);
|
|
63
63
|
break;
|
|
64
|
-
case
|
|
65
|
-
this.uniforms.get(
|
|
64
|
+
case "power":
|
|
65
|
+
this.uniforms.get("power").value = value;
|
|
66
66
|
break;
|
|
67
|
-
case
|
|
68
|
-
this.uniforms
|
|
67
|
+
case "color":
|
|
68
|
+
this.uniforms
|
|
69
|
+
.get("color")
|
|
70
|
+
.value.copy(new three_1.Color(value));
|
|
69
71
|
break;
|
|
70
72
|
// denoiser
|
|
71
|
-
case
|
|
72
|
-
case
|
|
73
|
-
case
|
|
74
|
-
case
|
|
73
|
+
case "iterations":
|
|
74
|
+
case "radius":
|
|
75
|
+
case "rings":
|
|
76
|
+
case "samples":
|
|
75
77
|
this.poissionDenoisePass[key] = value;
|
|
76
78
|
break;
|
|
77
|
-
case
|
|
78
|
-
case
|
|
79
|
-
case
|
|
79
|
+
case "lumaPhi":
|
|
80
|
+
case "depthPhi":
|
|
81
|
+
case "normalPhi":
|
|
80
82
|
this.poissionDenoisePass.fullscreenMaterial.uniforms[key].value = Math.max(value, 0.0001);
|
|
81
83
|
break;
|
|
82
84
|
default:
|
|
83
|
-
if (key in
|
|
84
|
-
this.aoPass
|
|
85
|
+
if (key in
|
|
86
|
+
this.aoPass
|
|
87
|
+
.fullscreenMaterial.uniforms) {
|
|
88
|
+
this.aoPass
|
|
89
|
+
.fullscreenMaterial.uniforms[key].value = value;
|
|
85
90
|
}
|
|
86
91
|
}
|
|
87
92
|
},
|
|
88
|
-
configurable: true
|
|
93
|
+
configurable: true,
|
|
89
94
|
});
|
|
90
95
|
// apply all uniforms and defines
|
|
91
96
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -107,21 +112,25 @@ class AOEffect extends postprocessing_1.Effect {
|
|
|
107
112
|
this.lastSize = {
|
|
108
113
|
width,
|
|
109
114
|
height,
|
|
110
|
-
resolutionScale: this.resolutionScale
|
|
115
|
+
resolutionScale: this.resolutionScale,
|
|
111
116
|
};
|
|
112
117
|
}
|
|
113
118
|
update(renderer) {
|
|
114
119
|
var _a;
|
|
115
|
-
if (
|
|
116
|
-
|
|
117
|
-
this.aoPass.fullscreenMaterial.
|
|
120
|
+
if ("animatedNoise" in
|
|
121
|
+
this.aoPass.fullscreenMaterial.defines) {
|
|
122
|
+
delete this.aoPass.fullscreenMaterial.defines
|
|
123
|
+
.animatedNoise;
|
|
124
|
+
this.aoPass.fullscreenMaterial.needsUpdate =
|
|
125
|
+
true;
|
|
118
126
|
}
|
|
119
127
|
// set input texture
|
|
120
128
|
if (this.poissionDenoisePass.iterations > 0) {
|
|
121
|
-
this.uniforms.get(
|
|
129
|
+
this.uniforms.get("inputTexture").value =
|
|
130
|
+
this.poissionDenoisePass.texture;
|
|
122
131
|
}
|
|
123
132
|
else {
|
|
124
|
-
this.uniforms.get(
|
|
133
|
+
this.uniforms.get("inputTexture").value = this.aoPass.texture;
|
|
125
134
|
}
|
|
126
135
|
(_a = this.normalPass) === null || _a === void 0 ? void 0 : _a.render(renderer);
|
|
127
136
|
this.aoPass.render(renderer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AOEffect.js","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOEffect.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"AOEffect.js","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOEffect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Pass } from
|
|
2
|
-
import { Camera, Scene,
|
|
1
|
+
import { Pass } from "postprocessing";
|
|
2
|
+
import { Camera, Scene, WebGLRenderer, WebGLRenderTarget } from "three";
|
|
3
3
|
declare class AOPass extends Pass {
|
|
4
4
|
private _camera;
|
|
5
5
|
private _scene;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AOPass.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOPass.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"AOPass.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOPass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EACN,MAAM,EAKN,KAAK,EAGL,aAAa,EACb,iBAAiB,EACjB,MAAM,OAAO,CAAC;AAMf,cAAM,MAAO,SAAQ,IAAI;IAGxB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,MAAM,CAAQ;IAEf,YAAY,EAAE,iBAAiB,CAAC;gBAM3B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM;IAkEhE,IAAW,OAAO,4BAEjB;IAMM,MAAM,CAAC,QAAQ,EAAE,aAAa;IA4D9B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAU5C;AAED,OAAO,EAAC,MAAM,EAAC,CAAC"}
|
|
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AOPass = void 0;
|
|
4
4
|
const postprocessing_1 = require("postprocessing");
|
|
5
5
|
const three_1 = require("three");
|
|
6
|
+
const PoissionDenoisePass_1 = require("../poissionDenoise/PoissionDenoisePass");
|
|
6
7
|
const basic_1 = require("../utils/shader/basic");
|
|
7
8
|
const sampleBlueNoise_1 = require("../utils/shader/sampleBlueNoise");
|
|
8
|
-
const PoissionDenoisePass_1 = require("../poissionDenoise/PoissionDenoisePass");
|
|
9
9
|
// a general AO pass that can be used for any AO algorithm
|
|
10
10
|
class AOPass extends postprocessing_1.Pass {
|
|
11
11
|
// #endregion Properties (3)
|
|
@@ -16,9 +16,9 @@ class AOPass extends postprocessing_1.Pass {
|
|
|
16
16
|
this._scene = scene;
|
|
17
17
|
this.renderTarget = new three_1.WebGLRenderTarget(1, 1, {
|
|
18
18
|
type: three_1.HalfFloatType,
|
|
19
|
-
depthBuffer: false
|
|
19
|
+
depthBuffer: false,
|
|
20
20
|
});
|
|
21
|
-
const finalFragmentShader = fragmentShader.replace(
|
|
21
|
+
const finalFragmentShader = fragmentShader.replace("#include <sampleBlueNoise>", sampleBlueNoise_1.sampleBlueNoise);
|
|
22
22
|
this.fullscreenMaterial = new three_1.ShaderMaterial({
|
|
23
23
|
fragmentShader: finalFragmentShader,
|
|
24
24
|
vertexShader: basic_1.basic,
|
|
@@ -29,7 +29,9 @@ class AOPass extends postprocessing_1.Pass {
|
|
|
29
29
|
cameraFar: { value: 0 },
|
|
30
30
|
viewMatrix: { value: this._camera.matrixWorldInverse },
|
|
31
31
|
projectionViewMatrix: { value: new three_1.Matrix4() },
|
|
32
|
-
projectionMatrixInverse: {
|
|
32
|
+
projectionMatrixInverse: {
|
|
33
|
+
value: this._camera.projectionMatrixInverse,
|
|
34
|
+
},
|
|
33
35
|
cameraMatrixWorld: { value: this._camera.matrixWorld },
|
|
34
36
|
texSize: { value: new three_1.Vector2() },
|
|
35
37
|
blueNoiseTexture: { value: null },
|
|
@@ -39,19 +41,21 @@ class AOPass extends postprocessing_1.Pass {
|
|
|
39
41
|
bias: { value: 0 },
|
|
40
42
|
thickness: { value: 0 },
|
|
41
43
|
power: { value: 0 },
|
|
42
|
-
frame: { value: 0 }
|
|
44
|
+
frame: { value: 0 },
|
|
43
45
|
},
|
|
44
46
|
blending: three_1.NoBlending,
|
|
45
47
|
depthWrite: false,
|
|
46
48
|
depthTest: false,
|
|
47
|
-
toneMapped: false
|
|
49
|
+
toneMapped: false,
|
|
48
50
|
});
|
|
49
51
|
if (PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture) {
|
|
50
|
-
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
52
|
+
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
53
|
+
PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture;
|
|
51
54
|
}
|
|
52
55
|
else {
|
|
53
56
|
PoissionDenoisePass_1.PoissionDenoisePass.loadBlueNoiseTexture().then(() => {
|
|
54
|
-
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
57
|
+
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
58
|
+
PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture;
|
|
55
59
|
});
|
|
56
60
|
}
|
|
57
61
|
}
|
|
@@ -64,24 +68,32 @@ class AOPass extends postprocessing_1.Pass {
|
|
|
64
68
|
// #region Public Methods (2)
|
|
65
69
|
render(renderer) {
|
|
66
70
|
const spp = +this.fullscreenMaterial.defines.spp;
|
|
67
|
-
this.fullscreenMaterial.uniforms.frame.value =
|
|
68
|
-
|
|
69
|
-
|
|
71
|
+
this.fullscreenMaterial.uniforms.frame.value =
|
|
72
|
+
(this.fullscreenMaterial.uniforms.frame.value +
|
|
73
|
+
spp) %
|
|
74
|
+
65536;
|
|
75
|
+
this.fullscreenMaterial.uniforms.cameraNear.value =
|
|
76
|
+
this._camera.near;
|
|
77
|
+
this.fullscreenMaterial.uniforms.cameraFar.value =
|
|
78
|
+
this._camera.far;
|
|
70
79
|
this.fullscreenMaterial.uniforms.projectionViewMatrix.value.multiplyMatrices(this._camera.projectionMatrix, this._camera.matrixWorldInverse);
|
|
71
|
-
const noiseTexture = this.fullscreenMaterial
|
|
80
|
+
const noiseTexture = this.fullscreenMaterial
|
|
81
|
+
.uniforms.blueNoiseTexture.value;
|
|
72
82
|
if (noiseTexture) {
|
|
73
83
|
const { width, height } = noiseTexture.source.data;
|
|
74
84
|
this.fullscreenMaterial.uniforms.blueNoiseRepeat.value.set(this.renderTarget.width / width, this.renderTarget.height / height);
|
|
75
85
|
}
|
|
76
86
|
else {
|
|
77
87
|
if (PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture) {
|
|
78
|
-
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
88
|
+
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
89
|
+
PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture;
|
|
79
90
|
const { width, height } = PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture.source.data;
|
|
80
91
|
this.fullscreenMaterial.uniforms.blueNoiseRepeat.value.set(this.renderTarget.width / width, this.renderTarget.height / height);
|
|
81
92
|
}
|
|
82
93
|
else {
|
|
83
94
|
PoissionDenoisePass_1.PoissionDenoisePass.loadBlueNoiseTexture().then(() => {
|
|
84
|
-
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
95
|
+
this.fullscreenMaterial.uniforms.blueNoiseTexture.value =
|
|
96
|
+
PoissionDenoisePass_1.PoissionDenoisePass.blueNoiseTexture;
|
|
85
97
|
});
|
|
86
98
|
}
|
|
87
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AOPass.js","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOPass.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"AOPass.js","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/ao/AOPass.ts"],"names":[],"mappings":";;;AAAA,mDAAoC;AACpC,iCAWe;AACf,gFAA2E;AAC3E,iDAA4D;AAC5D,qEAAgE;AAEhE,0DAA0D;AAC1D,MAAM,MAAO,SAAQ,qBAAI;IAQxB,4BAA4B;IAE5B,2BAA2B;IAE3B,YAAY,MAAc,EAAE,KAAY,EAAE,cAAsB;QAC/D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAA2B,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE;YAC/C,IAAI,EAAE,qBAAa;YACnB,WAAW,EAAE,KAAK;SAClB,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,CACjD,4BAA4B,EAC5B,iCAAe,CACf,CAAC;QAEF,IAAI,CAAC,kBAAkB,GAAG,IAAI,sBAAc,CAAC;YAC5C,cAAc,EAAE,mBAAmB;YACnC,YAAY,EAAZ,aAAY;YAEZ,QAAQ,EAAE;gBACT,YAAY,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC;gBAC3B,aAAa,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC;gBAC5B,UAAU,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACtB,SAAS,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACrB,UAAU,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAC;gBACpD,oBAAoB,EAAE,EAAC,KAAK,EAAE,IAAI,eAAO,EAAE,EAAC;gBAC5C,uBAAuB,EAAE;oBACxB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,uBAAuB;iBAC3C;gBACD,iBAAiB,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAC;gBACpD,OAAO,EAAE,EAAC,KAAK,EAAE,IAAI,eAAO,EAAE,EAAC;gBAC/B,gBAAgB,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC;gBAC/B,eAAe,EAAE,EAAC,KAAK,EAAE,IAAI,eAAO,EAAE,EAAC;gBACvC,UAAU,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACtB,aAAa,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACzB,IAAI,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBAChB,SAAS,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACrB,KAAK,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;gBACjB,KAAK,EAAE,EAAC,KAAK,EAAE,CAAC,EAAC;aACjB;YAED,QAAQ,EAAE,kBAAU;YACpB,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,IAAI,yCAAmB,CAAC,gBAAgB,EAAE;YAExC,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK;gBAChC,yCAAmB,CAAC,gBAAgB,CAAC;SACtC;aAAM;YACN,yCAAmB,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAEnD,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK;oBAChC,yCAAmB,CAAC,gBAAgB,CAAC;YACvC,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAED,8BAA8B;IAE9B,+BAA+B;IAE/B,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,kCAAkC;IAElC,6BAA6B;IAEtB,MAAM,CAAC,QAAuB;QACpC,MAAM,GAAG,GAAG,CAAE,IAAI,CAAC,kBAAqC,CAAC,OAAO,CAAC,GAAG,CAAC;QAEpE,IAAI,CAAC,kBAAqC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK;YAC/D,CAAE,IAAI,CAAC,kBAAqC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK;gBAChE,GAAG,CAAC;gBACL,KAAK,CAAC;QAEN,IAAI,CAAC,kBAAqC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK;YACpE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAClB,IAAI,CAAC,kBAAqC,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK;YACnE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QAGjB,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,oBAAoB,CAAC,KAAK,CAAC,gBAAgB,CACrD,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAC7B,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAC/B,CAAC;QAEF,MAAM,YAAY,GAAI,IAAI,CAAC,kBAAqC;aAC9D,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAClC,IAAI,YAAY,EAAE;YACjB,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC;YAGhD,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CACnC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,EAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,MAAM,CACjC,CAAC;SACF;aAAM;YACN,IAAI,yCAAmB,CAAC,gBAAgB,EAAE;gBAExC,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK;oBAChC,yCAAmB,CAAC,gBAAgB,CAAC;gBACtC,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GACpB,yCAAmB,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC;gBAGjD,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CACnC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,EAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,MAAM,CACjC,CAAC;aACF;iBAAM;gBACN,yCAAmB,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;oBAEnD,IAAI,CAAC,kBACL,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK;wBAChC,yCAAmB,CAAC,gBAAgB,CAAC;gBACvC,CAAC,CAAC,CAAC;aACH;SACD;QAED,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAEM,OAAO,CAAC,KAAa,EAAE,MAAc;QAC3C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAExC,IAAI,CAAC,kBAAqC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CACrE,IAAI,CAAC,YAAY,CAAC,KAAK,EACvB,IAAI,CAAC,YAAY,CAAC,MAAM,CACxB,CAAC;IACH,CAAC;CAGD;AAEO,wBAAM"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { EffectComposer } from
|
|
2
|
-
import { Camera, Scene } from
|
|
3
|
-
import { AOEffect } from
|
|
1
|
+
import { EffectComposer } from "postprocessing";
|
|
2
|
+
import { Camera, Scene } from "three";
|
|
3
|
+
import { AOEffect } from "../ao/AOEffect";
|
|
4
4
|
declare class HBAOEffect extends AOEffect {
|
|
5
5
|
lastSize: {
|
|
6
6
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HBAOEffect.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/hbao/HBAOEffect.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"HBAOEffect.d.ts","sourceRoot":"","sources":["../../../../../src/managers/postprocessing/ao/hbao/HBAOEffect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAC,MAAM,EAAE,KAAK,EAAC,MAAM,OAAO,CAAC;AACpC,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAqBxC,cAAM,UAAW,SAAQ,QAAQ;IAGzB,QAAQ;;;;MAA6C;gBAO3D,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,OAAO,GAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAA2B;CAU5D;AAED,OAAO,EAAC,UAAU,EAAC,CAAC"}
|