From 18fa3d1266ec5c2c3356602b4bd71e34408d7d2f Mon Sep 17 00:00:00 2001 From: austinEng <2154796+austinEng@users.noreply.github.com> Date: Wed, 6 Mar 2024 00:00:09 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20=20@=2095137?= =?UTF-8?q?cab23f117efa7300199425ce5eb223ff7db=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 4 ++-- .../samples/A-buffer.json | 0 .../samples/animometer.json | 0 .../samples/bitonicSort.json | 0 .../samples/cameras.json | 0 .../samples/computeBoids.json | 0 .../samples/cornell.json | 0 .../samples/cubemap.json | 0 .../samples/deferredRendering.json | 0 .../samples/fractalCube.json | 0 .../samples/gameOfLife.json | 0 .../samples/helloTriangle.json | 0 .../samples/helloTriangleMSAA.json | 0 .../samples/imageBlur.json | 0 .../samples/instancedCube.json | 0 .../samples/normalMap.json | 0 .../samples/particles.json | 0 .../samples/renderBundles.json | 0 .../samples/resizeCanvas.json | 0 .../samples/reversedZ.json | 0 .../samples/rotatingCube.json | 0 .../samples/samplerParameters.json | 0 .../samples/shadowMapping.json | 0 .../samples/skinnedMesh.json | 0 .../samples/texturedCube.json | 0 .../samples/twoCubes.json | 0 .../samples/videoUploading.json | 0 .../samples/worker.json | 0 _next/static/A6HbQyIiof20RYPU01XyC/_buildManifest.js | 1 + .../_ssgManifest.js | 0 _next/static/SFM0wXqvipaUt3JcwjOwF/_buildManifest.js | 1 - .../pages/samples/videoUploadingWebCodecs-25568147651b3741.js | 1 + index.html | 2 +- samples/A-buffer.html | 4 ++-- samples/animometer.html | 2 +- samples/bitonicSort.html | 2 +- samples/cameras.html | 2 +- samples/computeBoids.html | 2 +- samples/cornell.html | 2 +- samples/cubemap.html | 2 +- samples/deferredRendering.html | 4 ++-- samples/fractalCube.html | 2 +- samples/gameOfLife.html | 2 +- samples/helloTriangle.html | 2 +- samples/helloTriangleMSAA.html | 2 +- samples/imageBlur.html | 2 +- samples/instancedCube.html | 2 +- samples/normalMap.html | 2 +- samples/particles.html | 2 +- samples/renderBundles.html | 4 ++-- samples/resizeCanvas.html | 2 +- samples/reversedZ.html | 4 ++-- samples/rotatingCube.html | 2 +- samples/samplerParameters.html | 2 +- samples/shadowMapping.html | 2 +- samples/skinnedMesh.html | 2 +- samples/texturedCube.html | 2 +- samples/twoCubes.html | 2 +- samples/videoUploading.html | 2 +- samples/videoUploadingWebCodecs.html | 1 + samples/worker.html | 4 ++-- 61 files changed, 38 insertions(+), 36 deletions(-) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/A-buffer.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/animometer.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/bitonicSort.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/cameras.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/computeBoids.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/cornell.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/cubemap.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/deferredRendering.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/fractalCube.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/gameOfLife.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/helloTriangle.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/helloTriangleMSAA.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/imageBlur.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/instancedCube.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/normalMap.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/particles.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/renderBundles.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/resizeCanvas.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/reversedZ.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/rotatingCube.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/samplerParameters.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/shadowMapping.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/skinnedMesh.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/texturedCube.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/twoCubes.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/videoUploading.json (100%) rename _next/data/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/samples/worker.json (100%) create mode 100644 _next/static/A6HbQyIiof20RYPU01XyC/_buildManifest.js rename _next/static/{SFM0wXqvipaUt3JcwjOwF => A6HbQyIiof20RYPU01XyC}/_ssgManifest.js (100%) delete mode 100644 _next/static/SFM0wXqvipaUt3JcwjOwF/_buildManifest.js create mode 100644 _next/static/chunks/pages/samples/videoUploadingWebCodecs-25568147651b3741.js create mode 100644 samples/videoUploadingWebCodecs.html diff --git a/404.html b/404.html index bbc9dd89..1d3152db 100644 --- a/404.html +++ b/404.html @@ -1,4 +1,4 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file + }

