@babylonjs/smart-filters-blocks 1.0.13 → 8.18.0
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/dist/blocks/babylon/demo/effects/blackAndWhiteBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/blackAndWhiteBlock.block.js +5 -5
- package/dist/blocks/babylon/demo/effects/blackAndWhiteBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.deserializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.deserializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.deserializer.js +3 -5
- package/dist/blocks/babylon/demo/effects/blurBlock.deserializer.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.js +8 -13
- package/dist/blocks/babylon/demo/effects/blurBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.serializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.serializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/blurBlock.serializer.js +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.d.ts +7 -7
- package/dist/blocks/babylon/demo/effects/compositionBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.deserializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.deserializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.deserializer.js +2 -3
- package/dist/blocks/babylon/demo/effects/compositionBlock.deserializer.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.fragment.d.ts +4 -2
- package/dist/blocks/babylon/demo/effects/compositionBlock.fragment.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.fragment.js +5 -2
- package/dist/blocks/babylon/demo/effects/compositionBlock.fragment.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.js +2 -6
- package/dist/blocks/babylon/demo/effects/compositionBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.serializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.serializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/compositionBlock.serializer.js +1 -1
- package/dist/blocks/babylon/demo/effects/contrastBlock.block.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/contrastBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/contrastBlock.block.js +6 -6
- package/dist/blocks/babylon/demo/effects/contrastBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/desaturateBlock.block.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/desaturateBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/desaturateBlock.block.js +6 -6
- package/dist/blocks/babylon/demo/effects/desaturateBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.d.ts +3 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.js +4 -5
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.js +32 -37
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.serializer.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.serializer.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/directionalBlurBlock.serializer.js +1 -1
- package/dist/blocks/babylon/demo/effects/exposureBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/exposureBlock.block.js +7 -7
- package/dist/blocks/babylon/demo/effects/exposureBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/greenScreenBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/greenScreenBlock.block.js +11 -11
- package/dist/blocks/babylon/demo/effects/greenScreenBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/kaleidoscopeBlock.d.ts +6 -1
- package/dist/blocks/babylon/demo/effects/kaleidoscopeBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/kaleidoscopeBlock.js +71 -71
- package/dist/blocks/babylon/demo/effects/kaleidoscopeBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/maskBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/maskBlock.block.js +7 -7
- package/dist/blocks/babylon/demo/effects/maskBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/pixelateBlock.block.d.ts +2 -2
- package/dist/blocks/babylon/demo/effects/pixelateBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/pixelateBlock.block.js +8 -8
- package/dist/blocks/babylon/demo/effects/pixelateBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/posterizeBlock.block.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/posterizeBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/posterizeBlock.block.js +6 -6
- package/dist/blocks/babylon/demo/effects/posterizeBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.d.ts +5 -5
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.fragment.d.ts +4 -2
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.fragment.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.fragment.js +5 -2
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.fragment.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/spritesheetBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/effects/tintBlock.d.ts +1 -1
- package/dist/blocks/babylon/demo/effects/tintBlock.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/effects/tintBlock.js +10 -10
- package/dist/blocks/babylon/demo/effects/tintBlock.js.map +1 -1
- package/dist/blocks/babylon/demo/transitions/wipeBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/transitions/wipeBlock.block.js +9 -9
- package/dist/blocks/babylon/demo/transitions/wipeBlock.block.js.map +1 -1
- package/dist/blocks/babylon/demo/utilities/premultiplyAlphaBlock.block.d.ts.map +1 -1
- package/dist/blocks/babylon/demo/utilities/premultiplyAlphaBlock.block.js +5 -5
- package/dist/blocks/babylon/demo/utilities/premultiplyAlphaBlock.block.js.map +1 -1
- package/dist/blocks/blockNamespaces.d.ts.map +1 -1
- package/dist/blocks/blockNamespaces.js +2 -0
- package/dist/blocks/blockNamespaces.js.map +1 -1
- package/dist/blocks/blockTypes.d.ts.map +1 -1
- package/dist/blocks/blockTypes.js +2 -0
- package/dist/blocks/blockTypes.js.map +1 -1
- package/dist/blocks/index.d.ts.map +1 -1
- package/dist/blocks/index.js +1 -0
- package/dist/blocks/index.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/registration/IBlockRegistration.d.ts +1 -1
- package/dist/registration/IBlockRegistration.d.ts.map +1 -1
- package/dist/registration/blockSerializers.d.ts.map +1 -1
- package/dist/registration/blockSerializers.js +6 -8
- package/dist/registration/blockSerializers.js.map +1 -1
- package/dist/registration/builtInBlockRegistrations.d.ts +1 -1
- package/dist/registration/builtInBlockRegistrations.d.ts.map +1 -1
- package/dist/registration/builtInBlockRegistrations.js +50 -52
- package/dist/registration/builtInBlockRegistrations.js.map +1 -1
- package/dist/registration/index.d.ts +1 -0
- package/dist/registration/index.d.ts.map +1 -1
- package/dist/registration/index.js +2 -0
- package/dist/registration/index.js.map +1 -1
- package/license.md +21 -21
- package/package.json +15 -13
- package/src/blocks/babylon/demo/effects/blackAndWhiteBlock.block.ts +8 -7
- package/src/blocks/babylon/demo/effects/blurBlock.deserializer.ts +37 -37
- package/src/blocks/babylon/demo/effects/blurBlock.serializer.ts +31 -31
- package/src/blocks/babylon/demo/effects/blurBlock.ts +115 -122
- package/src/blocks/babylon/demo/effects/compositionBlock.deserializer.ts +31 -31
- package/src/blocks/babylon/demo/effects/compositionBlock.fragment.ts +7 -3
- package/src/blocks/babylon/demo/effects/compositionBlock.serializer.ts +28 -28
- package/src/blocks/babylon/demo/effects/compositionBlock.ts +211 -243
- package/src/blocks/babylon/demo/effects/contrastBlock.block.ts +9 -8
- package/src/blocks/babylon/demo/effects/desaturateBlock.block.ts +9 -8
- package/src/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.ts +43 -46
- package/src/blocks/babylon/demo/effects/directionalBlurBlock.serializer.ts +30 -30
- package/src/blocks/babylon/demo/effects/directionalBlurBlock.ts +192 -196
- package/src/blocks/babylon/demo/effects/exposureBlock.block.ts +10 -9
- package/src/blocks/babylon/demo/effects/greenScreenBlock.block.ts +14 -13
- package/src/blocks/babylon/demo/effects/index.ts +14 -14
- package/src/blocks/babylon/demo/effects/kaleidoscopeBlock.ts +188 -192
- package/src/blocks/babylon/demo/effects/maskBlock.block.ts +10 -9
- package/src/blocks/babylon/demo/effects/pixelateBlock.block.ts +11 -10
- package/src/blocks/babylon/demo/effects/posterizeBlock.block.ts +9 -8
- package/src/blocks/babylon/demo/effects/spritesheetBlock.fragment.ts +7 -3
- package/src/blocks/babylon/demo/effects/spritesheetBlock.ts +135 -138
- package/src/blocks/babylon/demo/effects/tintBlock.ts +51 -51
- package/src/blocks/babylon/demo/transitions/index.ts +1 -1
- package/src/blocks/babylon/demo/transitions/wipeBlock.block.ts +12 -11
- package/src/blocks/babylon/demo/utilities/index.ts +1 -1
- package/src/blocks/babylon/demo/utilities/premultiplyAlphaBlock.block.ts +8 -7
- package/src/blocks/blockNamespaces.ts +6 -4
- package/src/blocks/blockTypes.ts +23 -21
- package/src/blocks/index.ts +6 -5
- package/src/index.ts +3 -2
- package/src/registration/IBlockRegistration.ts +43 -48
- package/src/registration/blockSerializers.ts +50 -52
- package/src/registration/builtInBlockRegistrations.ts +293 -403
- package/src/registration/index.ts +4 -2
|
@@ -9,5 +9,5 @@ import type { IBlockRegistration } from "./IBlockRegistration.js";
|
|
|
9
9
|
* 3. If the deserializer is non-trivial (needs serializedBlock.data), implement it in a separate file alongside the block
|
|
10
10
|
* in the form blockClassName.deserializer.ts
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const BuiltInBlockRegistrations: IBlockRegistration[];
|
|
13
13
|
//# sourceMappingURL=builtInBlockRegistrations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtInBlockRegistrations.d.ts","sourceRoot":"","sources":["../../src/registration/builtInBlockRegistrations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"builtInBlockRegistrations.d.ts","sourceRoot":"","sources":["../../src/registration/builtInBlockRegistrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAoBlE;;;;;;;;;GASG;AACH,eAAO,MAAM,yBAAyB,EAAE,kBAAkB,EAoQzD,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { InputBlock, ConnectionPointType, CustomShaderBlock
|
|
2
|
-
import { babylonDemoEffectsNamespace, babylonDemoTransitionsNamespace, babylonDemoUtilitiesNamespace, inputsNamespace
|
|
1
|
+
import { InputBlock, ConnectionPointType, CustomShaderBlock } from "@babylonjs/smart-filters";
|
|
2
|
+
import { babylonDemoEffectsNamespace, babylonDemoTransitionsNamespace, babylonDemoUtilitiesNamespace, inputsNamespace } from "../blocks/blockNamespaces.js";
|
|
3
3
|
import { blackAndWhiteBlockType, kaleidoscopeBlockType, posterizeBlockType, desaturateBlockType, contrastBlockType, greenScreenBlockType, pixelateBlockType, exposureBlockType, maskBlockType, spritesheetBlockType, premultiplyAlphaBlockType, wipeBlockType, blurBlockType, compositionBlockType, tintBlockType, } from "../blocks/blockTypes.js";
|
|
4
4
|
/**
|
|
5
5
|
* The list of block registrations.
|
|
@@ -11,26 +11,26 @@ import { blackAndWhiteBlockType, kaleidoscopeBlockType, posterizeBlockType, desa
|
|
|
11
11
|
* 3. If the deserializer is non-trivial (needs serializedBlock.data), implement it in a separate file alongside the block
|
|
12
12
|
* in the form blockClassName.deserializer.ts
|
|
13
13
|
*/
|
|
14
|
-
export const
|
|
14
|
+
export const BuiltInBlockRegistrations = [
|
|
15
15
|
// Blocks with trivial deserializers
|
|
16
16
|
// Note that some choose to predefine corresponding input blocks if not being deserialized
|
|
17
17
|
// ---------------------------------------------------------------------------------------
|
|
18
18
|
{
|
|
19
19
|
blockType: blackAndWhiteBlockType,
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
20
21
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
21
|
-
const module = await import(
|
|
22
|
-
|
|
23
|
-
return new module.BlackAndWhiteBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "BlackAndWhite");
|
|
22
|
+
const module = await import(/* webpackChunkName: "blackAndWhiteBlock" */ "../blocks/babylon/demo/effects/blackAndWhiteBlock.block.js");
|
|
23
|
+
return new module.BlackAndWhiteBlock(smartFilter, serializedBlock?.name || "BlackAndWhite");
|
|
24
24
|
},
|
|
25
25
|
namespace: babylonDemoEffectsNamespace,
|
|
26
26
|
tooltip: "Transform the input texture to black and white",
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
29
|
blockType: kaleidoscopeBlockType,
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
30
31
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
31
|
-
const module = await import(
|
|
32
|
-
|
|
33
|
-
const block = new module.KaleidoscopeBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Kaleidoscope");
|
|
32
|
+
const module = await import(/* webpackChunkName: "kaleidoscopeBlock" */ "../blocks/babylon/demo/effects/kaleidoscopeBlock.js");
|
|
33
|
+
const block = new module.KaleidoscopeBlock(smartFilter, serializedBlock?.name || "Kaleidoscope");
|
|
34
34
|
if (!serializedBlock) {
|
|
35
35
|
const input = new InputBlock(smartFilter, "Angle", ConnectionPointType.Float, 0);
|
|
36
36
|
input.output.connectTo(block.time);
|
|
@@ -42,10 +42,10 @@ export const builtInBlockRegistrations = [
|
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
blockType: posterizeBlockType,
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
45
46
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
46
|
-
const module = await import(
|
|
47
|
-
|
|
48
|
-
const block = new module.PosterizeBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Posterize");
|
|
47
|
+
const module = await import(/* webpackChunkName: "posterizeBlock" */ "../blocks/babylon/demo/effects/posterizeBlock.block.js");
|
|
48
|
+
const block = new module.PosterizeBlock(smartFilter, serializedBlock?.name || "Posterize");
|
|
49
49
|
if (!serializedBlock) {
|
|
50
50
|
const input = new InputBlock(smartFilter, "Intensity", ConnectionPointType.Float, 0.5);
|
|
51
51
|
input.output.connectTo(block.intensity);
|
|
@@ -57,10 +57,10 @@ export const builtInBlockRegistrations = [
|
|
|
57
57
|
},
|
|
58
58
|
{
|
|
59
59
|
blockType: desaturateBlockType,
|
|
60
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
60
61
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
61
|
-
const module = await import(
|
|
62
|
-
|
|
63
|
-
const block = new module.DesaturateBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Desaturate");
|
|
62
|
+
const module = await import(/* webpackChunkName: "desaturateBlock" */ "../blocks/babylon/demo/effects/desaturateBlock.block.js");
|
|
63
|
+
const block = new module.DesaturateBlock(smartFilter, serializedBlock?.name || "Desaturate");
|
|
64
64
|
if (!serializedBlock) {
|
|
65
65
|
const input = new InputBlock(smartFilter, "Intensity", ConnectionPointType.Float, 0.5);
|
|
66
66
|
input.output.connectTo(block.intensity);
|
|
@@ -72,10 +72,10 @@ export const builtInBlockRegistrations = [
|
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
74
|
blockType: contrastBlockType,
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
75
76
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
76
|
-
const module = await import(
|
|
77
|
-
|
|
78
|
-
const block = new module.ContrastBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Contrast");
|
|
77
|
+
const module = await import(/* webpackChunkName: "contrastBlock" */ "../blocks/babylon/demo/effects/contrastBlock.block.js");
|
|
78
|
+
const block = new module.ContrastBlock(smartFilter, serializedBlock?.name || "Contrast");
|
|
79
79
|
if (!serializedBlock) {
|
|
80
80
|
const input = new InputBlock(smartFilter, "Intensity", ConnectionPointType.Float, 0.5);
|
|
81
81
|
input.output.connectTo(block.intensity);
|
|
@@ -87,10 +87,10 @@ export const builtInBlockRegistrations = [
|
|
|
87
87
|
},
|
|
88
88
|
{
|
|
89
89
|
blockType: greenScreenBlockType,
|
|
90
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
90
91
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
91
|
-
const module = await import(
|
|
92
|
-
|
|
93
|
-
const block = new module.GreenScreenBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "GreenScreen");
|
|
92
|
+
const module = await import(/* webpackChunkName: "greenScreenBlock" */ "../blocks/babylon/demo/effects/greenScreenBlock.block.js");
|
|
93
|
+
const block = new module.GreenScreenBlock(smartFilter, serializedBlock?.name || "GreenScreen");
|
|
94
94
|
if (!serializedBlock) {
|
|
95
95
|
const reference = new InputBlock(smartFilter, "Reference", ConnectionPointType.Color3, {
|
|
96
96
|
r: 92 / 255,
|
|
@@ -108,10 +108,10 @@ export const builtInBlockRegistrations = [
|
|
|
108
108
|
},
|
|
109
109
|
{
|
|
110
110
|
blockType: pixelateBlockType,
|
|
111
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
111
112
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
112
|
-
const module = await import(
|
|
113
|
-
|
|
114
|
-
const block = new module.PixelateBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Pixelate");
|
|
113
|
+
const module = await import(/* webpackChunkName: "pixelateBlock" */ "../blocks/babylon/demo/effects/pixelateBlock.block.js");
|
|
114
|
+
const block = new module.PixelateBlock(smartFilter, serializedBlock?.name || "Pixelate");
|
|
115
115
|
if (!serializedBlock) {
|
|
116
116
|
const input = new InputBlock(smartFilter, "Intensity", ConnectionPointType.Float, 0.4);
|
|
117
117
|
input.output.connectTo(block.intensity);
|
|
@@ -123,10 +123,10 @@ export const builtInBlockRegistrations = [
|
|
|
123
123
|
},
|
|
124
124
|
{
|
|
125
125
|
blockType: exposureBlockType,
|
|
126
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
126
127
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
127
|
-
const module = await import(
|
|
128
|
-
|
|
129
|
-
const block = new module.ExposureBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Exposure");
|
|
128
|
+
const module = await import(/* webpackChunkName: "exposureBlock" */ "../blocks/babylon/demo/effects/exposureBlock.block.js");
|
|
129
|
+
const block = new module.ExposureBlock(smartFilter, serializedBlock?.name || "Exposure");
|
|
130
130
|
if (!serializedBlock) {
|
|
131
131
|
const input = new InputBlock(smartFilter, "Amount", ConnectionPointType.Float, 0.7);
|
|
132
132
|
input.output.connectTo(block.amount);
|
|
@@ -138,40 +138,40 @@ export const builtInBlockRegistrations = [
|
|
|
138
138
|
},
|
|
139
139
|
{
|
|
140
140
|
blockType: maskBlockType,
|
|
141
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
141
142
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
142
|
-
const module = await import(
|
|
143
|
-
|
|
144
|
-
return new module.MaskBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Mask");
|
|
143
|
+
const module = await import(/* webpackChunkName: "maskBlock" */ "../blocks/babylon/demo/effects/maskBlock.block.js");
|
|
144
|
+
return new module.MaskBlock(smartFilter, serializedBlock?.name || "Mask");
|
|
145
145
|
},
|
|
146
146
|
namespace: babylonDemoEffectsNamespace,
|
|
147
147
|
tooltip: "Applies mask in one texture to another texture",
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
150
|
blockType: spritesheetBlockType,
|
|
151
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
151
152
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
152
|
-
const module = await import(
|
|
153
|
-
|
|
154
|
-
return new module.SpritesheetBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Spritesheet");
|
|
153
|
+
const module = await import(/* webpackChunkName: "spritesheetBlock" */ "../blocks/babylon/demo/effects/spritesheetBlock.js");
|
|
154
|
+
return new module.SpritesheetBlock(smartFilter, serializedBlock?.name || "Spritesheet");
|
|
155
155
|
},
|
|
156
156
|
namespace: babylonDemoEffectsNamespace,
|
|
157
157
|
tooltip: "Animates a sprite sheet texture",
|
|
158
158
|
},
|
|
159
159
|
{
|
|
160
160
|
blockType: premultiplyAlphaBlockType,
|
|
161
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
161
162
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
162
|
-
const module = await import(
|
|
163
|
-
|
|
164
|
-
return new module.PremultiplyAlphaBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "PremultiplyAlpha");
|
|
163
|
+
const module = await import(/* webpackChunkName: "premultiplyAlphaBlock" */ "../blocks/babylon/demo/utilities/premultiplyAlphaBlock.block.js");
|
|
164
|
+
return new module.PremultiplyAlphaBlock(smartFilter, serializedBlock?.name || "PremultiplyAlpha");
|
|
165
165
|
},
|
|
166
166
|
namespace: babylonDemoUtilitiesNamespace,
|
|
167
167
|
tooltip: "Premultiplies the input texture's color against its alpha",
|
|
168
168
|
},
|
|
169
169
|
{
|
|
170
170
|
blockType: wipeBlockType,
|
|
171
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
171
172
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
172
|
-
const module = await import(
|
|
173
|
-
|
|
174
|
-
return new module.WipeBlock(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Wipe");
|
|
173
|
+
const module = await import(/* webpackChunkName: "wipeBlock" */ "../blocks/babylon/demo/transitions/wipeBlock.block.js");
|
|
174
|
+
return new module.WipeBlock(smartFilter, serializedBlock?.name || "Wipe");
|
|
175
175
|
},
|
|
176
176
|
namespace: babylonDemoTransitionsNamespace,
|
|
177
177
|
tooltip: "Transition from one texture to another using a wipe",
|
|
@@ -180,15 +180,14 @@ export const builtInBlockRegistrations = [
|
|
|
180
180
|
// --------------------------------
|
|
181
181
|
{
|
|
182
182
|
blockType: blurBlockType,
|
|
183
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
183
184
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
184
185
|
if (serializedBlock) {
|
|
185
|
-
const module = await import(
|
|
186
|
-
|
|
187
|
-
return module.blurBlockDeserializer(smartFilter, serializedBlock);
|
|
186
|
+
const module = await import(/* webpackChunkName: "blurBlockDeserializer" */ "../blocks/babylon/demo/effects/blurBlock.deserializer.js");
|
|
187
|
+
return module.BlurBlockDeserializer(smartFilter, serializedBlock);
|
|
188
188
|
}
|
|
189
189
|
else {
|
|
190
|
-
const module = await import(
|
|
191
|
-
/* webpackChunkName: "blurBlock" */ "../blocks/babylon/demo/effects/blurBlock.js");
|
|
190
|
+
const module = await import(/* webpackChunkName: "blurBlock" */ "../blocks/babylon/demo/effects/blurBlock.js");
|
|
192
191
|
return new module.BlurBlock(smartFilter, "Blur");
|
|
193
192
|
}
|
|
194
193
|
},
|
|
@@ -197,15 +196,14 @@ export const builtInBlockRegistrations = [
|
|
|
197
196
|
},
|
|
198
197
|
{
|
|
199
198
|
blockType: compositionBlockType,
|
|
199
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
200
200
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
201
201
|
if (serializedBlock) {
|
|
202
|
-
const module = await import(
|
|
203
|
-
|
|
204
|
-
return module.compositionDeserializer(smartFilter, serializedBlock);
|
|
202
|
+
const module = await import(/* webpackChunkName: "compositionBlockDeserializer" */ "../blocks/babylon/demo/effects/compositionBlock.deserializer.js");
|
|
203
|
+
return module.CompositionDeserializer(smartFilter, serializedBlock);
|
|
205
204
|
}
|
|
206
205
|
else {
|
|
207
|
-
const module = await import(
|
|
208
|
-
/* webpackChunkName: "compositionBlock" */ "../blocks/babylon/demo/effects/compositionBlock.js");
|
|
206
|
+
const module = await import(/* webpackChunkName: "compositionBlock" */ "../blocks/babylon/demo/effects/compositionBlock.js");
|
|
209
207
|
const block = new module.CompositionBlock(smartFilter, "Composition");
|
|
210
208
|
const top = new InputBlock(smartFilter, "Top", ConnectionPointType.Float, 0.0);
|
|
211
209
|
const left = new InputBlock(smartFilter, "Left", ConnectionPointType.Float, 0.0);
|
|
@@ -225,10 +223,10 @@ export const builtInBlockRegistrations = [
|
|
|
225
223
|
// ----------------------------------------
|
|
226
224
|
{
|
|
227
225
|
blockType: tintBlockType,
|
|
226
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
228
227
|
factory: async (smartFilter, _engine, _smartFilterDeserializer, serializedBlock) => {
|
|
229
|
-
const module = await import(
|
|
230
|
-
|
|
231
|
-
return CustomShaderBlock.Create(smartFilter, (serializedBlock === null || serializedBlock === void 0 ? void 0 : serializedBlock.name) || "Tint", module.deserializedTintBlockDefinition);
|
|
228
|
+
const module = await import(/* webpackChunkName: "tintBlock" */ "../blocks/babylon/demo/effects/tintBlock.js");
|
|
229
|
+
return CustomShaderBlock.Create(smartFilter, serializedBlock?.name || "Tint", module.DeserializedTintBlockDefinition);
|
|
232
230
|
},
|
|
233
231
|
namespace: babylonDemoEffectsNamespace,
|
|
234
232
|
tooltip: "Adds colored tint to the input texture",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtInBlockRegistrations.js","sourceRoot":"","sources":["../../src/registration/builtInBlockRegistrations.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"builtInBlockRegistrations.js","sourceRoot":"","sources":["../../src/registration/builtInBlockRegistrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,OAAO,EAAE,yBAAyB,IAAI,yBAAyB,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export * from "./builtInBlockRegistrations.js";
|
|
2
2
|
export * from "./IBlockRegistration.js";
|
|
3
|
+
// Back compat for when camelCase was used
|
|
4
|
+
export { BuiltInBlockRegistrations as builtInBlockRegistrations } from "./builtInBlockRegistrations.js";
|
|
3
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,0CAA0C;AAC1C,OAAO,EAAE,yBAAyB,IAAI,yBAAyB,EAAE,MAAM,gCAAgC,CAAC"}
|
package/license.md
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c)
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Babylon.js
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@babylonjs/smart-filters-blocks",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.18.0",
|
|
4
4
|
"description": "Babylon.js Smart Filter Block Library",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"video",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"sideEffects": false,
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|
|
27
|
-
"url": "git+https://github.com/BabylonJS/
|
|
27
|
+
"url": "git+https://github.com/BabylonJS/Babylon.js.git"
|
|
28
28
|
},
|
|
29
29
|
"files": [
|
|
30
30
|
"dist",
|
|
@@ -33,20 +33,22 @@
|
|
|
33
33
|
"readme.md"
|
|
34
34
|
],
|
|
35
35
|
"scripts": {
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"
|
|
36
|
+
"build": "npm run clean && npm run copySrc && npm run compile",
|
|
37
|
+
"clean": "rimraf dist && rimraf src && rimraf *.tsbuildinfo -g && rimraf \"./**/*.!(cmd|md|json|build.json|lts.json|tasks.json|cjs)\" -g",
|
|
38
|
+
"copySrc": "node -e \"require('fs').cpSync('../../../dev/smartFilterBlocks/src', './src', { recursive: true })\"",
|
|
39
|
+
"precompile": "tsx ../../../dev/smartFilters/src/utils/buildTools/buildShaders.ts ./src/blocks smart-filters core",
|
|
40
|
+
"compile": "tsc -b tsconfig.build.json",
|
|
41
|
+
"postcompile": "build-tools -c add-js-to-es6"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@dev/build-tools": "^1.0.0",
|
|
45
|
+
"@dev/core": "1.0.0",
|
|
46
|
+
"@dev/smart-filters": "1.0.0"
|
|
45
47
|
},
|
|
46
48
|
"peerDependencies": {
|
|
47
49
|
"@babylonjs/core": "^7.47.3 || ^8.0.1"
|
|
48
50
|
},
|
|
49
51
|
"dependencies": {
|
|
50
|
-
"@babylonjs/smart-filters": "
|
|
52
|
+
"@babylonjs/smart-filters": "^8.18.0"
|
|
51
53
|
}
|
|
52
|
-
}
|
|
54
|
+
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// to the block. This file will get overwritten when the build
|
|
9
9
|
// is run or during a watch when the .glsl file is updated.
|
|
10
10
|
|
|
11
|
-
import type { Effect } from "
|
|
11
|
+
import type { Effect } from "core/Materials/effect.js";
|
|
12
12
|
|
|
13
13
|
import {
|
|
14
14
|
DisableableShaderBinding,
|
|
@@ -18,12 +18,12 @@ import {
|
|
|
18
18
|
DisableableShaderBlock,
|
|
19
19
|
type ShaderProgram,
|
|
20
20
|
type IDisableableBlock,
|
|
21
|
-
BlockDisableStrategy} from "
|
|
21
|
+
BlockDisableStrategy} from "smart-filters";
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* The shader program for the block.
|
|
25
25
|
*/
|
|
26
|
-
const
|
|
26
|
+
const BlockShaderProgram: ShaderProgram = {
|
|
27
27
|
vertex: undefined,
|
|
28
28
|
fragment: {
|
|
29
29
|
uniform: `
|
|
@@ -53,10 +53,11 @@ const shaderProgram: ShaderProgram = {
|
|
|
53
53
|
* The uniform names for this shader, to be used in the shader binding so
|
|
54
54
|
* that the names are always in sync.
|
|
55
55
|
*/
|
|
56
|
-
const
|
|
56
|
+
const Uniforms = {
|
|
57
57
|
input: "input",
|
|
58
58
|
};
|
|
59
59
|
|
|
60
|
+
|
|
60
61
|
/**
|
|
61
62
|
* The shader binding for the BlackAndWhiteBlock, used by the runtime
|
|
62
63
|
*/
|
|
@@ -82,7 +83,7 @@ class BlackAndWhiteBlockShaderBinding extends DisableableShaderBinding {
|
|
|
82
83
|
*/
|
|
83
84
|
public override bind(effect: Effect): void {
|
|
84
85
|
super.bind(effect);
|
|
85
|
-
effect.setTexture(this.getRemappedName(
|
|
86
|
+
effect.setTexture(this.getRemappedName(Uniforms.input), this._input.value);
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
89
|
|
|
@@ -103,12 +104,12 @@ export class BlackAndWhiteBlock extends DisableableShaderBlock {
|
|
|
103
104
|
/**
|
|
104
105
|
* The input connection point.
|
|
105
106
|
*/
|
|
106
|
-
public readonly input = this._registerInput(
|
|
107
|
+
public readonly input = this._registerInput(Uniforms.input, ConnectionPointType.Texture);
|
|
107
108
|
|
|
108
109
|
/**
|
|
109
110
|
* The shader program (vertex and fragment code) to use to render the block
|
|
110
111
|
*/
|
|
111
|
-
public static override ShaderCode =
|
|
112
|
+
public static override ShaderCode = BlockShaderProgram;
|
|
112
113
|
|
|
113
114
|
/**
|
|
114
115
|
* Instantiates a new BlackAndWhiteBlock.
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { type SmartFilter, type ISerializedBlockV1 } from "
|
|
2
|
-
import { BlurBlock } from "./blurBlock.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* The definition of the extra data serialized for blur blocks.
|
|
6
|
-
*/
|
|
7
|
-
export interface ISerializedBlurBlockV1 extends ISerializedBlockV1 {
|
|
8
|
-
/**
|
|
9
|
-
* The extra data of the block.
|
|
10
|
-
*/
|
|
11
|
-
data: {
|
|
12
|
-
/**
|
|
13
|
-
* The blur texture ratio per pass.
|
|
14
|
-
*/
|
|
15
|
-
blurTextureRatioPerPass: number;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* The size of the blur.
|
|
19
|
-
*/
|
|
20
|
-
blurSize: number;
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* V1 Blur Deserializer.
|
|
26
|
-
* @param smartFilter - The SmartFilter to deserialize the block into
|
|
27
|
-
* @param serializedBlock - The serialized block data
|
|
28
|
-
* @returns A deserialized BlurBlock
|
|
29
|
-
*/
|
|
30
|
-
export function
|
|
31
|
-
const block = new BlurBlock(smartFilter, serializedBlock.name);
|
|
32
|
-
|
|
33
|
-
// If data is missing, use the default value set by the block
|
|
34
|
-
block.blurTextureRatioPerPass = serializedBlock.data.blurTextureRatioPerPass ?? block.blurSize;
|
|
35
|
-
block.blurSize = serializedBlock.data.blurSize ?? block.blurSize;
|
|
36
|
-
return block;
|
|
37
|
-
}
|
|
1
|
+
import { type SmartFilter, type ISerializedBlockV1 } from "smart-filters";
|
|
2
|
+
import { BlurBlock } from "./blurBlock.js";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The definition of the extra data serialized for blur blocks.
|
|
6
|
+
*/
|
|
7
|
+
export interface ISerializedBlurBlockV1 extends ISerializedBlockV1 {
|
|
8
|
+
/**
|
|
9
|
+
* The extra data of the block.
|
|
10
|
+
*/
|
|
11
|
+
data: {
|
|
12
|
+
/**
|
|
13
|
+
* The blur texture ratio per pass.
|
|
14
|
+
*/
|
|
15
|
+
blurTextureRatioPerPass: number;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* The size of the blur.
|
|
19
|
+
*/
|
|
20
|
+
blurSize: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* V1 Blur Deserializer.
|
|
26
|
+
* @param smartFilter - The SmartFilter to deserialize the block into
|
|
27
|
+
* @param serializedBlock - The serialized block data
|
|
28
|
+
* @returns A deserialized BlurBlock
|
|
29
|
+
*/
|
|
30
|
+
export function BlurBlockDeserializer(smartFilter: SmartFilter, serializedBlock: ISerializedBlurBlockV1) {
|
|
31
|
+
const block = new BlurBlock(smartFilter, serializedBlock.name);
|
|
32
|
+
|
|
33
|
+
// If data is missing, use the default value set by the block
|
|
34
|
+
block.blurTextureRatioPerPass = serializedBlock.data.blurTextureRatioPerPass ?? block.blurSize;
|
|
35
|
+
block.blurSize = serializedBlock.data.blurSize ?? block.blurSize;
|
|
36
|
+
return block;
|
|
37
|
+
}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import type { BaseBlock, IBlockSerializerV1 } from "
|
|
2
|
-
import type { BlurBlock } from "./blurBlock";
|
|
3
|
-
import { blurBlockType } from "../../../blockTypes.js";
|
|
4
|
-
import { babylonDemoEffectsNamespace } from "../../../blockNamespaces.js";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* The V1 serializer for a Blur Block.
|
|
8
|
-
* Though it is an aggregate block, Blur creates and manages its own blocks
|
|
9
|
-
* internally, so there's no need to worry about serializing them.
|
|
10
|
-
*/
|
|
11
|
-
export const
|
|
12
|
-
blockType: blurBlockType,
|
|
13
|
-
serialize: (block: BaseBlock) => {
|
|
14
|
-
if (block.getClassName() !== blurBlockType) {
|
|
15
|
-
throw new Error("Was asked to serialize an unrecognized block type");
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
const blurBlock = block as unknown as BlurBlock;
|
|
19
|
-
return {
|
|
20
|
-
name: block.name,
|
|
21
|
-
uniqueId: block.uniqueId,
|
|
22
|
-
blockType: blurBlockType,
|
|
23
|
-
namespace: babylonDemoEffectsNamespace,
|
|
24
|
-
comments: block.comments,
|
|
25
|
-
data: {
|
|
26
|
-
blurTextureRatioPerPass: blurBlock.blurTextureRatioPerPass,
|
|
27
|
-
blurSize: blurBlock.blurSize,
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
},
|
|
31
|
-
};
|
|
1
|
+
import type { BaseBlock, IBlockSerializerV1 } from "smart-filters";
|
|
2
|
+
import type { BlurBlock } from "./blurBlock.js";
|
|
3
|
+
import { blurBlockType } from "../../../blockTypes.js";
|
|
4
|
+
import { babylonDemoEffectsNamespace } from "../../../blockNamespaces.js";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The V1 serializer for a Blur Block.
|
|
8
|
+
* Though it is an aggregate block, Blur creates and manages its own blocks
|
|
9
|
+
* internally, so there's no need to worry about serializing them.
|
|
10
|
+
*/
|
|
11
|
+
export const BlurBlockSerializer: IBlockSerializerV1 = {
|
|
12
|
+
blockType: blurBlockType,
|
|
13
|
+
serialize: (block: BaseBlock) => {
|
|
14
|
+
if (block.getClassName() !== blurBlockType) {
|
|
15
|
+
throw new Error("Was asked to serialize an unrecognized block type");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const blurBlock = block as unknown as BlurBlock;
|
|
19
|
+
return {
|
|
20
|
+
name: block.name,
|
|
21
|
+
uniqueId: block.uniqueId,
|
|
22
|
+
blockType: blurBlockType,
|
|
23
|
+
namespace: babylonDemoEffectsNamespace,
|
|
24
|
+
comments: block.comments,
|
|
25
|
+
data: {
|
|
26
|
+
blurTextureRatioPerPass: blurBlock.blurTextureRatioPerPass,
|
|
27
|
+
blurSize: blurBlock.blurSize,
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
},
|
|
31
|
+
};
|