#2739·drei

Stencil mask examples aren't helpful

Author: clebioCreated May 24, 2026Updated Sep 13, 2026
Labelsbug

Via the aquarium demo:

"@pmndrs/branding": "^0.0.8",
"@react-three/drei": "^9.109.5",
"@react-three/fiber": "^8.17.5",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"three": "^0.165.0"

Problem description:

The Drei Mask docs link to two examples,

There's really two separate problems here.

  1. stencil-mask demo does not render, showing only "Error Could not load https://vazxmixjsiawhamofees.supabase.co/storage/v1/object/public/models/target-stand/model.gltf: NetworkError when attempting to fetch resource.)". That same problem is evident in console logs when that demo is run locally (pnpm --filter @demo/stencil-mask dev3)
  2. The aquarium demo never creates a <Mask /> object, which is what the docs say to do. How does this work? magic. If it's happening transitively via the MeshTransmissionMaterial or the GLTF, that's pretty opaque. If seems like it works via the useLayoutEffect traverse, but damned if I or the llms can figure it out. Basically, this is not a helpful demo for Mask!

Relevant code:

Suggested solution:

  1. de-obfuscate the use of Mask in the aquarium demo (or at least explain how it's working in code comments or smth)
  2. fix the broken link in the stencil-mask demo.