Skip to content

Instantly share code, notes, and snippets.

@shawnlawson
shawnlawson / exp.frag
Created March 16, 2017 16:27
Force Experiment 005
void main () {
vec2 uv = uv(); vec2 uvN = uvN(); vec3 c = black;
float theta = atan(uv.x, uv.y) / PI2 + .5; float phi = log(length(uv));
float k = 2. * bands.x + 2.;
float a = mod(atan(uv.x, uv.y), PI2/k);
a = abs(a - PI2/k/2.);
vec2 center = vec2 (0);
@shawnlawson
shawnlawson / exp.frag
Created March 16, 2017 16:26
Force Experiment 004
void main () {
vec2 uv = uv(); vec2 uvN = uvN(); vec3 c = black;
float theta = atan(uv.x, uv.y) / PI2 + .5; float phi = log(length(uv));
float k = 2. * bands.x + 9.;
float a = mod(atan(uv.x, uv.y), PI2/k);
a = abs(a - PI2/k/2.);
vec3 f = rmf(vec2(a, phi - time * 1.4), int(6. * bands.y)) * yellow;
k = 2. * bands.y + 9.;
@shawnlawson
shawnlawson / exp.frag
Created March 16, 2017 16:24
Force Experiment 003
void main () {
vec2 uv = uv(); vec2 uvN = uvN(); vec3 c = black;
float theta = atan(uv.x, uv.y) / PI2 + .5; float phi = log(length(uv));
float k = 2. * bands.x + 2.;
float a = mod(atan(uv.x, uv.y), PI2/k);
a = abs(a - PI2/k/2.);
vec2 center = vec2 (0.);
@shawnlawson
shawnlawson / exp.frag
Created March 16, 2017 16:23
Force Experiment 002
void main () {
vec2 uv = uv(); vec2 uvN = uvN(); vec3 c = black;
float theta = atan(uv.x, uv.y) / PI2 + .5; float phi = log(length(uv));
float k = 1.3 * bands.y * 2.;
float a = mod(atan(uv.x, uv.y), PI2/k);
a = abs(a - PI2/k/2.);
c += red * .5 * length(bands);
@shawnlawson
shawnlawson / exp.frag
Created March 16, 2017 16:22
Force Experiment 001
void main () {
vec2 uv = uv(); vec2 uvN = uvN(); vec3 c = black;
float theta = atan(uv.x, uv.y) / PI2 + .5; float phi = log(length(uv));
float k = 4. * bands.w + 2.;
float a = mod(atan(uv.x, uv.y), PI2/k);
a = abs(a - PI2/k/2.);
vec2 center = vec2 (0.);
@shawnlawson
shawnlawson / GLSL-Noise.md
Created December 30, 2015 20:20 — forked from patriciogonzalezvivo/GLSL-Noise.md
GLSL Noise Algorithms

Generic 1,2,3 Noise

float rand(float n){return fract(sin(n) * 43758.5453123);}

float noise(float p){
	float fl = floor(p);
  float fc = fract(p);
	return mix(rand(fl), rand(fl + 1.0), fc);
}