node package manager
Stop writing boring code. Discover, share, and reuse within your team. Create a free org »

glsl-sdf-box

glsl-sdf-box

stable

GLSL SDF function for generating a box. Determines the distance between a point and the surface of a box at the origin.

view demo

Originally sourced from Modeling with Distance Functions by Iñigo Quílez.

Usage

NPM

float box(vec3 position, vec3 dimensions)

Returns the signed distanced between position and a box at the origin with a given set of dimensions. For example, to draw a 2x2x2 box in a raytracing shader:

#pragma glslify: box require('glsl-sdf-box') 
 
vec2 doModel(vec3 p) {
  float dist   = box(p, vec3(2.0));
  float id     = 1.0;
 
  return vec2(dist, id);
}

Contributing

See stackgl/contributing for details.

License

MIT. See LICENSE.md for details.