404

This page could not be found.

\ No newline at end of file diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/A-buffer.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/A-buffer.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/A-buffer.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/A-buffer.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/animometer.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/animometer.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/animometer.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/animometer.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/bitonicSort.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/bitonicSort.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/bitonicSort.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/bitonicSort.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/cameras.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/cameras.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/cameras.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/cameras.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/computeBoids.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/computeBoids.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/computeBoids.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/computeBoids.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/cornell.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/cornell.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/cornell.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/cornell.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/cubemap.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/cubemap.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/cubemap.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/cubemap.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/deferredRendering.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/deferredRendering.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/deferredRendering.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/deferredRendering.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/fractalCube.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/fractalCube.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/fractalCube.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/fractalCube.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/gameOfLife.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/gameOfLife.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/gameOfLife.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/gameOfLife.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/helloTriangle.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/helloTriangle.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/helloTriangle.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/helloTriangle.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/helloTriangleMSAA.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/helloTriangleMSAA.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/helloTriangleMSAA.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/helloTriangleMSAA.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/imageBlur.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/imageBlur.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/imageBlur.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/imageBlur.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/instancedCube.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/instancedCube.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/instancedCube.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/instancedCube.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/normalMap.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/normalMap.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/normalMap.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/normalMap.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/particles.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/particles.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/particles.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/particles.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/renderBundles.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/renderBundles.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/renderBundles.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/renderBundles.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/resizeCanvas.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/resizeCanvas.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/resizeCanvas.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/resizeCanvas.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/reversedZ.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/reversedZ.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/reversedZ.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/reversedZ.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/rotatingCube.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/rotatingCube.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/rotatingCube.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/rotatingCube.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/samplerParameters.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/samplerParameters.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/samplerParameters.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/samplerParameters.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/shadowMapping.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/shadowMapping.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/shadowMapping.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/shadowMapping.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/skinnedMesh.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/skinnedMesh.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/skinnedMesh.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/skinnedMesh.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/texturedCube.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/texturedCube.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/texturedCube.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/texturedCube.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/twoCubes.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/twoCubes.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/twoCubes.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/twoCubes.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/videoUploading.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/videoUploading.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/videoUploading.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/videoUploading.json diff --git a/_next/data/SFM0wXqvipaUt3JcwjOwF/samples/worker.json b/_next/data/A6HbQyIiof20RYPU01XyC/samples/worker.json similarity index 100% rename from _next/data/SFM0wXqvipaUt3JcwjOwF/samples/worker.json rename to _next/data/A6HbQyIiof20RYPU01XyC/samples/worker.json diff --git a/_next/static/A6HbQyIiof20RYPU01XyC/_buildManifest.js b/_next/static/A6HbQyIiof20RYPU01XyC/_buildManifest.js new file mode 100644 index 00000000..cc001d2d --- /dev/null +++ b/_next/static/A6HbQyIiof20RYPU01XyC/_buildManifest.js @@ -0,0 +1 @@ +self.__BUILD_MANIFEST={__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":["static/css/c90c6796236b02d5.css","static/chunks/pages/index-81b438bb72bc0aad.js"],"/_error":["static/chunks/pages/_error-8353112a01355ec2.js"],"/samples/videoUploadingWebCodecs":["static/chunks/pages/samples/videoUploadingWebCodecs-25568147651b3741.js"],"/samples/[slug]":["static/chunks/pages/samples/[slug]-ea943101c4de1afe.js"],sortedPages:["/","/_app","/_error","/samples/videoUploadingWebCodecs","/samples/[slug]"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file diff --git a/_next/static/SFM0wXqvipaUt3JcwjOwF/_ssgManifest.js b/_next/static/A6HbQyIiof20RYPU01XyC/_ssgManifest.js similarity index 100% rename from _next/static/SFM0wXqvipaUt3JcwjOwF/_ssgManifest.js rename to _next/static/A6HbQyIiof20RYPU01XyC/_ssgManifest.js diff --git a/_next/static/SFM0wXqvipaUt3JcwjOwF/_buildManifest.js b/_next/static/SFM0wXqvipaUt3JcwjOwF/_buildManifest.js deleted file mode 100644 index 3fce23bc..00000000 --- a/_next/static/SFM0wXqvipaUt3JcwjOwF/_buildManifest.js +++ /dev/null @@ -1 +0,0 @@ -self.__BUILD_MANIFEST={__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":["static/css/c90c6796236b02d5.css","static/chunks/pages/index-81b438bb72bc0aad.js"],"/_error":["static/chunks/pages/_error-8353112a01355ec2.js"],"/samples/[slug]":["static/chunks/pages/samples/[slug]-ea943101c4de1afe.js"],sortedPages:["/","/_app","/_error","/samples/[slug]"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file diff --git a/_next/static/chunks/pages/samples/videoUploadingWebCodecs-25568147651b3741.js b/_next/static/chunks/pages/samples/videoUploadingWebCodecs-25568147651b3741.js new file mode 100644 index 00000000..4bdc5a50 --- /dev/null +++ b/_next/static/chunks/pages/samples/videoUploadingWebCodecs-25568147651b3741.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[481],{1517:function(n,e,o){(window.__NEXT_P=window.__NEXT_P||[]).push(["/samples/videoUploadingWebCodecs",function(){return o(9560)}])},9560:function(n,e,o){"use strict";o.r(e);var t=o(5893),u=o(9008),i=o.n(u),c=o(3454);e.default=function(){return(0,t.jsx)(i(),{children:(0,t.jsx)("meta",{httpEquiv:"refresh",content:"0; url=".concat(c.env.BASE_PATH||"","/samples/videoUploading?videoSource=videoFrame")})})}}},function(n){n.O(0,[774,888,179],function(){return n(n.s=1517)}),_N_E=n.O()}]); \ No newline at end of file diff --git a/index.html b/index.html index 8d37e16c..c1f033ec 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -WebGPU Samples

