Chromanin.js, a JavaScript Procedural Texture Generation Library - amsqr.blogspot.com




ch = new Chromanin(256,'canvas1'); ch.initlayers(256,256); ch.colorLayer(0,255,0,0); ch.cellMachine(1,1234,99); ch.kaleidLayer(1,1,1); ch.tileLayer(1,1); ch.tileLayer(1,1); ch.tileLayer(1,1); ch.addLayers(0,1,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas2'); ch.initlayers(256,256); ch.initlayers(256,256); ch.checkerBoardLayer(0,16,16,255,128,64,0,0,128); ch.sineDistort(0,0,0.100000001490116,25,0.125,20); ch.addLayers(0,1,4,1,1); ch.addLayers(4,2,4,1,1); ch.addLayers(4,3,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas3'); ch.initlayers(256,256); ch.perlinNoise(0,128,9876543,256,150,8,true); ch.noiseDistort(0,0,1234567,3); ch.embossLayer(0,0); ch.perlinNoise(1,128,885870016,256,118,8,true); ch.scaleLayerRGB(1,1,0.5,0.6,0); ch.dilateLayer(1,1); ch.dilateLayer(1,1); ch.dilateLayer(1,1); ch.dilateLayer(1,1); ch.dilateLayer(1,1); ch.motionBlur(1,1,58); ch.perlinNoise(2,128,6666666,256,130,8,false); ch.embossLayer(2,2); ch.sculptureLayer(2,2); ch.mulLayers(0,1,4,1,1); ch.addLayers(4,2,4,1,0.0700000002980232); ch.writeCanvas();

ch = new Chromanin(256,'canvas4'); ch.initlayers(256,256); ch.perlinNoise(0,64,151024000,256,150,8,false); ch.embossLayer(0,0); ch.adjustLayerRGB(0,0,-40,-35,-50); ch.blobsLayer(1,431371456,16,false); ch.edgeVLayer(1,1); ch.sineDistort(1,1,0.0480000004172325,81,-0.0509999990463257,154); ch.embossLayer(1,1); ch.invertLayer(1,1); ch.blurLayer(1,1); ch.perlinNoise(2,128,9876543,256,150,8,false); ch.sineDistort(2,2,0.100000001490116,25,0.125,20); ch.mulLayers(0,1,4,1,1); ch.addLayers(4,2,4,1,0.259999990463257); ch.writeCanvas();

ch = new Chromanin(256,'canvas5'); ch.initlayers(256,256); ch.blobsLayer(0,303525728,9,false); ch.tileLayer(0,0); ch.adjustLayerRGB(0,0,-50,-50,-50); ch.twirlLayer(0,0,200,2000); ch.invertLayer(0,0); ch.addLayers(0,1,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas6'); ch.initlayers(256,256); ch.sinePlasma(0,0.25,0.0900000035762787,256); ch.woodLayer(0,0,2); ch.erodeLayer(0,0); ch.erodeLayer(0,0); ch.moveDistort(0,0,128,255); ch.embossLayer(0,0); ch.invertLayer(0,0); ch.blurLayer(0,0); ch.perlinNoise(1,128,9876543,256,150,8,false); ch.perlinNoise(2,128,9876543,256,150,8,true); ch.addLayers(0,1,4,1,0.219999998807907); ch.addLayers(4,2,4,1,0.150000005960464); ch.addLayers(4,3,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas7'); ch.initlayers(256,256); ch.perlinNoise(0,128,185107136,256,140,5,false); ch.edgeVLayer(0,0); ch.colorLayer(3,146,85,24); ch.addLayers(0,4,4,1,1); ch.addLayers(4,2,4,0.600000023841858,1); ch.addLayers(4,3,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas8'); ch.initlayers(256,256); ch.perlinNoise(0,64,1788537984,256,150,8,false); ch.sculptureLayer(0,0); ch.adjustLayerRGB(0,0,-25,-10,25); ch.perlinNoise(1,64,958198656,256,150,8,false); ch.embossLayer(1,1); ch.adjustLayerRGB(1,1,25,0,-25); ch.perlinNoise(2,64,151024000,256,150,8,false); ch.adjustLayerRGB(2,2,25,25,-25); ch.mulLayers(0,1,4,1,1); ch.mulLayers(4,2,4,1,1); ch.addLayers(4,3,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas9'); ch.initlayers(256,256); ch.blobsLayer(0,939976064,13,true); ch.makeTilable(0,0,128); ch.blobsLayer(1,228544464,6,true); ch.makeTilable(1,1,128); ch.perlinNoise(2,64,801452800,128,127,6,false); ch.makeTilable(2,2,128); ch.perlinNoise(3,64,163542336,128,109,8,false); ch.makeTilable(3,3,128); ch.mapDistort(0,1,4,1,1); ch.mapDistort(4,2,4,1,1); ch.addLayers(4,3,4,1,1); ch.writeCanvas();

ch = new Chromanin(256,'canvas10'); ch.initlayers(256,256); ch.blobsLayer(0,514448384,8,true); ch.invertLayer(0,0); ch.invertLayer(0,0); ch.invertLayer(0,0); ch.invertLayer(0,0); ch.invertLayer(0,0); ch.invertLayer(0,0); ch.addLayers(0,1,4,1,1); ch.addLayers(4,2,4,1,1); ch.addLayers(4,3,4,1,1); ch.writeCanvas();