UNPKG

marching

Version:

Marching.js is a JavaScript library that compiles GLSL ray marchers.

27 lines (16 loc) 2.07 kB
# Credits [Chi Shen](http://shenchi.github.io) performed [initial development work on this project](https://github.com/shenchi/glsllab). The project uses code from [Stack.gl ecosystem](http://stack.gl/), specifically: - [glsl-raytrace](https://github.com/glslify/glsl-raytrace) by [Hugh Kennedy](https://github.com/hughsk). - [glsl-sdf-normal](https://github.com/glslify/glsl-sdf-normal) by [Hugh Kennedy](https://github.com/hughsk). - [glsl-camera-ray](https://github.com/glslify/glsl-camera-ray) by [Hugh Kennedy](https://github.com/hughsk). - many geometric primitives from [glsl-sdf-primitives](https://github.com/marklundin/glsl-sdf-primitives) by [Mark Lundin](https://github.com/marklundin). - Ambient occlusion and soft shadows are taken from the [glsl-sdf-ops package](https://github.com/marklundin/glsl-sdf-ops) by [Mark Lundin](https://github.com/marklundin). The project takes a variety of operators from the exceptional [hg_sdf library](http://mercury.sexy/hg_sdf/) by the [Mercury demogroup](http://mercury.sexy/). The defaut lighting scheme is adapted from [this demo](https://www.shadertoy.com/view/Xds3zN) by [Inigo Quilez](http://www.iquilezles.org). Many operators are also taken from his [excellent tutorial on SDFs](http://www.iquilezles.org/www/articles/distfunctions/distfunctions.htm). The Mandelbulb primitive is taken from [this demo](https://www.shadertoy.com/view/ltfSWn) by [Inigo Quilez](http://www.iquilezles.org). The Mandalay fractal is taken from [this demo](https://www.shadertoy.com/view/MdV3Wz) by Dave Hoskins. The Julia fractal primitive is taken from [this demo](https://www.shadertoy.com/view/MsfGRr) by [Inigo Quilez](http://www.iquilezles.org). The SuperFormula primitive is taken from [a repo](https://github.com/Softwave/glsl-superformula) by [JC Leyba](http://s0ftwave.com). A [matrix data structure by Evan Wallace](https://github.com/evanw/lightgl.js/). The Worley noise texture is taken from [a repo](https://github.com/Erkaman/glsl-worley) by [Eric Arnebäck](https://erkaman.github.io/).