Parameters
Name | Type | Description |
---|---|---|
p | vec2<f32> | Point to evaluate distance from. |
r | f32 | Circle radius. |
Returns
WGSL Code
fn sdfCircle(p: vec2<f32>, r: f32) -> f32 {return length(p) - r;}
Name | Type | Description |
---|---|---|
p | vec2<f32> | Point to evaluate distance from. |
r | f32 | Circle radius. |
fn sdfCircle(p: vec2<f32>, r: f32) -> f32 {return length(p) - r;}
distance function for a rectangular box.
two SDFs using union operation (closest surface).
two SDFs using intersection operation (overlapping area only).
two SDFs using subtraction operation (first shape minus second).
a signed distance field for a 3D box frame (hollow box).
a signed distance field for a capped torus.
a signed distance field for a capsule (cylinder with rounded caps).
a signed distance field for a cone.
a signed distance field for a cylinder.
a signed distance field for an ellipsoid.
a signed distance field for a gyroid surface.
a signed distance field for a hexagonal prism.
a signed distance field for an icosahedron.
a signed distance field for a 4D Julia set fractal.
a signed distance field for an octahedron.
a signed distance field for an infinite plane.
a signed distance field for a pyramid.
a signed distance field for a rhombus.
a signed distance field for a rounded box.
a signed distance field for a rounded cone.
a signed distance field for a rounded cylinder.
a signed distance field for a sphere.
a signed distance field for a tetrahedron.
a signed distance field for a torus.
a signed distance field for a triangular prism.
A JavaScript library providing WGSL utility functions as strings for WebGPU shader development. Includes mathematical utilities, noise generation, signed distance fields, and color manipulation functions.
npm install wgsl-fns
import { sdfCircle, getFns } from 'wgsl-fns'
getFns(['sdfCircle'])