glsl-out-of-range
v1.0.4
Published
Functions to test if a point is outside ranges, namely useful for 3D/2D scenes that may have reversed bounds
Downloads
110,463
Readme
glsl-out-of-range
Tests if a point is outside ranges. It could be useful in vertex & fragment shaders to support reversed ranges (bounds) in 3D/2D scenes.
Function prototypes:
bool outOfRange(float a, float b, float p);
bool outOfRange(vec2 a, vec2 b, vec2 p);
bool outOfRange(vec3 a, vec3 b, vec3 p);
bool outOfRange(vec4 a, vec4 b, vec4 p);
Please note that in the case of vec4 input arguments, only 3 tests are made i.e. for xyz and not for w.
Example
#pragma glslify: outOfRange = require(glsl-out-of-range)
void main() {
if (outOfRange(bounds[0], bounds[1], position)) discard;
gl_FragColor = vec4(1.0, 0.5, 0.25, 1.0);
}
Usage
Install with npm:
npm install glsl-out-of-range
Then use with glslify.
API
#pragma glslify: outOfRange = require(glsl-out-of-range)
Creators
| | Github | Twitter | |---|--------|---------| |Alex C. Johnson| @alexcjohnson | | |Étienne Tétreault-Pinard| @etpinard | @etpinard | |Mojtaba Samimi| @archmoj | |
Copyright and license
Code and documentation copyright 2018 Plotly, Inc.
Code released under the MIT license.
Docs released under the Creative Commons license.