The WebGPU Samples are a set of samples and demos demonstrating the use of the WebGPU API. Please see the current implementation status and how to run WebGPU in your browser at webgpu.io.

\ No newline at end of file +WebGPU Samples

The WebGPU Samples are a set of samples and demos demonstrating the use of the WebGPU API. Please see the current implementation status and how to run WebGPU in your browser at webgpu.io.

\ No newline at end of file diff --git a/samples/A-buffer.html b/samples/A-buffer.html index 14de620c..c1722fce 100644 --- a/samples/A-buffer.html +++ b/samples/A-buffer.html @@ -10,6 +10,6 @@ } A-Buffer - WebGPU Samples

A-Buffer

See it on Github!

Demonstrates order independent transparency using a per-pixel + limiting memory usage (when required)."/>

A-Buffer

See it on Github!

Demonstrates order independent transparency using a per-pixel linked-list of translucent fragments. Provides a choice for - limiting memory usage (when required).

\ No newline at end of file + limiting memory usage (when required).

\ No newline at end of file diff --git a/samples/animometer.html b/samples/animometer.html index 2f26e00c..e06be1b7 100644 --- a/samples/animometer.html +++ b/samples/animometer.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Animometer - WebGPU Samples

Animometer

See it on Github!

A WebGPU port of the Animometer MotionMark benchmark.

\ No newline at end of file + Animometer - WebGPU Samples

Animometer

See it on Github!

A WebGPU port of the Animometer MotionMark benchmark.

\ No newline at end of file diff --git a/samples/bitonicSort.html b/samples/bitonicSort.html index a0bbcb94..5b624c75 100644 --- a/samples/bitonicSort.html +++ b/samples/bitonicSort.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Bitonic Sort - WebGPU Samples

Bitonic Sort

See it on Github!

A naive bitonic sort algorithm executed on the GPU, based on tgfrerer's implementation at poniesandlight.co.uk/reflect/bitonic_merge_sort/. Each dispatch of the bitonic sort shader dispatches a workgroup containing elements/2 invocations. The GUI's Execution Information folder contains information about the sort's current state. The visualizer displays the sort's results as colored cells sorted from brightest to darkest.

\ No newline at end of file + Bitonic Sort - WebGPU Samples

