{"id":360,"date":"2009-07-28T14:14:49","date_gmt":"2009-07-28T21:14:49","guid":{"rendered":"https:\/\/actionsnippet.com\/?p=1860"},"modified":"2009-07-28T14:14:49","modified_gmt":"2009-07-28T21:14:49","slug":"overexposed-perlin-texture","status":"publish","type":"post","link":"https:\/\/actionsnippet.com\/?p=360","title":{"rendered":"Overexposed Perlin Texture"},"content":{"rendered":"<pre class=\"brush: as3; title: ; notranslate\" title=\"\">\r\nvar canvas:BitmapData = new BitmapData(1200,1200,false, 0x000000);\r\naddChild(new Bitmap(canvas));\r\n\r\nscaleX = scaleY = 0.5;\r\nvar w:int = canvas.width \r\nvar hw:int = w \/ 2;\r\nvar hhw:int = hw \/ 2;\r\nvar size:int = canvas.width * canvas.width;\r\n\r\ncanvas.perlinNoise(hhw,hhw,2,Math.random()*100,false, false, 1, true);\r\n\r\nfor (var i:int = 0; i&lt;size; i++){\r\n\tvar xp:int = i % w;\r\n\tvar yp:int = int(i \/ w);\r\n\tvar col:uint =  canvas.getPixel(xp, yp) \/ (xp+yp-w) &gt;&gt; 8 &amp; 0xFF\r\n\tcanvas.setPixel(xp, yp, col &lt;&lt; 16 | col &lt;&lt; 8 | col)\r\n}\r\n\r\nvar blur:BitmapData = canvas.clone();\r\nblur.applyFilter(blur, blur.rect, new Point(0,0), new BlurFilter(10,10,1));\r\n\r\ncanvas.draw(blur, null, null, BlendMode.ADD);\r\n<\/pre>\n<p>I was playing around awhile back and created this snippet, it will draw something that looks like this:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/actionsnippet.com\/wp-content\/perlin_thing.gif\" \/><\/p>\n<p>this is one of those snippets that can produce vastly different looking images with minor changes to the code&#8230; for instance, try changing the blendMode to darken and line 15 to this:<\/p>\n<p>var col:uint =  canvas.getPixel(xp, yp) \/ (xp|yp-w) >> 5 &#038; 0xFF;<\/p>\n<p>and you&#8217;ll end up with this:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/actionsnippet.com\/wp-content\/glitchy_perlin.jpg\" \/><\/p>\n<p>&#8230;take the original snippet and change the blendMode to subtract:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/actionsnippet.com\/wp-content\/dark_perlin.gif\" \/><\/p>\n<p>etc&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>var canvas:BitmapData = new BitmapData(1200,1200,false, 0x000000); addChild(new Bitmap(canvas)); scaleX = scaleY = 0.5; var w:int = canvas.width var hw:int = w \/ 2; var hhw:int = hw \/ 2; var size:int = canvas.width * canvas.width; canvas.perlinNoise(hhw,hhw,2,Math.random()*100,false, false, 1, true); for (var i:int = 0; i&lt;size; i++){ var xp:int = i % w; var yp:int = [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24,94,26],"tags":[3,14,4],"class_list":["post-360","post","type-post","status-publish","format-standard","hentry","category-bitmapdata","category-misc","category-setpixel","tag-actionscript","tag-as3","tag-flash"],"_links":{"self":[{"href":"https:\/\/actionsnippet.com\/index.php?rest_route=\/wp\/v2\/posts\/360","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/actionsnippet.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/actionsnippet.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/actionsnippet.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/actionsnippet.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=360"}],"version-history":[{"count":0,"href":"https:\/\/actionsnippet.com\/index.php?rest_route=\/wp\/v2\/posts\/360\/revisions"}],"wp:attachment":[{"href":"https:\/\/actionsnippet.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=360"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/actionsnippet.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=360"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/actionsnippet.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}