@babylonjs/smart-filters 0.3.2-alpha → 0.3.3-alpha

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.
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Builds all .glsl files under <shaderPath>.
3
+ * @param shaderPath - The path to the shaders to watch
4
+ * @param importPath - The path to import the converted shaders
5
+ * @example node buildShaders.js <shaderPath> <importPath>
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=buildShaders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildShaders.d.ts","sourceRoot":"","sources":["../../../src/utils/buildTools/buildShaders.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Builds all .glsl files under <shaderPath>.
3
+ * @param shaderPath - The path to the shaders to watch
4
+ * @param importPath - The path to import the converted shaders
5
+ * @example node buildShaders.js <shaderPath> <importPath>
6
+ */
7
+ import { convertShaders } from "./shaderConverter.js";
8
+ const externalArguments = process.argv.slice(2);
9
+ if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
10
+ convertShaders(externalArguments[0], externalArguments[1]);
11
+ }
12
+ //# sourceMappingURL=buildShaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildShaders.js","sourceRoot":"","sources":["../../../src/utils/buildTools/buildShaders.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,IAAI,iBAAiB,CAAC,MAAM,IAAI,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC"}
@@ -1,2 +1,13 @@
1
- export {};
1
+ /**
2
+ * Converts a single shader
3
+ * @param fragmentShaderPath - The path to the fragment file for the shader
4
+ * @param importPath - The path to import the ShaderProgram type from
5
+ */
6
+ export declare function convertShader(fragmentShaderPath: string, importPath: string): void;
7
+ /**
8
+ * Converts .fragment.glsl and vertex.glsl file pairs into .shader.ts files which export a ShaderProgram object.
9
+ * @param shaderPath - The path to the .glsl files to convert.
10
+ * @param importPath - The path to import the ShaderProgram type from.
11
+ */
12
+ export declare function convertShaders(shaderPath: string, importPath: string): void;
2
13
  //# sourceMappingURL=shaderConverter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shaderConverter.d.ts","sourceRoot":"","sources":["../../../src/utils/buildTools/shaderConverter.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"shaderConverter.d.ts","sourceRoot":"","sources":["../../../src/utils/buildTools/shaderConverter.ts"],"names":[],"mappings":"AA4DA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CA2DlF;AAyPD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAapE"}
