Fix shader

This commit is contained in:
2024-05-24 20:13:05 +02:00
parent 5fa34eda14
commit 571a35633b
2 changed files with 53 additions and 4 deletions
+1 -4
View File
@@ -1,9 +1,6 @@
import noise from "~/assets/shaders/noise.frag?raw" import noise from "~/assets/shaders/noise.frag?raw"
// @ts-ignore Import module
import resolveLygia from "https://lygia.xyz/resolve.esm.js"
import resolveLygia from "~/assets/workers/resolve-lygia.esm"
declare const resolveLygia: (source: string) => string
let interval: number let interval: number
let timeout: number let timeout: number
+52
View File
@@ -0,0 +1,52 @@
function getFile(url) {
let httpRequest = new XMLHttpRequest();
httpRequest.open("GET", url, false);
httpRequest.send();
if (httpRequest.status == 200)
return httpRequest.responseText;
else
return "";
}
function resolveLygia(lines) {
if ( !Array.isArray(lines) ) {
lines = lines.split(/\r?\n/);
}
let src = "";
lines.forEach( (line, i) => {
const line_trim = line.trim();
if (line_trim.startsWith('#include \"lygia') ) {
let include_url = line_trim.substring(15);
include_url = "https://lygia.xyz" + include_url.replace(/\"|\;|\s/g,'');
src += getFile(include_url) + '\n';
}
else {
src += line + '\n';
}
});
return src;
}
async function resolveLygiaAsync(lines) {
if (!Array.isArray(lines))
lines = lines.split(/\r?\n/);
let src = "";
const response = await Promise.all(
lines.map(async (line, i) => {
const line_trim = line.trim();
if (line_trim.startsWith('#include "lygia')) {
let include_url = line_trim.substring(15);
include_url = "https://lygia.xyz" + include_url.replace(/\"|\;|\s/g, "");
return fetch(include_url).then((res) => res.text());
}
else
return line;
})
);
return response.join("\n");
}
export { resolveLygia as default };