JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2162
  • Score
    100M100P100Q110290F
  • License BSD-3-Clause

pseudo-random 2D noise for glslify

Package Exports

  • glsl-random

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (glsl-random) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

glsl-random experimental

The classic 'one-liner' for 2D pseudo-random values in GLSL. This uses a highp version for improved randomness and better stability across GPUs, see here:
http://byteblacksmith.com/improvements-to-the-canonical-one-liner-glsl-rand-for-opengl-es-2-0/

However, the 'classic' lowp version (with no precision specified) is also included here. Some may find it useful for targeted mobile GPUs.

Noise

usage

#pragma glslify: random = require(glsl-random)

...
    float rnd = random(myVec.xy);

Typically you might use it like so:

gl_FragColor = vec4( vec3( random( gl_FragCoord.xy / resolution.xy ) ), 1.0 );

default precision

Requiring the following will give you a function that doesn't specify any precision:

#pragma glslify: random = require(glsl-random/lowp)

license

BSD-3-Clause