vireglass 2.2.0 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -0
- package/dist/{adapters-DugC6Qri.d.cts → adapters-BOPIRMnL.d.cts} +3 -1
- package/dist/{adapters-BfeAopGO.d.ts → adapters-B_amRBqc.d.ts} +3 -1
- package/dist/{chunk-2XJJO7SC.js → chunk-UDPJLNFW.js} +25 -5
- package/dist/chunk-UDPJLNFW.js.map +1 -0
- package/dist/{chunk-H5QTBF67.js → chunk-V47YU75P.js} +2 -2
- package/dist/{chunk-H5QTBF67.js.map → chunk-V47YU75P.js.map} +1 -1
- package/dist/dom.cjs.map +1 -1
- package/dist/dom.d.cts +1 -1
- package/dist/dom.d.ts +1 -1
- package/dist/dom.js +1 -1
- package/dist/dom.js.map +1 -1
- package/dist/index.cjs +22 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +13 -4
- package/dist/index.d.ts +13 -4
- package/dist/index.js +2 -2
- package/dist/web/index.cjs +282 -152
- package/dist/web/index.cjs.map +1 -1
- package/dist/web/index.d.cts +89 -3
- package/dist/web/index.d.ts +89 -3
- package/dist/web/index.js +255 -154
- package/dist/web/index.js.map +1 -1
- package/package.json +4 -2
- package/src/adapters.ts +3 -1
- package/src/dom/index.ts +6 -5
- package/src/targets/glsl.ts +31 -2
- package/src/web/gl.ts +57 -4
- package/src/web/gpu-timer.ts +111 -0
- package/src/web/index.ts +1 -0
- package/src/web/renderer.ts +305 -218
- package/dist/chunk-2XJJO7SC.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -2476,6 +2476,26 @@ function convertEvalCalls(src) {
|
|
|
2476
2476
|
out += src.slice(cursor);
|
|
2477
2477
|
return out;
|
|
2478
2478
|
}
|
|
2479
|
+
function stripComments(src) {
|
|
2480
|
+
let out = "";
|
|
2481
|
+
let i = 0;
|
|
2482
|
+
while (i < src.length) {
|
|
2483
|
+
if (src.startsWith("//", i)) {
|
|
2484
|
+
const end = src.indexOf("\n", i);
|
|
2485
|
+
i = end < 0 ? src.length : end;
|
|
2486
|
+
} else if (src.startsWith("/*", i)) {
|
|
2487
|
+
const end = src.indexOf("*/", i + 2);
|
|
2488
|
+
if (end < 0) throw new Error("vireglass/targets/glsl: unterminated block comment");
|
|
2489
|
+
const stop = end + 2;
|
|
2490
|
+
out += src.slice(i, stop).replace(/[^\n]/g, "");
|
|
2491
|
+
i = stop;
|
|
2492
|
+
} else {
|
|
2493
|
+
out += src[i];
|
|
2494
|
+
i += 1;
|
|
2495
|
+
}
|
|
2496
|
+
}
|
|
2497
|
+
return out;
|
|
2498
|
+
}
|
|
2479
2499
|
function convertReturns(mainBody) {
|
|
2480
2500
|
return mainBody.replace(/\breturn\s+([^;]+);/g, "fragColor = $1; return;");
|
|
2481
2501
|
}
|
|
@@ -2506,7 +2526,7 @@ function addPrologue(src) {
|
|
|
2506
2526
|
return "#version 300 es\nprecision highp float;\n\nout vec4 fragColor;\nuniform vec2 u_resolution;\n\n" + src;
|
|
2507
2527
|
}
|
|
2508
2528
|
function toGLSL(shaderSource) {
|
|
2509
|
-
let out = shaderSource;
|
|
2529
|
+
let out = stripComments(shaderSource);
|
|
2510
2530
|
out = convertEntryPoint(out);
|
|
2511
2531
|
out = convertShaderUniforms(out);
|
|
2512
2532
|
out = convertEvalCalls(out);
|
|
@@ -2637,6 +2657,7 @@ exports.smin = smin;
|
|
|
2637
2657
|
exports.smoothPlane = smoothPlane;
|
|
2638
2658
|
exports.specularPower = specularPower;
|
|
2639
2659
|
exports.specularStrength = specularStrength;
|
|
2660
|
+
exports.stripComments = stripComments;
|
|
2640
2661
|
exports.surfacePadDp = surfacePadDp;
|
|
2641
2662
|
exports.thicknessDp = thicknessDp;
|
|
2642
2663
|
exports.toAGSL = toAGSL;
|