Bitonic Sort

See it on Github!

A naive bitonic sort algorithm executed on the GPU, based on tgfrerer's implementation at poniesandlight.co.uk/reflect/bitonic_merge_sort/. Each dispatch of the bitonic sort shader dispatches a workgroup containing elements/2 invocations. The GUI's Execution Information folder contains information about the sort's current state. The visualizer displays the sort's results as colored cells sorted from brightest to darkest.

\ No newline at end of file diff --git a/samples/cameras.html b/samples/cameras.html index 8da7c12b..1b412fab 100644 --- a/samples/cameras.html +++ b/samples/cameras.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Cameras - WebGPU Samples

Cameras

See it on Github!

This example provides example camera implementations

\ No newline at end of file + Cameras - WebGPU Samples

Cameras

See it on Github!

This example provides example camera implementations

\ No newline at end of file diff --git a/samples/computeBoids.html b/samples/computeBoids.html index d4be21ca..fc14b69d 100644 --- a/samples/computeBoids.html +++ b/samples/computeBoids.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Compute Boids - WebGPU Samples

Compute Boids

See it on Github!

A GPU compute particle simulation that mimics the flocking behavior of birds. A compute shader updates two ping-pong buffers which store particle data. The data is used to draw instanced particles.

\ No newline at end of file + Compute Boids - WebGPU Samples

Compute Boids

See it on Github!

A GPU compute particle simulation that mimics the flocking behavior of birds. A compute shader updates two ping-pong buffers which store particle data. The data is used to draw instanced particles.

\ No newline at end of file diff --git a/samples/cornell.html b/samples/cornell.html index 1908feb6..994fc698 100644 --- a/samples/cornell.html +++ b/samples/cornell.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Cornell box - WebGPU Samples

Cornell box

See it on Github!

A classic Cornell box, using a lightmap generated using software ray-tracing.

\ No newline at end of file + Cornell box - WebGPU Samples

Cornell box

See it on Github!

A classic Cornell box, using a lightmap generated using software ray-tracing.

\ No newline at end of file diff --git a/samples/cubemap.html b/samples/cubemap.html index 78a484d7..eccb83e6 100644 --- a/samples/cubemap.html +++ b/samples/cubemap.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Cubemap - WebGPU Samples

Cubemap

See it on Github!

This example shows how to render and sample from a cubemap texture.

\ No newline at end of file + Cubemap - WebGPU Samples

Cubemap

See it on Github!

This example shows how to render and sample from a cubemap texture.

\ No newline at end of file diff --git a/samples/deferredRendering.html b/samples/deferredRendering.html index d26a515b..6fd44b84 100644 --- a/samples/deferredRendering.html +++ b/samples/deferredRendering.html @@ -16,7 +16,7 @@ We also update light position in a compute shader, where further operations like tile/cluster culling could happen. The debug view shows the depth buffer on the left (flipped and scaled a bit to make it more visible), the normal G buffer in the middle, and the albedo G-buffer on the right side of the screen. - "/>

Deferred Rendering

See it on Github!

This example shows how to do deferred rendering with webgpu. + "/>

Deferred Rendering

See it on Github!

This example shows how to do deferred rendering with webgpu. Render geometry info to multiple targets in the gBuffers in the first pass. In this sample we have 2 gBuffers for normals and albedo, along with a depth texture. And then do the lighting in a second pass with per fragment data read from gBuffers so it's independent of scene complexity. @@ -24,4 +24,4 @@ We also update light position in a compute shader, where further operations like tile/cluster culling could happen. The debug view shows the depth buffer on the left (flipped and scaled a bit to make it more visible), the normal G buffer in the middle, and the albedo G-buffer on the right side of the screen. -

\ No newline at end of file +

\ No newline at end of file diff --git a/samples/fractalCube.html b/samples/fractalCube.html index 041f4c61..a2d99f95 100644 --- a/samples/fractalCube.html +++ b/samples/fractalCube.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Fractal Cube - WebGPU Samples

Fractal Cube

See it on Github!

This example uses the previous frame's rendering result as the source texture for the next frame.

\ No newline at end of file + Fractal Cube - WebGPU Samples

