diff --git a/package-lock.json b/package-lock.json index 47c3d11..df6a813 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,6 @@ "@myriaddreamin/rehype-typst": "^0.6.0", "@napi-rs/simple-git": "0.1.21", "@tweenjs/tween.js": "^25.0.0", - "@webgpu/types": "^0.1.64", "ansi-truncate": "^1.2.0", "async-mutex": "^0.5.0", "chokidar": "^4.0.3", diff --git a/package.json b/package.json index d83c9ac..13ecad3 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,6 @@ "@myriaddreamin/rehype-typst": "^0.6.0", "@napi-rs/simple-git": "0.1.21", "@tweenjs/tween.js": "^25.0.0", - "@webgpu/types": "^0.1.64", "ansi-truncate": "^1.2.0", "async-mutex": "^0.5.0", "chokidar": "^4.0.3", diff --git a/quartz/components/scripts/graph.inline.ts b/quartz/components/scripts/graph.inline.ts index 9c8ec60..a669b05 100644 --- a/quartz/components/scripts/graph.inline.ts +++ b/quartz/components/scripts/graph.inline.ts @@ -68,30 +68,6 @@ type TweenNode = { stop: () => void } -// workaround for pixijs webgpu issue: https://github.com/pixijs/pixijs/issues/11389 -async function determineGraphicsAPI(): Promise<"webgpu" | "webgl"> { - const adapter = await navigator.gpu?.requestAdapter().catch(() => null) - const device = adapter && (await adapter.requestDevice().catch(() => null)) - if (!device) { - return "webgl" - } - - const canvas = document.createElement("canvas") - const gl = - (canvas.getContext("webgl2") as WebGL2RenderingContext | null) ?? - (canvas.getContext("webgl") as WebGLRenderingContext | null) - - // we have to return webgl so pixijs automatically falls back to canvas - if (!gl) { - return "webgl" - } - - const webglMaxTextures = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS) - const webgpuMaxTextures = device.limits.maxSampledTexturesPerShaderStage - - return webglMaxTextures === webgpuMaxTextures ? "webgpu" : "webgl" -} - async function renderGraph(graph: HTMLElement, fullSlug: FullSlug) { const slug = simplifySlug(fullSlug) const visited = getVisited() @@ -373,7 +349,6 @@ async function renderGraph(graph: HTMLElement, fullSlug: FullSlug) { tweens.forEach((tween) => tween.stop()) tweens.clear() - const pixiPreference = await determineGraphicsAPI() const app = new Application() await app.init({ width, @@ -382,7 +357,7 @@ async function renderGraph(graph: HTMLElement, fullSlug: FullSlug) { autoStart: false, autoDensity: true, backgroundAlpha: 0, - preference: pixiPreference, + preference: "webgpu", resolution: window.devicePixelRatio, eventMode: "static", })