demo · v139
Volume Budget Calculator
A 512³ uncompressed RGBA volume is half a gigabyte. Medical imaging and volumetric rendering pipelines can't ship that. v139 lets them slice BC or ASTC over the third axis. Dial volume size and codec — see GPU memory drop from gigabytes to megabytes.
512³ voxels
probe
probing WebGPU…
—
GPU memory
—
vs uncompressed
memory vs a 4 GB GPU budget
the code
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice({
requiredFeatures: [
"texture-compression-bc",
"texture-compression-bc-sliced-3d", // v139: 3D for BC
"texture-compression-astc-sliced-3d", // v139: 3D for ASTC
],
});
const tex = device.createTexture({
dimension: "3d",
size: { width: 512, height: 512, depthOrArrayLayers: 512 },
format: "bc7-rgba-unorm",
usage: GPUTextureUsage.TEXTURE_BINDING,
});