Fractal Cube

See it on Github!

This example uses the previous frame's rendering result as the source texture for the next frame.

\ No newline at end of file diff --git a/samples/gameOfLife.html b/samples/gameOfLife.html index 8b48cba0..cbfb9b1a 100644 --- a/samples/gameOfLife.html +++ b/samples/gameOfLife.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Conway's Game of Life - WebGPU Samples

Conway's Game of Life

See it on Github!

This example shows how to make Conway's game of life. First, use compute shader to calculate how cells grow or die. Then use render pipeline to draw cells by using instance mesh.

\ No newline at end of file + Conway's Game of Life - WebGPU Samples

Conway's Game of Life

See it on Github!

This example shows how to make Conway's game of life. First, use compute shader to calculate how cells grow or die. Then use render pipeline to draw cells by using instance mesh.

\ No newline at end of file diff --git a/samples/helloTriangle.html b/samples/helloTriangle.html index 7fc95cea..12d3a903 100644 --- a/samples/helloTriangle.html +++ b/samples/helloTriangle.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Hello Triangle - WebGPU Samples

Hello Triangle

See it on Github!

Shows rendering a basic triangle.

\ No newline at end of file + Hello Triangle - WebGPU Samples

Hello Triangle

See it on Github!

Shows rendering a basic triangle.

\ No newline at end of file diff --git a/samples/helloTriangleMSAA.html b/samples/helloTriangleMSAA.html index 2697dc4a..72686d3b 100644 --- a/samples/helloTriangleMSAA.html +++ b/samples/helloTriangleMSAA.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Hello Triangle MSAA - WebGPU Samples

Hello Triangle MSAA

See it on Github!

Shows multisampled rendering a basic triangle.

\ No newline at end of file + Hello Triangle MSAA - WebGPU Samples

Hello Triangle MSAA

See it on Github!

Shows multisampled rendering a basic triangle.

\ No newline at end of file diff --git a/samples/imageBlur.html b/samples/imageBlur.html index 19d6d332..4af27131 100644 --- a/samples/imageBlur.html +++ b/samples/imageBlur.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Image Blur - WebGPU Samples

Image Blur

See it on Github!

This example shows how to blur an image using a WebGPU compute shader.

\ No newline at end of file + Image Blur - WebGPU Samples

Image Blur

See it on Github!

This example shows how to blur an image using a WebGPU compute shader.

\ No newline at end of file diff --git a/samples/instancedCube.html b/samples/instancedCube.html index 9141ac15..59d6e7ff 100644 --- a/samples/instancedCube.html +++ b/samples/instancedCube.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Instanced Cube - WebGPU Samples

Instanced Cube

See it on Github!

This example shows the use of instancing.

\ No newline at end of file + Instanced Cube - WebGPU Samples

Instanced Cube

See it on Github!

This example shows the use of instancing.

\ No newline at end of file diff --git a/samples/normalMap.html b/samples/normalMap.html index def27ab3..1af12c28 100644 --- a/samples/normalMap.html +++ b/samples/normalMap.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Normal Mapping - WebGPU Samples

Normal Mapping

See it on Github!

This example demonstrates multiple different methods that employ fragment shaders to achieve additional perceptual depth on the surface of a cube mesh. Demonstrated methods include normal mapping, parallax mapping, and steep parallax mapping.

\ No newline at end of file + Normal Mapping - WebGPU Samples

Normal Mapping

See it on Github!

This example demonstrates multiple different methods that employ fragment shaders to achieve additional perceptual depth on the surface of a cube mesh. Demonstrated methods include normal mapping, parallax mapping, and steep parallax mapping.

\ No newline at end of file diff --git a/samples/particles.html b/samples/particles.html index c0fabaf9..44563e5b 100644 --- a/samples/particles.html +++ b/samples/particles.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Particles - WebGPU Samples

Particles

See it on Github!

This example demonstrates rendering of particles simulated with compute shaders.

\ No newline at end of file + Particles - WebGPU Samples

Particles

See it on Github!

This example demonstrates rendering of particles simulated with compute shaders.

