glsl-sdf-sphere
GLSL SDF function for generating a sphere.
Last updated 6 years ago by hughsk .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install glsl-sdf-sphere 
SYNC missed versions from official npm registry.

glsl-sdf-sphere

stable

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

view demo

Usage

NPM

float sphere(vec3 position, float radius)

Returns the signed distanced between position and a sphere at the origin with a given radius. For example, to draw a sphere in a raytracing shader:

#pragma glslify: sphere = require('glsl-sdf-sphere')

vec2 doModel(vec3 p) {
  float id     = 1.0;
  float radius = 0.5;
  float dist   = sphere(p, radius);

  return vec2(dist, id);
}

Note that you can move the sphere around in this case by offsetting the position vector, for example:

uniform float iGlobalTime;

#pragma glslify: sphere = require('glsl-sdf-sphere')

vec2 doModel(vec3 p) {
  vec3 offset = vec3(sin(iGlobalTime), 0, 0);

  float id     = 1.0;
  float radius = 0.5;
  float dist   = sphere(p - offset, radius);

  return vec2(dist, id);
}

Contributing

See stackgl/contributing for details.

License

MIT. See LICENSE.md for details.

Current Tags

  • 1.0.0                                ...           latest (6 years ago)

1 Versions

  • 1.0.0                                ...           6 years ago
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (0)
None
Dev Dependencies (11)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |