@babylonjs/smart-filters-blocks 1.0.13 → 8.19.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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directionalBlurBlock.deserializer.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"directionalBlurBlock.deserializer.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,iCAAsB;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,iCAAkC,SAAQ,kBAAkB;IACzE;;OAEG;IACH,IAAI,EAAE;QACF;;WAEG;QACH,mBAAmB,EAAE,MAAM,CAAC;QAE5B;;WAEG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;WAEG;QACH,gBAAgB,EAAE,MAAM,CAAC;KAC5B,CAAC;CACL;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,iCAAiC,wBAQvH"}
|
|
@@ -5,13 +5,12 @@ import { DirectionalBlurBlock } from "./directionalBlurBlock.js";
|
|
|
5
5
|
* @param serializedBlock - The serialized block data
|
|
6
6
|
* @returns A deserialized DirectionalBlurBlock
|
|
7
7
|
*/
|
|
8
|
-
export function
|
|
9
|
-
var _a, _b, _c;
|
|
8
|
+
export function DirectionalBlurDeserializer(smartFilter, serializedBlock) {
|
|
10
9
|
const block = new DirectionalBlurBlock(smartFilter, serializedBlock.name);
|
|
11
10
|
// If data is missing, use the default value set by the block
|
|
12
|
-
block.blurHorizontalWidth =
|
|
13
|
-
block.blurVerticalWidth =
|
|
14
|
-
block.blurTextureRatio =
|
|
11
|
+
block.blurHorizontalWidth = serializedBlock.data.blurHorizontalWidth ?? block.blurHorizontalWidth;
|
|
12
|
+
block.blurVerticalWidth = serializedBlock.data.blurVerticalWidth ?? block.blurVerticalWidth;
|
|
13
|
+
block.blurTextureRatio = serializedBlock.data.blurTextureRatio ?? block.blurTextureRatio;
|
|
15
14
|
return block;
|
|
16
15
|
}
|
|
17
16
|
//# sourceMappingURL=directionalBlurBlock.deserializer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directionalBlurBlock.deserializer.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AA2BjE;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,
|
|
1
|
+
{"version":3,"file":"directionalBlurBlock.deserializer.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.deserializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AA2BjE;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,WAAwB,EAAE,eAAkD;IACpH,MAAM,KAAK,GAAG,IAAI,oBAAoB,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAE1E,6DAA6D;IAC7D,KAAK,CAAC,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAClG,KAAK,CAAC,iBAAiB,GAAG,eAAe,CAAC,IAAI,CAAC,iBAAiB,IAAI,KAAK,CAAC,iBAAiB,CAAC;IAC5F,KAAK,CAAC,gBAAgB,GAAG,eAAe,CAAC,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAC,gBAAgB,CAAC;IACzF,OAAO,KAAK,CAAC;AACjB,CAAC"}
|
|
@@ -1,55 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
1
|
+
import { __decorate } from "@babylonjs/core/tslib.es6.js";
|
|
7
2
|
import { ConnectionPointType, editableInPropertyPage, PropertyTypeForEdition, ShaderBinding, ShaderBlock, } from "@babylonjs/smart-filters";
|
|
8
3
|
import { directionalBlurBlockType } from "../../../blockTypes.js";
|
|
9
4
|
import { babylonDemoEffectsNamespace } from "../../../blockNamespaces.js";
|
|
10
|
-
const
|
|
5
|
+
const ShaderProgram = {
|
|
11
6
|
fragment: {
|
|
12
|
-
const: `
|
|
13
|
-
const float _epsilon_ = 0.01;
|
|
7
|
+
const: `
|
|
8
|
+
const float _epsilon_ = 0.01;
|
|
14
9
|
`,
|
|
15
|
-
uniform: `
|
|
16
|
-
uniform vec2 _texelStep_;
|
|
17
|
-
uniform sampler2D _input_;
|
|
10
|
+
uniform: `
|
|
11
|
+
uniform vec2 _texelStep_;
|
|
12
|
+
uniform sampler2D _input_;
|
|
18
13
|
`,
|
|
19
|
-
uniformSingle: `
|
|
20
|
-
uniform float[7] _weights_;
|
|
14
|
+
uniformSingle: `
|
|
15
|
+
uniform float[7] _weights_;
|
|
21
16
|
`,
|
|
22
17
|
mainFunctionName: "_directionalBlur_",
|
|
23
18
|
mainInputTexture: "_input_",
|
|
24
19
|
functions: [
|
|
25
20
|
{
|
|
26
21
|
name: "_directionalBlur_",
|
|
27
|
-
code: `
|
|
28
|
-
vec4 _directionalBlur_(vec2 vUV) {
|
|
29
|
-
vec2 start = vUV - 3.0 * _texelStep_;
|
|
30
|
-
|
|
31
|
-
vec4 finalWeightedColor = vec4(0., 0., 0., 0.);
|
|
32
|
-
|
|
33
|
-
for (int i = 0; i < 7; i++)
|
|
34
|
-
{
|
|
35
|
-
vec2 fetchUV = start + _texelStep_ * float(i);
|
|
36
|
-
fetchUV = clamp(fetchUV, 0., 1.);
|
|
37
|
-
vec4 colorSample = texture2D(_input_, fetchUV);
|
|
38
|
-
|
|
39
|
-
// Ignore samples from mostly transparent pixels
|
|
40
|
-
if (colorSample.a < _epsilon_) continue;
|
|
41
|
-
|
|
42
|
-
finalWeightedColor += colorSample * _weights_[i];
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
return finalWeightedColor;
|
|
46
|
-
}
|
|
22
|
+
code: `
|
|
23
|
+
vec4 _directionalBlur_(vec2 vUV) {
|
|
24
|
+
vec2 start = vUV - 3.0 * _texelStep_;
|
|
25
|
+
|
|
26
|
+
vec4 finalWeightedColor = vec4(0., 0., 0., 0.);
|
|
27
|
+
|
|
28
|
+
for (int i = 0; i < 7; i++)
|
|
29
|
+
{
|
|
30
|
+
vec2 fetchUV = start + _texelStep_ * float(i);
|
|
31
|
+
fetchUV = clamp(fetchUV, 0., 1.);
|
|
32
|
+
vec4 colorSample = texture2D(_input_, fetchUV);
|
|
33
|
+
|
|
34
|
+
// Ignore samples from mostly transparent pixels
|
|
35
|
+
if (colorSample.a < _epsilon_) continue;
|
|
36
|
+
|
|
37
|
+
finalWeightedColor += colorSample * _weights_[i];
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return finalWeightedColor;
|
|
41
|
+
}
|
|
47
42
|
`,
|
|
48
43
|
},
|
|
49
44
|
],
|
|
50
45
|
},
|
|
51
46
|
};
|
|
52
|
-
const
|
|
47
|
+
const WideWeights = Float32Array.from([0.05, 0.1, 0.2, 0.3, 0.2, 0.1, 0.05]);
|
|
53
48
|
/**
|
|
54
49
|
* The shader bindings for the DirectionalBlur block.
|
|
55
50
|
*/
|
|
@@ -72,7 +67,7 @@ export class DirectionalBlurShaderBinding extends ShaderBinding {
|
|
|
72
67
|
*/
|
|
73
68
|
bind(effect) {
|
|
74
69
|
// Global pass Setup
|
|
75
|
-
effect.setFloatArray(this.getRemappedName("weights"),
|
|
70
|
+
effect.setFloatArray(this.getRemappedName("weights"), WideWeights);
|
|
76
71
|
// V blur
|
|
77
72
|
effect.setTexture(this.getRemappedName("input"), this._inputTexture.value);
|
|
78
73
|
// Texel size
|
|
@@ -142,7 +137,7 @@ DirectionalBlurBlock.Namespace = babylonDemoEffectsNamespace;
|
|
|
142
137
|
/**
|
|
143
138
|
* The shader program (vertex and fragment code) to use to render the block
|
|
144
139
|
*/
|
|
145
|
-
DirectionalBlurBlock.ShaderCode =
|
|
140
|
+
DirectionalBlurBlock.ShaderCode = ShaderProgram;
|
|
146
141
|
__decorate([
|
|
147
142
|
editableInPropertyPage("Texture Ratio", PropertyTypeForEdition.Float, "PROPERTIES", {
|
|
148
143
|
min: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directionalBlurBlock.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"directionalBlurBlock.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,5 @@ import type { IBlockSerializerV1 } from "@babylonjs/smart-filters";
|
|
|
2
2
|
/**
|
|
3
3
|
* The V1 serializer for a Directional Blur Block
|
|
4
4
|
*/
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const DirectionalBlurBlockSerializer: IBlockSerializerV1;
|
|
6
6
|
//# sourceMappingURL=directionalBlurBlock.serializer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directionalBlurBlock.serializer.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.serializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAa,
|
|
1
|
+
{"version":3,"file":"directionalBlurBlock.serializer.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/directionalBlurBlock.serializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAa,iCAAsB;AAKnE;;GAEG;AACH,eAAO,MAAM,8BAA8B,EAAE,kBAqB5C,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { babylonDemoEffectsNamespace } from "../../../blockNamespaces.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* The V1 serializer for a Directional Blur Block
|
|
5
5
|
*/
|
|
6
|
-
export const
|
|
6
|
+
export const DirectionalBlurBlockSerializer = {
|
|
7
7
|
blockType: directionalBlurBlockType,
|
|
8
8
|
serialize: (block) => {
|
|
9
9
|
if (block.getClassName() !== directionalBlurBlockType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exposureBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/exposureBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,
|
|
1
|
+
{"version":3,"file":"exposureBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/exposureBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,iCAAsB;AAwE/C;;GAEG;AACH,qBAAa,aAAc,SAAQ,sBAAsB;IACrD;;OAEG;IACH,OAAuB,SAAS,SAAmB;IAEnD;;OAEG;IACH,OAAuB,SAAS,SAA0B;IAE1D;;OAEG;IACH,SAAgB,KAAK,kFAAoE;IAEzF;;OAEG;IACH,SAAgB,MAAM,gFAAmE;IAEzF;;OAEG;IACH,OAAuB,UAAU,gBAAsB;IAEvD;;;;OAIG;gBACS,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;IAIlD;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;CAMtD"}
|
|
@@ -6,7 +6,7 @@ import { DisableableShaderBinding, ConnectionPointType, DisableableShaderBlock,
|
|
|
6
6
|
/**
|
|
7
7
|
* The shader program for the block.
|
|
8
8
|
*/
|
|
9
|
-
const
|
|
9
|
+
const BlockShaderProgram = {
|
|
10
10
|
vertex: undefined,
|
|
11
11
|
fragment: {
|
|
12
12
|
uniform: `
|
|
@@ -32,7 +32,7 @@ const shaderProgram = {
|
|
|
32
32
|
* The uniform names for this shader, to be used in the shader binding so
|
|
33
33
|
* that the names are always in sync.
|
|
34
34
|
*/
|
|
35
|
-
const
|
|
35
|
+
const Uniforms = {
|
|
36
36
|
input: "input",
|
|
37
37
|
amount: "amount",
|
|
38
38
|
};
|
|
@@ -57,8 +57,8 @@ class ExposureBlockShaderBinding extends DisableableShaderBinding {
|
|
|
57
57
|
*/
|
|
58
58
|
bind(effect) {
|
|
59
59
|
super.bind(effect);
|
|
60
|
-
effect.setTexture(this.getRemappedName(
|
|
61
|
-
effect.setFloat(this.getRemappedName(
|
|
60
|
+
effect.setTexture(this.getRemappedName(Uniforms.input), this._input.value);
|
|
61
|
+
effect.setFloat(this.getRemappedName(Uniforms.amount), this._amount.value);
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
@@ -75,11 +75,11 @@ export class ExposureBlock extends DisableableShaderBlock {
|
|
|
75
75
|
/**
|
|
76
76
|
* The input connection point.
|
|
77
77
|
*/
|
|
78
|
-
this.input = this._registerInput(
|
|
78
|
+
this.input = this._registerInput(Uniforms.input, ConnectionPointType.Texture);
|
|
79
79
|
/**
|
|
80
80
|
* The amount connection point.
|
|
81
81
|
*/
|
|
82
|
-
this.amount = this._registerInput(
|
|
82
|
+
this.amount = this._registerInput(Uniforms.amount, ConnectionPointType.Float);
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
85
|
* Get the class instance that binds all the required data to the shader (effect) when rendering.
|
|
@@ -102,5 +102,5 @@ ExposureBlock.Namespace = "Babylon.Demo.Effects";
|
|
|
102
102
|
/**
|
|
103
103
|
* The shader program (vertex and fragment code) to use to render the block
|
|
104
104
|
*/
|
|
105
|
-
ExposureBlock.ShaderCode =
|
|
105
|
+
ExposureBlock.ShaderCode = BlockShaderProgram;
|
|
106
106
|
//# sourceMappingURL=exposureBlock.block.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exposureBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/exposureBlock.block.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,+DAA+D;AAC/D,+DAA+D;AAC/D,+DAA+D;AAS/D,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAAC,
|
|
1
|
+
{"version":3,"file":"exposureBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/exposureBlock.block.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,+DAA+D;AAC/D,+DAA+D;AAC/D,+DAA+D;AAS/D,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAAC,iCAAsB;AAE/C;;GAEG;AACH,MAAM,kBAAkB,GAAkB;IACtC,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE;QACN,OAAO,EAAE;;oCAEmB;QAC5B,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,YAAY;QAC9B,SAAS,EAAE;YACP;gBACI,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE;;;;;qBAKD;gBACL,MAAM,EAAE,UAAU;aACrB;SACJ;KACJ;CACJ,CAAC;AAEF;;;GAGG;AACH,MAAM,QAAQ,GAAG;IACb,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACnB,CAAC;AAGF;;GAEG;AACH,MAAM,0BAA2B,SAAQ,wBAAwB;IAI7D;;;;;OAKG;IACH,YACI,WAA8B,EAC9B,KAA+C,EAC/C,MAA8C;QAE9C,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACa,IAAI,CAAC,MAAc;QAC/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,sBAAsB;IA0BrD;;;;OAIG;IACH,YAAY,WAAwB,EAAE,IAAY;QAC9C,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;QArBrE;;WAEG;QACa,UAAK,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAEzF;;WAEG;QACa,WAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAczF,CAAC;IAED;;;OAGG;IACI,gBAAgB;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,0BAA0B,CAAC,IAAI,EAAC,KAAK,EAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;;AA3CD;;GAEG;AACoB,uBAAS,GAAG,eAAe,AAAlB,CAAmB;AAEnD;;GAEG;AACoB,uBAAS,GAAG,sBAAsB,AAAzB,CAA0B;AAY1D;;GAEG;AACoB,wBAAU,GAAG,kBAAkB,AAArB,CAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greenScreenBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/greenScreenBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,
|
|
1
|
+
{"version":3,"file":"greenScreenBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/greenScreenBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,iCAAsB;AA4F/C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,sBAAsB;IACxD;;OAEG;IACH,OAAuB,SAAS,SAAsB;IAEtD;;OAEG;IACH,OAAuB,SAAS,SAA0B;IAE1D;;OAEG;IACH,SAAgB,KAAK,kFAAoE;IAEzF;;OAEG;IACH,SAAgB,UAAU,kFAAyE;IAEnG;;OAEG;IACH,SAAgB,SAAS,iFAAuE;IAEhG;;OAEG;IACH,SAAgB,QAAQ,gFAAqE;IAE7F;;OAEG;IACH,OAAuB,UAAU,gBAAsB;IAEvD;;;;OAIG;gBACS,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;IAIlD;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;CAQtD"}
|
|
@@ -6,7 +6,7 @@ import { DisableableShaderBinding, ConnectionPointType, DisableableShaderBlock,
|
|
|
6
6
|
/**
|
|
7
7
|
* The shader program for the block.
|
|
8
8
|
*/
|
|
9
|
-
const
|
|
9
|
+
const BlockShaderProgram = {
|
|
10
10
|
vertex: undefined,
|
|
11
11
|
fragment: {
|
|
12
12
|
uniform: `
|
|
@@ -40,7 +40,7 @@ const shaderProgram = {
|
|
|
40
40
|
* The uniform names for this shader, to be used in the shader binding so
|
|
41
41
|
* that the names are always in sync.
|
|
42
42
|
*/
|
|
43
|
-
const
|
|
43
|
+
const Uniforms = {
|
|
44
44
|
input: "input",
|
|
45
45
|
background: "background",
|
|
46
46
|
reference: "reference",
|
|
@@ -71,10 +71,10 @@ class GreenScreenBlockShaderBinding extends DisableableShaderBinding {
|
|
|
71
71
|
*/
|
|
72
72
|
bind(effect) {
|
|
73
73
|
super.bind(effect);
|
|
74
|
-
effect.setTexture(this.getRemappedName(
|
|
75
|
-
effect.setTexture(this.getRemappedName(
|
|
76
|
-
effect.setColor3(this.getRemappedName(
|
|
77
|
-
effect.setFloat(this.getRemappedName(
|
|
74
|
+
effect.setTexture(this.getRemappedName(Uniforms.input), this._input.value);
|
|
75
|
+
effect.setTexture(this.getRemappedName(Uniforms.background), this._background.value);
|
|
76
|
+
effect.setColor3(this.getRemappedName(Uniforms.reference), this._reference.value);
|
|
77
|
+
effect.setFloat(this.getRemappedName(Uniforms.distance), this._distance.value);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
@@ -91,19 +91,19 @@ export class GreenScreenBlock extends DisableableShaderBlock {
|
|
|
91
91
|
/**
|
|
92
92
|
* The input connection point.
|
|
93
93
|
*/
|
|
94
|
-
this.input = this._registerInput(
|
|
94
|
+
this.input = this._registerInput(Uniforms.input, ConnectionPointType.Texture);
|
|
95
95
|
/**
|
|
96
96
|
* The background connection point.
|
|
97
97
|
*/
|
|
98
|
-
this.background = this._registerInput(
|
|
98
|
+
this.background = this._registerInput(Uniforms.background, ConnectionPointType.Texture);
|
|
99
99
|
/**
|
|
100
100
|
* The reference connection point.
|
|
101
101
|
*/
|
|
102
|
-
this.reference = this._registerInput(
|
|
102
|
+
this.reference = this._registerInput(Uniforms.reference, ConnectionPointType.Color3);
|
|
103
103
|
/**
|
|
104
104
|
* The distance connection point.
|
|
105
105
|
*/
|
|
106
|
-
this.distance = this._registerInput(
|
|
106
|
+
this.distance = this._registerInput(Uniforms.distance, ConnectionPointType.Float);
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
109
109
|
* Get the class instance that binds all the required data to the shader (effect) when rendering.
|
|
@@ -128,5 +128,5 @@ GreenScreenBlock.Namespace = "Babylon.Demo.Effects";
|
|
|
128
128
|
/**
|
|
129
129
|
* The shader program (vertex and fragment code) to use to render the block
|
|
130
130
|
*/
|
|
131
|
-
GreenScreenBlock.ShaderCode =
|
|
131
|
+
GreenScreenBlock.ShaderCode = BlockShaderProgram;
|
|
132
132
|
//# sourceMappingURL=greenScreenBlock.block.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greenScreenBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/greenScreenBlock.block.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,+DAA+D;AAC/D,+DAA+D;AAC/D,+DAA+D;AAS/D,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAAC,
|
|
1
|
+
{"version":3,"file":"greenScreenBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/greenScreenBlock.block.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import type { Effect } from "@babylonjs/core/Materials/effect";
|
|
1
|
+
import type { Effect } from "@babylonjs/core/Materials/effect.js";
|
|
2
2
|
import { type ShaderProgram, DisableableShaderBinding, type RuntimeData, ConnectionPointType, type IDisableableBlock, DisableableShaderBlock, type SmartFilter } from "@babylonjs/smart-filters";
|
|
3
|
+
/**
|
|
4
|
+
* This block uses a custom vertex shader, so it defines the ShaderProgram inline
|
|
5
|
+
*/
|
|
6
|
+
declare const ShaderProgram: ShaderProgram;
|
|
3
7
|
/**
|
|
4
8
|
* The shader bindings for the Kaleidoscope block.
|
|
5
9
|
*/
|
|
@@ -55,4 +59,5 @@ export declare class KaleidoscopeBlock extends DisableableShaderBlock {
|
|
|
55
59
|
*/
|
|
56
60
|
getShaderBinding(): DisableableShaderBinding;
|
|
57
61
|
}
|
|
62
|
+
export {};
|
|
58
63
|
//# sourceMappingURL=kaleidoscopeBlock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kaleidoscopeBlock.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/kaleidoscopeBlock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"kaleidoscopeBlock.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/kaleidoscopeBlock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,4CAAiC;AAEvD,OAAO,EACH,KAAK,aAAa,EAClB,wBAAwB,EACxB,KAAK,WAAW,EAChB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,KAAK,WAAW,EAEnB,iCAAsB;AAKvB;;GAEG;AACH,QAAA,MAAM,aAAa,EAAE,aAwFpB,CAAC;AAEF;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,wBAAwB;IACnE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2C;IACzE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAE/D;;;;;OAKG;gBACS,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC;IAMhJ;;;OAGG;IACa,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAK7C;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,sBAAsB;IACzD;;OAEG;IACH,OAAuB,SAAS,SAAyB;IAEzD;;OAEG;IACH,OAAuB,SAAS,SAA+B;IAE/D;;OAEG;IACH,SAAgB,KAAK,kFAA6D;IAElF;;OAEG;IACH,SAAgB,IAAI,gFAA0D;IAE9E;;OAEG;IACH,OAAuB,UAAU,gBAAiB;IAElD;;;;OAIG;gBACS,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;IAIlD;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;CAMtD"}
|
|
@@ -4,85 +4,85 @@ import { babylonDemoEffectsNamespace } from "../../../blockNamespaces.js";
|
|
|
4
4
|
/**
|
|
5
5
|
* This block uses a custom vertex shader, so it defines the ShaderProgram inline
|
|
6
6
|
*/
|
|
7
|
-
const
|
|
8
|
-
vertex: `
|
|
9
|
-
// Attributes
|
|
10
|
-
attribute vec2 position;
|
|
11
|
-
|
|
12
|
-
// Output
|
|
13
|
-
varying vec2 vUV;
|
|
14
|
-
|
|
15
|
-
void main(void) {
|
|
16
|
-
vUV = position;
|
|
17
|
-
gl_Position = vec4(position, 0.0, 1.0);
|
|
18
|
-
}
|
|
7
|
+
const ShaderProgram = {
|
|
8
|
+
vertex: `
|
|
9
|
+
// Attributes
|
|
10
|
+
attribute vec2 position;
|
|
11
|
+
|
|
12
|
+
// Output
|
|
13
|
+
varying vec2 vUV;
|
|
14
|
+
|
|
15
|
+
void main(void) {
|
|
16
|
+
vUV = position;
|
|
17
|
+
gl_Position = vec4(position, 0.0, 1.0);
|
|
18
|
+
}
|
|
19
19
|
`,
|
|
20
20
|
fragment: {
|
|
21
|
-
uniform: `
|
|
22
|
-
uniform sampler2D _input_;
|
|
23
|
-
uniform float _time_;
|
|
24
|
-
uniform bool _disabled_;
|
|
21
|
+
uniform: `
|
|
22
|
+
uniform sampler2D _input_;
|
|
23
|
+
uniform float _time_;
|
|
24
|
+
uniform bool _disabled_;
|
|
25
25
|
`,
|
|
26
|
-
const: `
|
|
27
|
-
const float _width_ = 200.;
|
|
28
|
-
const float _height_ = 300.;
|
|
29
|
-
const vec2 _imageRatio_ = vec2(700. / _width_, 1024. / _height_);
|
|
30
|
-
const vec2 _imageRelativeSize_ = 1. / _imageRatio_;
|
|
31
|
-
const float _halfDiag_ = sqrt(_imageRelativeSize_.x * _imageRelativeSize_.x + _imageRelativeSize_.y * _imageRelativeSize_.y) * 0.5;
|
|
32
|
-
|
|
33
|
-
const float _radius_ = 0.9;
|
|
34
|
-
const float _radius2_ = 0.4;
|
|
35
|
-
|
|
36
|
-
const float _segments_ = 6.;
|
|
37
|
-
const float _segmentArc_ = (2. * 3.1415926535897932384626433832795 / _segments_);
|
|
26
|
+
const: `
|
|
27
|
+
const float _width_ = 200.;
|
|
28
|
+
const float _height_ = 300.;
|
|
29
|
+
const vec2 _imageRatio_ = vec2(700. / _width_, 1024. / _height_);
|
|
30
|
+
const vec2 _imageRelativeSize_ = 1. / _imageRatio_;
|
|
31
|
+
const float _halfDiag_ = sqrt(_imageRelativeSize_.x * _imageRelativeSize_.x + _imageRelativeSize_.y * _imageRelativeSize_.y) * 0.5;
|
|
32
|
+
|
|
33
|
+
const float _radius_ = 0.9;
|
|
34
|
+
const float _radius2_ = 0.4;
|
|
35
|
+
|
|
36
|
+
const float _segments_ = 6.;
|
|
37
|
+
const float _segmentArc_ = (2. * 3.1415926535897932384626433832795 / _segments_);
|
|
38
38
|
`,
|
|
39
39
|
mainFunctionName: "_kaleidoscope_",
|
|
40
40
|
mainInputTexture: "_input_",
|
|
41
41
|
functions: [
|
|
42
42
|
{
|
|
43
43
|
name: "_kaleidoscope_",
|
|
44
|
-
code: `
|
|
45
|
-
vec4 _kaleidoscope_(vec2 vUV) {
|
|
46
|
-
if (_disabled_) return texture2D(_input_, vUV);
|
|
47
|
-
|
|
48
|
-
float distanceToCircle = abs(length(vUV) - _radius_);
|
|
49
|
-
vec4 result = vec4(0., 0., 0., 0.);
|
|
50
|
-
|
|
51
|
-
if (distanceToCircle < _halfDiag_ * 10000.) {
|
|
52
|
-
float pointTheta = atan(vUV.y, vUV.x);
|
|
53
|
-
pointTheta += _time_;
|
|
54
|
-
for (float i = -1.; i < 2.; i += 1.) {
|
|
55
|
-
float chunk = floor(pointTheta / _segmentArc_) + i;
|
|
56
|
-
float chunkStart = -_time_ + chunk * _segmentArc_ + _segmentArc_ * 0.5;
|
|
57
|
-
vec2 chunkStartCenter = vec2(cos(chunkStart), sin(chunkStart)) * _radius_;
|
|
58
|
-
vec2 chunkStartPoint = vUV - chunkStartCenter;
|
|
59
|
-
chunkStartPoint *= _imageRatio_;
|
|
60
|
-
chunkStartPoint *= vec2(0.5, 0.5);
|
|
61
|
-
chunkStartPoint += vec2(0.5, 0.5);
|
|
62
|
-
|
|
63
|
-
if (chunkStartPoint.x > 0. && chunkStartPoint.x < 1. && chunkStartPoint.y > 0. && chunkStartPoint.y < 1.) {
|
|
64
|
-
result = texture2D(_input_, chunkStartPoint);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
for (float i = -1.; i < 2.; i += 1.) {
|
|
69
|
-
float chunk = floor(pointTheta / _segmentArc_) + i;
|
|
70
|
-
float chunkStart = -_time_ + chunk * _segmentArc_ + _segmentArc_ * 0.5;
|
|
71
|
-
vec2 chunkStartCenter = vec2(cos(chunkStart), sin(chunkStart)) * _radius2_;
|
|
72
|
-
vec2 chunkStartPoint = vUV - chunkStartCenter;
|
|
73
|
-
chunkStartPoint *= _imageRatio_;
|
|
74
|
-
chunkStartPoint *= vec2(0.5, 0.5);
|
|
75
|
-
chunkStartPoint += vec2(0.5, 0.5);
|
|
76
|
-
|
|
77
|
-
if (chunkStartPoint.x > 0. && chunkStartPoint.x < 1. && chunkStartPoint.y > 0. && chunkStartPoint.y < 1.) {
|
|
78
|
-
vec4 top = texture2D(_input_, chunkStartPoint);
|
|
79
|
-
result = mix(result, top, (result.a <= 0.) ? 1. : top.a);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return result;
|
|
85
|
-
}
|
|
44
|
+
code: `
|
|
45
|
+
vec4 _kaleidoscope_(vec2 vUV) {
|
|
46
|
+
if (_disabled_) return texture2D(_input_, vUV);
|
|
47
|
+
|
|
48
|
+
float distanceToCircle = abs(length(vUV) - _radius_);
|
|
49
|
+
vec4 result = vec4(0., 0., 0., 0.);
|
|
50
|
+
|
|
51
|
+
if (distanceToCircle < _halfDiag_ * 10000.) {
|
|
52
|
+
float pointTheta = atan(vUV.y, vUV.x);
|
|
53
|
+
pointTheta += _time_;
|
|
54
|
+
for (float i = -1.; i < 2.; i += 1.) {
|
|
55
|
+
float chunk = floor(pointTheta / _segmentArc_) + i;
|
|
56
|
+
float chunkStart = -_time_ + chunk * _segmentArc_ + _segmentArc_ * 0.5;
|
|
57
|
+
vec2 chunkStartCenter = vec2(cos(chunkStart), sin(chunkStart)) * _radius_;
|
|
58
|
+
vec2 chunkStartPoint = vUV - chunkStartCenter;
|
|
59
|
+
chunkStartPoint *= _imageRatio_;
|
|
60
|
+
chunkStartPoint *= vec2(0.5, 0.5);
|
|
61
|
+
chunkStartPoint += vec2(0.5, 0.5);
|
|
62
|
+
|
|
63
|
+
if (chunkStartPoint.x > 0. && chunkStartPoint.x < 1. && chunkStartPoint.y > 0. && chunkStartPoint.y < 1.) {
|
|
64
|
+
result = texture2D(_input_, chunkStartPoint);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
for (float i = -1.; i < 2.; i += 1.) {
|
|
69
|
+
float chunk = floor(pointTheta / _segmentArc_) + i;
|
|
70
|
+
float chunkStart = -_time_ + chunk * _segmentArc_ + _segmentArc_ * 0.5;
|
|
71
|
+
vec2 chunkStartCenter = vec2(cos(chunkStart), sin(chunkStart)) * _radius2_;
|
|
72
|
+
vec2 chunkStartPoint = vUV - chunkStartCenter;
|
|
73
|
+
chunkStartPoint *= _imageRatio_;
|
|
74
|
+
chunkStartPoint *= vec2(0.5, 0.5);
|
|
75
|
+
chunkStartPoint += vec2(0.5, 0.5);
|
|
76
|
+
|
|
77
|
+
if (chunkStartPoint.x > 0. && chunkStartPoint.x < 1. && chunkStartPoint.y > 0. && chunkStartPoint.y < 1.) {
|
|
78
|
+
vec4 top = texture2D(_input_, chunkStartPoint);
|
|
79
|
+
result = mix(result, top, (result.a <= 0.) ? 1. : top.a);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return result;
|
|
85
|
+
}
|
|
86
86
|
`,
|
|
87
87
|
},
|
|
88
88
|
],
|
|
@@ -154,5 +154,5 @@ KaleidoscopeBlock.Namespace = babylonDemoEffectsNamespace;
|
|
|
154
154
|
/**
|
|
155
155
|
* The shader program (vertex and fragment code) to use to render the block
|
|
156
156
|
*/
|
|
157
|
-
KaleidoscopeBlock.ShaderCode =
|
|
157
|
+
KaleidoscopeBlock.ShaderCode = ShaderProgram;
|
|
158
158
|
//# sourceMappingURL=kaleidoscopeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kaleidoscopeBlock.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/kaleidoscopeBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAEtB,oBAAoB,GACvB,
|
|
1
|
+
{"version":3,"file":"kaleidoscopeBlock.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/kaleidoscopeBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAEtB,oBAAoB,GACvB,iCAAsB;AAEvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAE1E;;GAEG;AACH,MAAM,aAAa,GAAkB;IACjC,MAAM,EAAE;;;;;;;;;;;KAWP;IAED,QAAQ,EAAE;QACN,OAAO,EAAE;;;;aAIJ;QAEL,KAAK,EAAE;;;;;;;;;;;;aAYF;QAEL,gBAAgB,EAAE,gBAAgB;QAElC,gBAAgB,EAAE,SAAS;QAE3B,SAAS,EAAE;YACP;gBACI,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA0CT;aACA;SACJ;KACJ;CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,wBAAwB;IAInE;;;;;OAKG;IACH,YAAY,WAA8B,EAAE,YAAsD,EAAE,IAA4C;QAC5I,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;OAGG;IACa,IAAI,CAAC,MAAc;QAC/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpE,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,sBAAsB;IA0BzD;;;;OAIG;IACH,YAAY,WAAwB,EAAE,IAAY;QAC9C,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;QArBjE;;WAEG;QACa,UAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAElF;;WAEG;QACa,SAAI,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAc9E,CAAC;IAED;;;OAGG;IACI,gBAAgB;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzD,OAAO,IAAI,yBAAyB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;;AA3CD;;GAEG;AACoB,2BAAS,GAAG,qBAAqB,AAAxB,CAAyB;AAEzD;;GAEG;AACoB,2BAAS,GAAG,2BAA2B,AAA9B,CAA+B;AAY/D;;GAEG;AACoB,4BAAU,GAAG,aAAa,AAAhB,CAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maskBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/maskBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,
|
|
1
|
+
{"version":3,"file":"maskBlock.block.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/maskBlock.block.ts"],"names":[],"mappings":"AAYA,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EACnB,KAAK,WAAW,EAChB,sBAAsB,EACtB,KAAK,aAAa,EAEG,iCAAsB;AA2E/C;;GAEG;AACH,qBAAa,SAAU,SAAQ,sBAAsB;IACjD;;OAEG;IACH,OAAuB,SAAS,SAAe;IAE/C;;OAEG;IACH,OAAuB,SAAS,SAA0B;IAE1D;;OAEG;IACH,SAAgB,KAAK,kFAAoE;IAEzF;;OAEG;IACH,SAAgB,IAAI,kFAAmE;IAEvF;;OAEG;IACH,OAAuB,UAAU,gBAAsB;IAEvD;;;;OAIG;gBACS,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;IAIlD;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;CAMtD"}
|
|
@@ -6,7 +6,7 @@ import { DisableableShaderBinding, ConnectionPointType, DisableableShaderBlock,
|
|
|
6
6
|
/**
|
|
7
7
|
* The shader program for the block.
|
|
8
8
|
*/
|
|
9
|
-
const
|
|
9
|
+
const BlockShaderProgram = {
|
|
10
10
|
vertex: undefined,
|
|
11
11
|
fragment: {
|
|
12
12
|
uniform: `
|
|
@@ -35,7 +35,7 @@ const shaderProgram = {
|
|
|
35
35
|
* The uniform names for this shader, to be used in the shader binding so
|
|
36
36
|
* that the names are always in sync.
|
|
37
37
|
*/
|
|
38
|
-
const
|
|
38
|
+
const Uniforms = {
|
|
39
39
|
input: "input",
|
|
40
40
|
mask: "mask",
|
|
41
41
|
};
|
|
@@ -60,8 +60,8 @@ class MaskBlockShaderBinding extends DisableableShaderBinding {
|
|
|
60
60
|
*/
|
|
61
61
|
bind(effect) {
|
|
62
62
|
super.bind(effect);
|
|
63
|
-
effect.setTexture(this.getRemappedName(
|
|
64
|
-
effect.setTexture(this.getRemappedName(
|
|
63
|
+
effect.setTexture(this.getRemappedName(Uniforms.input), this._input.value);
|
|
64
|
+
effect.setTexture(this.getRemappedName(Uniforms.mask), this._mask.value);
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
@@ -78,11 +78,11 @@ export class MaskBlock extends DisableableShaderBlock {
|
|
|
78
78
|
/**
|
|
79
79
|
* The input connection point.
|
|
80
80
|
*/
|
|
81
|
-
this.input = this._registerInput(
|
|
81
|
+
this.input = this._registerInput(Uniforms.input, ConnectionPointType.Texture);
|
|
82
82
|
/**
|
|
83
83
|
* The mask connection point.
|
|
84
84
|
*/
|
|
85
|
-
this.mask = this._registerInput(
|
|
85
|
+
this.mask = this._registerInput(Uniforms.mask, ConnectionPointType.Texture);
|
|
86
86
|
}
|
|
87
87
|
/**
|
|
88
88
|
* Get the class instance that binds all the required data to the shader (effect) when rendering.
|
|
@@ -105,5 +105,5 @@ MaskBlock.Namespace = "Babylon.Demo.Effects";
|
|
|
105
105
|
/**
|
|
106
106
|
* The shader program (vertex and fragment code) to use to render the block
|
|
107
107
|
*/
|
|
108
|
-
MaskBlock.ShaderCode =
|
|
108
|
+
MaskBlock.ShaderCode = BlockShaderProgram;
|
|
109
109
|
//# sourceMappingURL=maskBlock.block.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maskBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/maskBlock.block.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,+DAA+D;AAC/D,+DAA+D;AAC/D,+DAA+D;AAS/D,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAAC,
|
|
1
|
+
{"version":3,"file":"maskBlock.block.js","sourceRoot":"","sources":["../../../../../src/blocks/babylon/demo/effects/maskBlock.block.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,+DAA+D;AAC/D,+DAA+D;AAC/D,+DAA+D;AAS/D,OAAO,EACH,wBAAwB,EAExB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAAC,iCAAsB;AAE/C;;GAEG;AACH,MAAM,kBAAkB,GAAkB;IACtC,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE;QACN,OAAO,EAAE;;sCAEqB;QAC9B,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,aAAa;QAC/B,SAAS,EAAE;YACP;gBACI,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE;;;;;;;;qBAQD;gBACL,MAAM,EAAE,UAAU;aACrB;SACJ;KACJ;CACJ,CAAC;AAEF;;;GAGG;AACH,MAAM,QAAQ,GAAG;IACb,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;CACf,CAAC;AAGF;;GAEG;AACH,MAAM,sBAAuB,SAAQ,wBAAwB;IAIzD;;;;;OAKG;IACH,YACI,WAA8B,EAC9B,KAA+C,EAC/C,IAA8C;QAE9C,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;OAGG;IACa,IAAI,CAAC,MAAc;QAC/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7E,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,sBAAsB;IA0BjD;;;;OAIG;IACH,YAAY,WAAwB,EAAE,IAAY;QAC9C,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;QArBrE;;WAEG;QACa,UAAK,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAEzF;;WAEG;QACa,SAAI,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAcvF,CAAC;IAED;;;OAGG;IACI,gBAAgB;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzD,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAC,KAAK,EAAC,IAAI,CAAC,CAAC;IACvD,CAAC;;AA3CD;;GAEG;AACoB,mBAAS,GAAG,WAAW,AAAd,CAAe;AAE/C;;GAEG;AACoB,mBAAS,GAAG,sBAAsB,AAAzB,CAA0B;AAY1D;;GAEG;AACoB,oBAAU,GAAG,kBAAkB,AAArB,CAAsB"}
|
|
@@ -19,12 +19,12 @@ export declare class PixelateBlock extends ShaderBlock {
|
|
|
19
19
|
/**
|
|
20
20
|
* The intensity connection point.
|
|
21
21
|
*/
|
|
22
|
-
readonly intensity: import("
|
|
22
|
+
readonly intensity: import("dev/smartFilters/dist/connection/connectionPointWithDefault").ConnectionPointWithDefault<ConnectionPointType.Float>;
|
|
23
23
|
/**
|
|
24
24
|
/**
|
|
25
25
|
* The disabled connection point.
|
|
26
26
|
*/
|
|
27
|
-
readonly disabled: import("
|
|
27
|
+
readonly disabled: import("dev/smartFilters/dist/connection/connectionPointWithDefault").ConnectionPointWithDefault<ConnectionPointType.Boolean>;
|
|
28
28
|
/**
|
|
29
29
|
* The shader program (vertex and fragment code) to use to render the block
|
|
30
30
|
*/
|