\ No newline at end of file diff --git a/samples/renderBundles.html b/samples/renderBundles.html index ffd32891..9e4a6ed9 100644 --- a/samples/renderBundles.html +++ b/samples/renderBundles.html @@ -11,7 +11,7 @@ Render Bundles - WebGPU Samples

Render Bundles

See it on Github!

This example shows how to use render bundles. It renders a large number of + of instancing to reduce draw overhead.)"/>

Render Bundles

See it on Github!

This example shows how to use render bundles. It renders a large number of meshes individually as a proxy for a more complex scene in order to demonstrate the reduction in JavaScript time spent to issue render commands. (Typically a scene like this would make use - of instancing to reduce draw overhead.)

\ No newline at end of file + of instancing to reduce draw overhead.)

\ No newline at end of file diff --git a/samples/resizeCanvas.html b/samples/resizeCanvas.html index 14396af3..fd15d62e 100644 --- a/samples/resizeCanvas.html +++ b/samples/resizeCanvas.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Resize Canvas - WebGPU Samples

Resize Canvas

See it on Github!

Shows multisampled rendering a basic triangle on a dynamically sized canvas.

\ No newline at end of file + Resize Canvas - WebGPU Samples

Resize Canvas

See it on Github!

Shows multisampled rendering a basic triangle on a dynamically sized canvas.

\ No newline at end of file diff --git a/samples/reversedZ.html b/samples/reversedZ.html index b186bb6d..958b7238 100644 --- a/samples/reversedZ.html +++ b/samples/reversedZ.html @@ -17,7 +17,7 @@ Related reading: https://developer.nvidia.com/content/depth-precision-visualized https://web.archive.org/web/20220724174000/https://thxforthefish.com/posts/reverse_z/ - "/>

Reversed Z

See it on Github!

This example shows the use of reversed z technique for better utilization of depth buffer precision. + "/>

Reversed Z

See it on Github!

This example shows the use of reversed z technique for better utilization of depth buffer precision. The left column uses regular method, while the right one uses reversed z technique. Both are using depth32float as their depth buffer format. A set of red and green planes are positioned very close to each other. Higher sets are placed further from camera (and are scaled for better visual purpose). @@ -26,4 +26,4 @@ Related reading: https://developer.nvidia.com/content/depth-precision-visualized https://web.archive.org/web/20220724174000/https://thxforthefish.com/posts/reverse_z/ -

\ No newline at end of file +

\ No newline at end of file diff --git a/samples/rotatingCube.html b/samples/rotatingCube.html index a7561ef1..ca0670fb 100644 --- a/samples/rotatingCube.html +++ b/samples/rotatingCube.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Rotating Cube - WebGPU Samples

Rotating Cube

See it on Github!

This example shows how to upload uniform data every frame to render a rotating object.

\ No newline at end of file + Rotating Cube - WebGPU Samples

Rotating Cube

See it on Github!

This example shows how to upload uniform data every frame to render a rotating object.

\ No newline at end of file diff --git a/samples/samplerParameters.html b/samples/samplerParameters.html index 94e2507b..12791422 100644 --- a/samples/samplerParameters.html +++ b/samples/samplerParameters.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Sampler Parameters - WebGPU Samples

Sampler Parameters

See it on Github!

Visualizes what all the sampler parameters do. Shows a textured plane at various scales (rotated, head-on, in perspective, and in vanishing perspective). The bottom-right view shows the raw contents of the 4 mipmap levels of the test texture (16x16, 8x8, 4x4, and 2x2).

\ No newline at end of file + Sampler Parameters - WebGPU Samples

Sampler Parameters

See it on Github!

Visualizes what all the sampler parameters do. Shows a textured plane at various scales (rotated, head-on, in perspective, and in vanishing perspective). The bottom-right view shows the raw contents of the 4 mipmap levels of the test texture (16x16, 8x8, 4x4, and 2x2).

\ No newline at end of file diff --git a/samples/shadowMapping.html b/samples/shadowMapping.html index 93b407db..f1171c41 100644 --- a/samples/shadowMapping.html +++ b/samples/shadowMapping.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Shadow Mapping - WebGPU Samples

Shadow Mapping

See it on Github!

This example shows how to sample from a depth texture to render shadows.

