@needle-tools/engine 4.6.0 → 4.6.1-next.cd98b8c
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/CHANGELOG.md +6 -0
- package/dist/generateMeshBVH.worker-BaNp_Xtp.js +25 -0
- package/dist/{gltf-progressive-Bm9eEfgu.min.js → gltf-progressive-Bl4okF1b.min.js} +1 -1
- package/dist/{gltf-progressive-GjIqwSG3.js → gltf-progressive-DSpdn0QT.js} +2 -2
- package/dist/{gltf-progressive-Dn6o99rH.umd.cjs → gltf-progressive-P8b8a0qY.umd.cjs} +1 -1
- package/dist/{needle-engine.bundle-DsrPZ9gj.js → needle-engine.bundle-BOiTKp9l.js} +8027 -7961
- package/dist/{needle-engine.bundle-CoJqbtmp.umd.cjs → needle-engine.bundle-ClaRVK0x.umd.cjs} +152 -148
- package/dist/needle-engine.bundle-Dq1fvtLi.min.js +1563 -0
- package/dist/needle-engine.js +343 -342
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{postprocessing-CRQa6Qxn.umd.cjs → postprocessing-CjW23fio.umd.cjs} +18 -18
- package/dist/{postprocessing-D6W1EyZ-.js → postprocessing-DYLNOL3W.js} +4 -3
- package/dist/{postprocessing-DF8AlRgW.min.js → postprocessing-xYQWCHFu.min.js} +26 -26
- package/dist/{three-DMrv-4ar.umd.cjs → three-B_hneGZr.umd.cjs} +4 -4
- package/dist/{three-Bz6X1mrw.js → three-DrqIzZTH.js} +4198 -4198
- package/dist/{three-Boa-jOq-.min.js → three-DuDKwKB8.min.js} +33 -33
- package/dist/{three-examples-GggCDHv0.js → three-examples-B50TT3Iu.js} +5 -5
- package/dist/{three-examples-DuVhxqft.min.js → three-examples-DaDLBuy6.min.js} +14 -14
- package/dist/{three-examples-C7ryg8vN.umd.cjs → three-examples-X3OadjXB.umd.cjs} +3 -3
- package/dist/{three-mesh-ui-CY6Izc7C.min.js → three-mesh-ui-B3p3gyUz.min.js} +1 -1
- package/dist/{three-mesh-ui-CwlN0FUC.umd.cjs → three-mesh-ui-CQiIQIlA.umd.cjs} +1 -1
- package/dist/{three-mesh-ui-CLNOfsWn.js → three-mesh-ui-CxuWt7m-.js} +1 -1
- package/dist/{vendor-zxXa3Dmr.min.js → vendor-BlSxe9JJ.min.js} +3 -3
- package/dist/{vendor-BSD1RQIh.js → vendor-BmYIgaS1.js} +3 -3
- package/dist/{vendor-DHr4aqIZ.umd.cjs → vendor-Cavtu3CP.umd.cjs} +3 -3
- package/lib/engine/engine_assetdatabase.js +3 -1
- package/lib/engine/engine_assetdatabase.js.map +1 -1
- package/lib/engine/engine_context.d.ts +2 -2
- package/lib/engine/engine_context.js +11 -10
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_utils_screenshot.d.ts +1 -1
- package/lib/engine/engine_utils_screenshot.js +11 -2
- package/lib/engine/engine_utils_screenshot.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.d.ts +2 -1
- package/lib/engine-components/ReflectionProbe.js +4 -1
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/Renderer.js +9 -5
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Antialiasing.js +2 -1
- package/lib/engine-components/postprocessing/Effects/Antialiasing.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/BloomEffect.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/BloomEffect.js +3 -0
- package/lib/engine-components/postprocessing/Effects/BloomEffect.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js +10 -6
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js.map +1 -1
- package/lib/engine-components/postprocessing/PostProcessingEffect.d.ts +18 -0
- package/lib/engine-components/postprocessing/PostProcessingEffect.js +20 -1
- package/lib/engine-components/postprocessing/PostProcessingEffect.js.map +1 -1
- package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +11 -3
- package/lib/engine-components/postprocessing/PostProcessingHandler.js +122 -118
- package/lib/engine-components/postprocessing/PostProcessingHandler.js.map +1 -1
- package/lib/engine-components/postprocessing/Volume.d.ts +2 -1
- package/lib/engine-components/postprocessing/Volume.js +16 -6
- package/lib/engine-components/postprocessing/Volume.js.map +1 -1
- package/lib/engine-components/postprocessing/index.d.ts +1 -0
- package/lib/engine-components/postprocessing/index.js +1 -0
- package/lib/engine-components/postprocessing/index.js.map +1 -1
- package/lib/engine-components/postprocessing/utils.d.ts +38 -0
- package/lib/engine-components/postprocessing/utils.js +98 -0
- package/lib/engine-components/postprocessing/utils.js.map +1 -1
- package/package.json +2 -2
- package/plugins/vite/dependency-watcher.js +8 -2
- package/src/engine/engine_assetdatabase.ts +3 -1
- package/src/engine/engine_context.ts +14 -11
- package/src/engine/engine_utils_screenshot.ts +13 -3
- package/src/engine-components/ReflectionProbe.ts +5 -1
- package/src/engine-components/Renderer.ts +10 -7
- package/src/engine-components/postprocessing/Effects/Antialiasing.ts +2 -1
- package/src/engine-components/postprocessing/Effects/BloomEffect.ts +4 -2
- package/src/engine-components/postprocessing/Effects/Tonemapping.ts +9 -7
- package/src/engine-components/postprocessing/PostProcessingEffect.ts +21 -1
- package/src/engine-components/postprocessing/PostProcessingHandler.ts +142 -124
- package/src/engine-components/postprocessing/Volume.ts +18 -9
- package/src/engine-components/postprocessing/index.ts +1 -0
- package/src/engine-components/postprocessing/utils.ts +118 -2
- package/dist/generateMeshBVH.worker-Cdfpaq5W.js +0 -25
- package/dist/needle-engine.bundle-BDO_N7gN.min.js +0 -1559
|
@@ -3,9 +3,9 @@ import { showBalloonWarning } from "../../engine/debug/index.js";
|
|
|
3
3
|
// import { internal_SetSharpeningEffectModule } from "./Effects/Sharpening.js";
|
|
4
4
|
import { MODULES } from "../../engine/engine_modules.js";
|
|
5
5
|
import { getParam } from "../../engine/engine_utils.js";
|
|
6
|
+
import { orderEffects } from "./utils.js";
|
|
6
7
|
globalThis["NEEDLE_USE_POSTPROCESSING"] = globalThis["NEEDLE_USE_POSTPROCESSING"] !== undefined ? globalThis["NEEDLE_USE_POSTPROCESSING"] : true;
|
|
7
8
|
const debug = getParam("debugpost");
|
|
8
|
-
const dontMergePasses = getParam("debugpostpasses");
|
|
9
9
|
const activeKey = Symbol("needle:postprocessing-handler");
|
|
10
10
|
const autoclearSetting = Symbol("needle:previous-autoclear-state");
|
|
11
11
|
/**
|
|
@@ -44,7 +44,7 @@ export class PostProcessingHandler {
|
|
|
44
44
|
this._isActive = true;
|
|
45
45
|
return this.onApply(this.context, components);
|
|
46
46
|
}
|
|
47
|
-
unapply() {
|
|
47
|
+
unapply(dispose = true) {
|
|
48
48
|
if (debug)
|
|
49
49
|
console.log("Unapplying postprocessing effects");
|
|
50
50
|
this._isActive = false;
|
|
@@ -58,19 +58,22 @@ export class PostProcessingHandler {
|
|
|
58
58
|
const active = context[activeKey];
|
|
59
59
|
if (active === this) {
|
|
60
60
|
delete context[activeKey];
|
|
61
|
+
// Restore the auto clear setting
|
|
62
|
+
if (typeof context.renderer[autoclearSetting] === "boolean") {
|
|
63
|
+
context.renderer.autoClear = context.renderer[autoclearSetting];
|
|
64
|
+
}
|
|
61
65
|
}
|
|
66
|
+
this._composer?.removeAllPasses();
|
|
67
|
+
if (dispose)
|
|
68
|
+
this._composer?.dispose();
|
|
62
69
|
if (context.composer === this._composer) {
|
|
63
|
-
context.composer?.dispose();
|
|
64
70
|
context.composer = null;
|
|
65
71
|
}
|
|
66
|
-
if (typeof context.renderer[autoclearSetting] === "boolean") {
|
|
67
|
-
context.renderer.autoClear = context.renderer[autoclearSetting];
|
|
68
|
-
}
|
|
69
72
|
}
|
|
70
73
|
dispose() {
|
|
71
|
-
this.unapply();
|
|
74
|
+
this.unapply(true);
|
|
72
75
|
for (const effect of this._effects) {
|
|
73
|
-
effect.dispose();
|
|
76
|
+
effect.effect.dispose();
|
|
74
77
|
}
|
|
75
78
|
this._effects.length = 0;
|
|
76
79
|
this._composer = null;
|
|
@@ -118,10 +121,19 @@ export class PostProcessingHandler {
|
|
|
118
121
|
if (!res)
|
|
119
122
|
continue;
|
|
120
123
|
if (Array.isArray(res)) {
|
|
121
|
-
|
|
124
|
+
for (const effect of res) {
|
|
125
|
+
this._effects.push({
|
|
126
|
+
effect,
|
|
127
|
+
priority: component.priority
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
this._effects.push({
|
|
133
|
+
effect: res,
|
|
134
|
+
priority: component.priority
|
|
135
|
+
});
|
|
122
136
|
}
|
|
123
|
-
else
|
|
124
|
-
this._effects.push(res);
|
|
125
137
|
}
|
|
126
138
|
}
|
|
127
139
|
else {
|
|
@@ -133,16 +145,27 @@ export class PostProcessingHandler {
|
|
|
133
145
|
if (this.context.renderer.toneMapping != NoToneMapping) {
|
|
134
146
|
if (!this._effects.find(e => e instanceof MODULES.POSTPROCESSING.MODULE.ToneMappingEffect)) {
|
|
135
147
|
const tonemapping = new MODULES.POSTPROCESSING.MODULE.ToneMappingEffect();
|
|
136
|
-
this._effects.push(tonemapping);
|
|
148
|
+
this._effects.push({ effect: tonemapping });
|
|
137
149
|
}
|
|
138
150
|
}
|
|
139
151
|
this.applyEffects(context);
|
|
140
152
|
}
|
|
153
|
+
_anyPassHasDepth = false;
|
|
154
|
+
_anyPassHasNormal = false;
|
|
155
|
+
_hasSmaaEffect = false;
|
|
156
|
+
get anyPassHasDepth() { return this._anyPassHasDepth; }
|
|
157
|
+
get anyPassHasNormal() { return this._anyPassHasNormal; }
|
|
158
|
+
get hasSmaaEffect() { return this._hasSmaaEffect; }
|
|
141
159
|
/** Build composer passes */
|
|
142
160
|
applyEffects(context) {
|
|
161
|
+
// Reset state
|
|
162
|
+
this._anyPassHasDepth = false;
|
|
163
|
+
this._anyPassHasNormal = false;
|
|
164
|
+
this._hasSmaaEffect = false;
|
|
143
165
|
const effectsOrPasses = this._effects;
|
|
144
|
-
if (effectsOrPasses.length <= 0)
|
|
166
|
+
if (effectsOrPasses.length <= 0) {
|
|
145
167
|
return;
|
|
168
|
+
}
|
|
146
169
|
const camera = context.mainCameraComponent;
|
|
147
170
|
const renderer = context.renderer;
|
|
148
171
|
const scene = context.scene;
|
|
@@ -150,7 +173,16 @@ export class PostProcessingHandler {
|
|
|
150
173
|
// Store the auto clear setting because the postprocessing composer just disables it
|
|
151
174
|
// and when we disable postprocessing we want to restore the original setting
|
|
152
175
|
// https://github.com/pmndrs/postprocessing/blob/271944b74b543a5b743a62803a167b60cc6bb4ee/src/core/EffectComposer.js#L230C12-L230C12
|
|
176
|
+
// First we need to get the previously set autoClear setting, if it exists
|
|
177
|
+
if (typeof renderer[autoclearSetting] === "boolean") {
|
|
178
|
+
renderer.autoClear = renderer[autoclearSetting];
|
|
179
|
+
}
|
|
153
180
|
renderer[autoclearSetting] = renderer.autoClear;
|
|
181
|
+
for (const ef of effectsOrPasses) {
|
|
182
|
+
if (ef instanceof MODULES.POSTPROCESSING.MODULE.SMAAEffect) {
|
|
183
|
+
this._hasSmaaEffect = true;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
154
186
|
// create composer and set active on context
|
|
155
187
|
if (!this._composer) {
|
|
156
188
|
// const hdrRenderTarget = new WebGLRenderTarget(window.innerWidth, window.innerHeight, { type: HalfFloatType });
|
|
@@ -167,6 +199,7 @@ export class PostProcessingHandler {
|
|
|
167
199
|
composer.setMainCamera(cam);
|
|
168
200
|
composer.setRenderer(renderer);
|
|
169
201
|
composer.setMainScene(scene);
|
|
202
|
+
composer.autoRenderToScreen = true; // Must be enabled because it might be disabled during addPass by the composer itself (depending on the effect's settings or order)
|
|
170
203
|
for (const prev of composer.passes)
|
|
171
204
|
prev.dispose();
|
|
172
205
|
composer.removeAllPasses();
|
|
@@ -175,57 +208,88 @@ export class PostProcessingHandler {
|
|
|
175
208
|
screenpass.name = "Render To Screen";
|
|
176
209
|
screenpass.mainScene = scene;
|
|
177
210
|
composer.addPass(screenpass);
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
if (ef instanceof MODULES.POSTPROCESSING.MODULE.Effect)
|
|
185
|
-
effects.push(ef);
|
|
186
|
-
else if (ef instanceof MODULES.POSTPROCESSING.MODULE.Pass) {
|
|
187
|
-
composer.addPass(ef);
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
// seems some effects are not correctly typed, but three can deal with them,
|
|
191
|
-
// so we might need to just pass them through
|
|
192
|
-
composer.addPass(ef);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
// create and apply uber pass
|
|
196
|
-
if (effects.length > 0) {
|
|
197
|
-
const pass = new MODULES.POSTPROCESSING.MODULE.EffectPass(cam, ...effects);
|
|
198
|
-
pass.name = effects.map(e => e.name).join(" ");
|
|
199
|
-
pass.mainScene = scene;
|
|
200
|
-
pass.enabled = true;
|
|
201
|
-
composer.addPass(pass);
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
catch (e) {
|
|
205
|
-
console.error("Error while applying postprocessing effects", e);
|
|
206
|
-
composer.removeAllPasses();
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
// we still want to sort passes, but we do not want to merge them for debugging
|
|
211
|
-
if (automaticEffectsOrdering)
|
|
212
|
-
this.orderEffects();
|
|
213
|
-
for (const ef of effectsOrPasses) {
|
|
211
|
+
try {
|
|
212
|
+
orderEffects(this._effects);
|
|
213
|
+
const effectsToMerge = [];
|
|
214
|
+
let hasConvolutionEffectInArray = false;
|
|
215
|
+
for (const entry of effectsOrPasses) {
|
|
216
|
+
const ef = entry.effect;
|
|
214
217
|
if (ef instanceof MODULES.POSTPROCESSING.MODULE.Effect) {
|
|
215
|
-
const
|
|
216
|
-
|
|
217
|
-
|
|
218
|
+
const attributes = ef.getAttributes();
|
|
219
|
+
const convolution = MODULES.POSTPROCESSING.MODULE.EffectAttribute.CONVOLUTION;
|
|
220
|
+
if (attributes & convolution) {
|
|
221
|
+
console.log("[PostProcessing] Convolution effect detected: " + ef.name, hasConvolutionEffectInArray);
|
|
222
|
+
if (hasConvolutionEffectInArray) {
|
|
223
|
+
hasConvolutionEffectInArray = false;
|
|
224
|
+
console.log("[PostProcessing] Merging effects with convolution effect in array", effectsToMerge.map(e => e.name).join(", "));
|
|
225
|
+
this.createPassForMergeableEffects(effectsToMerge, composer, cam, scene);
|
|
226
|
+
}
|
|
227
|
+
hasConvolutionEffectInArray = true;
|
|
228
|
+
}
|
|
229
|
+
// Otherwise we can merge it
|
|
230
|
+
effectsToMerge.push(ef);
|
|
218
231
|
}
|
|
219
|
-
else if (ef instanceof MODULES.POSTPROCESSING.MODULE.Pass)
|
|
232
|
+
else if (ef instanceof MODULES.POSTPROCESSING.MODULE.Pass) {
|
|
233
|
+
hasConvolutionEffectInArray = false;
|
|
234
|
+
this.createPassForMergeableEffects(effectsToMerge, composer, cam, scene);
|
|
235
|
+
ef.renderToScreen = false;
|
|
220
236
|
composer.addPass(ef);
|
|
221
|
-
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
222
239
|
// seems some effects are not correctly typed, but three can deal with them,
|
|
223
|
-
// so we just pass them through
|
|
240
|
+
// so we might need to just pass them through
|
|
241
|
+
hasConvolutionEffectInArray = false;
|
|
242
|
+
this.createPassForMergeableEffects(effectsToMerge, composer, cam, scene);
|
|
224
243
|
composer.addPass(ef);
|
|
244
|
+
}
|
|
225
245
|
}
|
|
246
|
+
this.createPassForMergeableEffects(effectsToMerge, composer, cam, scene);
|
|
226
247
|
}
|
|
227
|
-
|
|
228
|
-
console.
|
|
248
|
+
catch (e) {
|
|
249
|
+
console.error("Error while applying postprocessing effects", e);
|
|
250
|
+
composer.removeAllPasses();
|
|
251
|
+
}
|
|
252
|
+
// The last pass is the one that renders to the screen, so we need to set the gamma correction for it (and enable it for all others)
|
|
253
|
+
for (let i = 0; i < composer.passes.length; i++) {
|
|
254
|
+
const pass = composer.passes[i];
|
|
255
|
+
const isLast = i === composer.passes.length - 1;
|
|
256
|
+
if (pass?.configuration !== undefined) {
|
|
257
|
+
pass.configuration.gammaCorrection = isLast;
|
|
258
|
+
}
|
|
259
|
+
else if ("autosetGamma" in pass) {
|
|
260
|
+
// Some effects have a autosetGamma property that we can use to set the gamma correction
|
|
261
|
+
pass.autosetGamma = isLast;
|
|
262
|
+
}
|
|
263
|
+
this._anyPassHasDepth ||= pass.needsDepthTexture;
|
|
264
|
+
if (pass instanceof MODULES.POSTPROCESSING.MODULE.NormalPass) {
|
|
265
|
+
this._anyPassHasNormal = true;
|
|
266
|
+
}
|
|
267
|
+
if (pass instanceof MODULES.POSTPROCESSING.MODULE.SMAAEffect) {
|
|
268
|
+
this._hasSmaaEffect = true;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
// DEBUG LAND BELOW
|
|
272
|
+
if (debug)
|
|
273
|
+
console.log("[PostProcessing] Passes →", [...composer.passes], "\n---------------------------------\n• " + composer.passes.map(i => i.name).join("\n• ") + "\n");
|
|
274
|
+
if (debug)
|
|
275
|
+
this._onCreateEffectsDebug(this._composer, cam);
|
|
276
|
+
}
|
|
277
|
+
/** Should be called before `composer.addPass()` to create an effect pass with all previously collected effects that can be merged up to that point */
|
|
278
|
+
createPassForMergeableEffects(effects, composer, camera, scene) {
|
|
279
|
+
if (effects.length > 0) {
|
|
280
|
+
const pass = new MODULES.POSTPROCESSING.MODULE.EffectPass(camera, ...effects);
|
|
281
|
+
pass.name = effects.map(e => e.name).join(", ");
|
|
282
|
+
pass.mainScene = scene;
|
|
283
|
+
pass.enabled = true;
|
|
284
|
+
pass.renderToScreen = false;
|
|
285
|
+
composer.addPass(pass);
|
|
286
|
+
effects.length = 0; // Clear effects after adding them to the pass
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
_menuEntry = null;
|
|
290
|
+
_passIndices = null;
|
|
291
|
+
_onCreateEffectsDebug(composer, cam) {
|
|
292
|
+
if (debug === "passes") {
|
|
229
293
|
// DepthEffect for debugging purposes, disabled by default, can be selected in the debug pass select
|
|
230
294
|
const depthEffect = new MODULES.POSTPROCESSING.MODULE.DepthEffect({
|
|
231
295
|
blendFunction: MODULES.POSTPROCESSING.MODULE.BlendFunction.NORMAL,
|
|
@@ -281,71 +345,11 @@ export class PostProcessingHandler {
|
|
|
281
345
|
else {
|
|
282
346
|
this._passIndices = indices;
|
|
283
347
|
}
|
|
284
|
-
this.applyEffects(context);
|
|
348
|
+
this.applyEffects(this.context);
|
|
285
349
|
});
|
|
286
350
|
}
|
|
287
351
|
}
|
|
288
352
|
}
|
|
289
|
-
_menuEntry = null;
|
|
290
|
-
_passIndices = null;
|
|
291
|
-
orderEffects() {
|
|
292
|
-
if (debug)
|
|
293
|
-
console.log("Before ordering effects", [...this._effects]);
|
|
294
|
-
// Order of effects for correct results.
|
|
295
|
-
// Aligned with https://github.com/pmndrs/postprocessing/wiki/Effect-Merging#effect-execution-order
|
|
296
|
-
// We can not put this into global scope because then the module might not yet be initialized
|
|
297
|
-
effectsOrder ??= [
|
|
298
|
-
MODULES.POSTPROCESSING.MODULE.NormalPass,
|
|
299
|
-
MODULES.POSTPROCESSING.MODULE.DepthDownsamplingPass,
|
|
300
|
-
MODULES.POSTPROCESSING.MODULE.SMAAEffect,
|
|
301
|
-
MODULES.POSTPROCESSING.MODULE.SSAOEffect,
|
|
302
|
-
MODULES.POSTPROCESSING_AO.MODULE.N8AOPostPass,
|
|
303
|
-
MODULES.POSTPROCESSING.MODULE.TiltShiftEffect,
|
|
304
|
-
MODULES.POSTPROCESSING.MODULE.DepthOfFieldEffect,
|
|
305
|
-
MODULES.POSTPROCESSING.MODULE.ChromaticAberrationEffect,
|
|
306
|
-
MODULES.POSTPROCESSING.MODULE.BloomEffect,
|
|
307
|
-
MODULES.POSTPROCESSING.MODULE.SelectiveBloomEffect,
|
|
308
|
-
MODULES.POSTPROCESSING.MODULE.VignetteEffect,
|
|
309
|
-
MODULES.POSTPROCESSING.MODULE.PixelationEffect,
|
|
310
|
-
MODULES.POSTPROCESSING.MODULE.ToneMappingEffect,
|
|
311
|
-
MODULES.POSTPROCESSING.MODULE.HueSaturationEffect,
|
|
312
|
-
MODULES.POSTPROCESSING.MODULE.BrightnessContrastEffect,
|
|
313
|
-
// __SHARPENING_MODULE._SharpeningEffect,
|
|
314
|
-
];
|
|
315
|
-
// TODO: enforce correct order of effects (e.g. DOF before Bloom)
|
|
316
|
-
const effects = this._effects;
|
|
317
|
-
effects.sort((a, b) => {
|
|
318
|
-
// we use find index here because sometimes constructor names are prefixed with `_`
|
|
319
|
-
// TODO: find a more robust solution that isnt name based (not sure if that exists tho... maybe we must give effect TYPES some priority/index)
|
|
320
|
-
const aidx = effectsOrder.findIndex(e => a.constructor.name.endsWith(e.name));
|
|
321
|
-
const bidx = effectsOrder.findIndex(e => b.constructor.name.endsWith(e.name));
|
|
322
|
-
// Unknown effects should be rendered first
|
|
323
|
-
if (aidx < 0) {
|
|
324
|
-
if (debug)
|
|
325
|
-
console.warn("Unknown effect found: ", a.constructor.name);
|
|
326
|
-
return -1;
|
|
327
|
-
}
|
|
328
|
-
else if (bidx < 0) {
|
|
329
|
-
if (debug)
|
|
330
|
-
console.warn("Unknown effect found: ", b.constructor.name);
|
|
331
|
-
return 1;
|
|
332
|
-
}
|
|
333
|
-
if (aidx < 0)
|
|
334
|
-
return 1;
|
|
335
|
-
if (bidx < 0)
|
|
336
|
-
return -1;
|
|
337
|
-
return aidx - bidx;
|
|
338
|
-
});
|
|
339
|
-
if (debug)
|
|
340
|
-
console.log("After ordering effects", [...this._effects]);
|
|
341
|
-
for (let i = 0; i < effects.length; i++) {
|
|
342
|
-
const effect = effects[i];
|
|
343
|
-
if (effect?.configuration?.gammaCorrection !== undefined) {
|
|
344
|
-
const isLast = i === effects.length - 1;
|
|
345
|
-
effect.configuration.gammaCorrection = isLast;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
353
|
}
|
|
350
354
|
let effectsOrder = null;
|
|
351
355
|
//# sourceMappingURL=PostProcessingHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostProcessingHandler.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/PostProcessingHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PostProcessingHandler.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/PostProcessingHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,8 @@ export declare class Volume extends Behaviour implements IEditorModificationRece
|
|
|
37
37
|
get isPostProcessingManager(): boolean;
|
|
38
38
|
/** Currently active postprocessing effects */
|
|
39
39
|
get effects(): PostProcessingEffect[];
|
|
40
|
+
get dirty(): boolean;
|
|
41
|
+
set dirty(value: boolean);
|
|
40
42
|
sharedProfile?: VolumeProfile;
|
|
41
43
|
/**
|
|
42
44
|
* Set multisampling to "auto" to automatically adjust the multisampling level based on performance.
|
|
@@ -78,7 +80,6 @@ export declare class Volume extends Behaviour implements IEditorModificationRece
|
|
|
78
80
|
private _rapidApplyCount;
|
|
79
81
|
private _isDirty;
|
|
80
82
|
private apply;
|
|
81
|
-
private unapply;
|
|
82
83
|
private _applyPostQueue;
|
|
83
84
|
/** called from needle editor sync package if its active */
|
|
84
85
|
onEditorModification(modification: EditorModification): void | boolean | undefined;
|
|
@@ -52,6 +52,8 @@ export class Volume extends Behaviour {
|
|
|
52
52
|
get effects() {
|
|
53
53
|
return this._activeEffects;
|
|
54
54
|
}
|
|
55
|
+
get dirty() { return this._isDirty; }
|
|
56
|
+
set dirty(value) { this._isDirty = value; }
|
|
55
57
|
sharedProfile;
|
|
56
58
|
/**
|
|
57
59
|
* Set multisampling to "auto" to automatically adjust the multisampling level based on performance.
|
|
@@ -163,7 +165,16 @@ export class Volume extends Behaviour {
|
|
|
163
165
|
this.context.composer.setRenderer(this.context.renderer);
|
|
164
166
|
this.context.composer.setMainScene(this.context.scene);
|
|
165
167
|
const composer = this.context.composer;
|
|
166
|
-
|
|
168
|
+
// If the postprocessing handler is using depth+normals (e.g. with SMAA) we ALWAYS disable multisampling to avoid ugly edges
|
|
169
|
+
if (this._postprocessing && (this._postprocessing.hasSmaaEffect)) {
|
|
170
|
+
if (composer.multisampling !== 0) {
|
|
171
|
+
composer.multisampling = 0;
|
|
172
|
+
if (debug || isDevEnvironment()) {
|
|
173
|
+
console.warn(`[PostProcessing] Disabling multisampling because depth or normals are used. If you need anti-aliasing, consider adding an Antialiasing component or SMAA effect to the PostprocessingManager.`);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
else if (this.multisampling === "auto") {
|
|
167
178
|
const timeSinceLastChange = this.context.time.realtimeSinceStartup - this._multisampleAutoChangeTime;
|
|
168
179
|
if (this.context.time.realtimeSinceStartup - this._componentEnabledTime > 2
|
|
169
180
|
&& timeSinceLastChange > .5) {
|
|
@@ -216,7 +227,7 @@ export class Volume extends Behaviour {
|
|
|
216
227
|
_isDirty = false;
|
|
217
228
|
apply() {
|
|
218
229
|
if (debug)
|
|
219
|
-
console.log(`Apply PostProcessing "${this.name}"`);
|
|
230
|
+
console.log(`Apply PostProcessing "${this.name || "unnamed"}"`);
|
|
220
231
|
if (isDevEnvironment()) {
|
|
221
232
|
if (this._lastApplyTime !== undefined && Date.now() - this._lastApplyTime < 100) {
|
|
222
233
|
this._rapidApplyCount++;
|
|
@@ -226,7 +237,6 @@ export class Volume extends Behaviour {
|
|
|
226
237
|
this._lastApplyTime = Date.now();
|
|
227
238
|
}
|
|
228
239
|
this._isDirty = false;
|
|
229
|
-
this.unapply();
|
|
230
240
|
this._activeEffects.length = 0;
|
|
231
241
|
// get from profile
|
|
232
242
|
if (this.sharedProfile?.components) {
|
|
@@ -267,9 +277,9 @@ export class Volume extends Behaviour {
|
|
|
267
277
|
}
|
|
268
278
|
});
|
|
269
279
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
280
|
+
else {
|
|
281
|
+
this._postprocessing?.unapply(false);
|
|
282
|
+
}
|
|
273
283
|
}
|
|
274
284
|
_applyPostQueue() {
|
|
275
285
|
if (this._modificationQueue) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Volume.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/Volume.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Volume.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/Volume.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1,11 +1,49 @@
|
|
|
1
|
+
import type { Effect, Pass } from "postprocessing";
|
|
1
2
|
import { ConstructorConcrete, IComponent } from "../../engine/engine_types.js";
|
|
2
3
|
import { type PostProcessingEffect } from "./PostProcessingEffect.js";
|
|
3
4
|
export declare const debug: string | number | boolean;
|
|
4
5
|
export type IPostProcessingManager = IComponent & {
|
|
5
6
|
get isPostProcessingManager(): boolean;
|
|
7
|
+
get dirty(): boolean;
|
|
8
|
+
set dirty(value: boolean);
|
|
6
9
|
addEffect(effect: PostProcessingEffect): void;
|
|
7
10
|
removeEffect(effect: PostProcessingEffect): void;
|
|
8
11
|
};
|
|
9
12
|
export declare function setPostprocessingManagerType(type: ConstructorConcrete<IPostProcessingManager>): void;
|
|
10
13
|
export declare function findPostProcessingManager(effect: PostProcessingEffect): IPostProcessingManager | null;
|
|
11
14
|
export declare function getPostProcessingManager(effect: PostProcessingEffect): IPostProcessingManager | null;
|
|
15
|
+
export type PostprocessingEffectData = {
|
|
16
|
+
effect: Effect | Pass;
|
|
17
|
+
priority?: number;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Default priority for post-processing effects. This can be used to sort effects by their rendering order when creating custom effects.
|
|
21
|
+
* E.g. in your custom effect, you can set `priority: PostProcessingEffectPriority.Bloom + 1;` to ensure it gets rendered after the bloom effect.
|
|
22
|
+
* OR `priority: PostProcessingEffectPriority.Bloom - 1;` to ensure it gets rendered before the bloom effect.
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import { PostProcessingEffectPriority } from "@needle-tools/engine"
|
|
26
|
+
*
|
|
27
|
+
* export class MyCustomEffect extends PostProcessingEffect {
|
|
28
|
+
* priority: PostProcessingEffectPriority.Bloom + 1; // render after bloom
|
|
29
|
+
*
|
|
30
|
+
* // ... your effect code
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare const PostProcessingEffectPriority: {
|
|
35
|
+
NormalPass: number;
|
|
36
|
+
DepthDownsamplingPass: number;
|
|
37
|
+
SMAA: number;
|
|
38
|
+
SSAO: number;
|
|
39
|
+
TiltShift: number;
|
|
40
|
+
DepthOfField: number;
|
|
41
|
+
ChromaticAberration: number;
|
|
42
|
+
Bloom: number;
|
|
43
|
+
Vignette: number;
|
|
44
|
+
Pixelation: number;
|
|
45
|
+
ToneMapping: number;
|
|
46
|
+
HueSaturation: number;
|
|
47
|
+
BrightnessContrast: number;
|
|
48
|
+
};
|
|
49
|
+
export declare function orderEffects(effects: Array<PostprocessingEffectData>): void;
|