@@ -55,7 +55,7 @@ const GetFunctionNamesRegEx = /\S*\w+\s+(\w+)\s*\(/g;
55
55
  * @param fragmentShaderPath - The path to the fragment file for the shader
56
56
  * @param importPath - The path to import the ShaderProgram type from
57
57
  */
58
- function convertShader(fragmentShaderPath, importPath) {
58
+ export function convertShader(fragmentShaderPath, importPath) {
59
59
  console.log(`Processing fragment shader: ${fragmentShaderPath}`);
60
60
  // See if there is a corresponding vertex shader
61
61
  let vertexShader = undefined;
@@ -259,7 +259,7 @@ function removeFunctionBodies(input) {
259
259
  * @param shaderPath - The path to the .glsl files to convert.
260
260
  * @param importPath - The path to import the ShaderProgram type from.
261
261
  */
262
- function convertShaders(shaderPath, importPath) {
262
+ export function convertShaders(shaderPath, importPath) {
263
263
  // Get all files in the path
264
264
  const allFiles = fs.readdirSync(shaderPath, { withFileTypes: true, recursive: true });
265
265
  // Find all fragment shaders (excluding the template)
@@ -269,9 +269,5 @@ function convertShaders(shaderPath, importPath) {
269
269
  convertShader(path.join(fragmentShaderFile.path, fragmentShaderFile.name), importPath);
270
270
  }
271
271
  }
272
- const externalArguments = process.argv.slice(2);
273
- if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
274
- convertShaders(externalArguments[0], externalArguments[1]);
275
- }
276
272
  // TODO: simple copy from shader file to .ts, get it to build (including import trick)
277
273
  //# sourceMappingURL=shaderConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shaderConverter.js","sourceRoot":"","sources":["../../../src/utils/buildTools/shaderConverter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shaderConverter.js","sourceRoot":"","sources":["../../../src/utils/buildTools/shaderConverter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Watches all .glsl files under <shaderPath> and rebuilds them when changed.
3
+ * @param shaderPath - The path to the shaders to watch
4
+ * @param importPath - The path to import the converted shaders
5
+ * @example node watchShaders.js <shaderPath> <importPath>
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=watchShaders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watchShaders.d.ts","sourceRoot":"","sources":["../../../src/utils/buildTools/watchShaders.ts"],"names":[],"mappings":"AACA;;;;;GAKG"}
@@ -0,0 +1,36 @@
1
+ /* eslint-disable no-console */
2
+ /**
3
+ * Watches all .glsl files under <shaderPath> and rebuilds them when changed.
4
+ * @param shaderPath - The path to the shaders to watch
5
+ * @param importPath - The path to import the converted shaders
6
+ * @example node watchShaders.js <shaderPath> <importPath>
7
+ */
8
+ import { convertShader } from "./shaderConverter.js";
9
+ import { watch } from "chokidar";
10
+ import { extname } from "path";
11
+ const externalArguments = process.argv.slice(2);
12
+ if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
13
+ const shaderPath = externalArguments[0];
14
+ const importPath = externalArguments[1];
15
+ watch(shaderPath).on("all", (event, file) => {
16
+ // Only process file changes and added files
17
+ if (event !== "change" && event !== "add") {
18
+ return;
19
+ }
20
+ // Only process .glsl files
21
+ if (extname(file) !== ".glsl") {
22
+ return;
23
+ }
24
+ // Wrap in try-catch to prevent the watcher from crashing
25
+ // if the new shader changes are invalid
26
+ try {
27
+ convertShader(file, importPath);
28
+ console.log(`Successfully updated shader ${file}`);
29
+ }
30
+ catch (error) {
31
+ console.error(`Failed to convert shader ${file}: ${error}`);
32
+ }
33
+ });
34
+ console.log(`Watching for shader changes in ${shaderPath}`);
35
+ }
36
+ //# sourceMappingURL=watchShaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watchShaders.js","sourceRoot":"","sources":["../../../src/utils/buildTools/watchShaders.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,IAAI,iBAAiB,CAAC,MAAM,IAAI,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAExC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACxC,4CAA4C;QAC5C,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACxC,OAAO;QACX,CAAC;QAED,2BAA2B;QAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO;QACX,CAAC;QAED,yDAAyD;QACzD,wCAAwC;QACxC,IAAI,CAAC;YACD,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;QAChE,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,kCAAkC,UAAU,EAAE,CAAC,CAAC;AAChE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/smart-filters",
3
- "version": "0.3.2-alpha",
3
+ "version": "0.3.3-alpha",
4
4
  "description": "Babylon.js Smart Filter core",
5
5
  "author": {
6
6
  "name": "Sebastien VANDENBERGHE"
@@ -43,8 +43,10 @@
43
43
  "build": "npm run build:buildTools && npm run build:runTools && npm run build:core",
44
44
  "build:core": "tsc -p ./tsconfig.build.json",
45
45
  "build:buildTools": "tsc -p ./tsconfig.buildTools.build.json",
46
- "build:runTools": "node buildTools/shaderConverter.js ./src/blocks ../utils/shaderCodeUtils",
47
- "watch": "tsc -p ./tsconfig.build.json --watch",
46
+ "build:runTools": "node buildTools/buildShaders.js ./src/blocks ../utils/shaderCodeUtils",
47
+ "watch": "concurrently \"npm run watch:core\" \"npm run watch:shaders\"",
48
+ "watch:core": "tsc -p ./tsconfig.build.json --watch",
49
+ "watch:shaders": "node buildTools/watchShaders.js ./src/blocks ../utils/shaderCodeUtils",
48
50
  "test": "echo \"Error: run test from the root of the monorepo\" && exit 1"
49
51
  },
50
52
  "peerDependencies": {
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Builds all .glsl files under <shaderPath>.
3
+ * @param shaderPath - The path to the shaders to watch
4
+ * @param importPath - The path to import the converted shaders
5
+ * @example node buildShaders.js <shaderPath> <importPath>
6
+ */
7
+
8
+ import { convertShaders } from "./shaderConverter.js";
9
+
10
+ const externalArguments = process.argv.slice(2);
11
+ if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
12
+ convertShaders(externalArguments[0], externalArguments[1]);
13
+ }
@@ -63,7 +63,7 @@ const GetFunctionNamesRegEx = /\S*\w+\s+(\w+)\s*\(/g;
63
63
  * @param fragmentShaderPath - The path to the fragment file for the shader
64
64
  * @param importPath - The path to import the ShaderProgram type from
65
65
  */
66
- function convertShader(fragmentShaderPath: string, importPath: string): void {
66
+ export function convertShader(fragmentShaderPath: string, importPath: string): void {
67
67
  console.log(`Processing fragment shader: ${fragmentShaderPath}`);
68
68
 
69
69
  // See if there is a corresponding vertex shader
@@ -376,7 +376,7 @@ function removeFunctionBodies(input: string): string {
376
376
  * @param shaderPath - The path to the .glsl files to convert.
377
377
  * @param importPath - The path to import the ShaderProgram type from.
378
378
  */
379
- function convertShaders(shaderPath: string, importPath: string) {
379
+ export function convertShaders(shaderPath: string, importPath: string) {
380
380
  // Get all files in the path
381
381
  const allFiles = fs.readdirSync(shaderPath, { withFileTypes: true, recursive: true });
382
382
 
@@ -391,9 +391,4 @@ function convertShaders(shaderPath: string, importPath: string) {
391
391
  }
392
392
  }
393
393
 
394
- const externalArguments = process.argv.slice(2);
395
- if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
396
- convertShaders(externalArguments[0], externalArguments[1]);
397
- }
398
-
399
394
  // TODO: simple copy from shader file to .ts, get it to build (including import trick)
@@ -0,0 +1,40 @@
1
+ /* eslint-disable no-console */
2
+ /**
3
+ * Watches all .glsl files under <shaderPath> and rebuilds them when changed.
4
+ * @param shaderPath - The path to the shaders to watch
5
+ * @param importPath - The path to import the converted shaders
6
+ * @example node watchShaders.js <shaderPath> <importPath>
7
+ */
8
+
9
+ import { convertShader } from "./shaderConverter.js";
10
+ import { watch } from "chokidar";
11
+ import { extname } from "path";
12
+
13
+ const externalArguments = process.argv.slice(2);
14
+ if (externalArguments.length >= 2 && externalArguments[0] && externalArguments[1]) {
15
+ const shaderPath = externalArguments[0];
16
+ const importPath = externalArguments[1];
17
+
18
+ watch(shaderPath).on("all", (event, file) => {
19
+ // Only process file changes and added files
20
+ if (event !== "change" && event !== "add") {
21
+ return;
22
+ }
23
+
24
+ // Only process .glsl files
25
+ if (extname(file) !== ".glsl") {
26
+ return;
27
+ }
28
+
29
+ // Wrap in try-catch to prevent the watcher from crashing
30
+ // if the new shader changes are invalid
31
+ try {
32
+ convertShader(file, importPath);
33
+ console.log(`Successfully updated shader ${file}`);
34
+ } catch (error) {
35
+ console.error(`Failed to convert shader ${file}: ${error}`);
36
+ }
37
+ });
38
+
39
+ console.log(`Watching for shader changes in ${shaderPath}`);
40
+ }