\ No newline at end of file + Shadow Mapping - WebGPU Samples

Shadow Mapping

See it on Github!

This example shows how to sample from a depth texture to render shadows.

\ No newline at end of file diff --git a/samples/skinnedMesh.html b/samples/skinnedMesh.html index 63e7626b..2f1e0497 100644 --- a/samples/skinnedMesh.html +++ b/samples/skinnedMesh.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Skinned Mesh - WebGPU Samples

Skinned Mesh

See it on Github!

A demonstration of basic gltf loading and mesh skinning, ported from https://webgl2fundamentals.org/webgl/lessons/webgl-skinning.html. Mesh data, per vertex attributes, and skin inverseBindMatrices are taken from the json parsed from the binary output of the .glb file. Animations are generated progrmatically, with animated joint matrices updated and passed to shaders per frame via uniform buffers.

\ No newline at end of file + Skinned Mesh - WebGPU Samples

Skinned Mesh

See it on Github!

A demonstration of basic gltf loading and mesh skinning, ported from https://webgl2fundamentals.org/webgl/lessons/webgl-skinning.html. Mesh data, per vertex attributes, and skin inverseBindMatrices are taken from the json parsed from the binary output of the .glb file. Animations are generated progrmatically, with animated joint matrices updated and passed to shaders per frame via uniform buffers.

\ No newline at end of file diff --git a/samples/texturedCube.html b/samples/texturedCube.html index 5c10a48f..bd3b4086 100644 --- a/samples/texturedCube.html +++ b/samples/texturedCube.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Textured Cube - WebGPU Samples

Textured Cube

See it on Github!

This example shows how to bind and sample textures.

\ No newline at end of file + Textured Cube - WebGPU Samples

Textured Cube

See it on Github!

This example shows how to bind and sample textures.

\ No newline at end of file diff --git a/samples/twoCubes.html b/samples/twoCubes.html index dab9ba34..2a72bfbd 100644 --- a/samples/twoCubes.html +++ b/samples/twoCubes.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Two Cubes - WebGPU Samples

Two Cubes

See it on Github!

This example shows some of the alignment requirements involved when updating and binding multiple slices of a uniform buffer. It renders two rotating cubes which have transform matrices at different offsets in a uniform buffer.

\ No newline at end of file + Two Cubes - WebGPU Samples

Two Cubes

See it on Github!

This example shows some of the alignment requirements involved when updating and binding multiple slices of a uniform buffer. It renders two rotating cubes which have transform matrices at different offsets in a uniform buffer.

\ No newline at end of file diff --git a/samples/videoUploading.html b/samples/videoUploading.html index 4844360a..ec933872 100644 --- a/samples/videoUploading.html +++ b/samples/videoUploading.html @@ -8,4 +8,4 @@ height: auto !important; overflow: visible !important; } - Video Uploading - WebGPU Samples

Video Uploading

See it on Github!

This example shows how to upload video frame to WebGPU.

\ No newline at end of file + Video Uploading - WebGPU Samples

Video Uploading

See it on Github!

This example shows how to upload video frame to WebGPU.

\ No newline at end of file diff --git a/samples/videoUploadingWebCodecs.html b/samples/videoUploadingWebCodecs.html new file mode 100644 index 00000000..b303217b --- /dev/null +++ b/samples/videoUploadingWebCodecs.html @@ -0,0 +1 @@ +WebGPU Samples
\ No newline at end of file diff --git a/samples/worker.html b/samples/worker.html index d7078abb..95b4a1c6 100644 --- a/samples/worker.html +++ b/samples/worker.html @@ -10,6 +10,6 @@ } WebGPU in a Worker - WebGPU Samples

WebGPU in a Worker

See it on Github!

This example shows one method of using WebGPU in a web worker and presenting to + which is then transferred to the worker where all the WebGPU calls are made."/>

WebGPU in a Worker

See it on Github!

This example shows one method of using WebGPU in a web worker and presenting to the main thread. It uses canvas.transferControlToOffscreen() to produce an offscreen canvas - which is then transferred to the worker where all the WebGPU calls are made.

\ No newline at end of file + which is then transferred to the worker where all the WebGPU calls are made.

\ No newline at end of file