{"id":3062,"date":"2013-05-08T13:46:48","date_gmt":"2013-05-08T11:46:48","guid":{"rendered":"http:\/\/hintz.bplaced.net\/?p=3062"},"modified":"2015-03-16T01:30:07","modified_gmt":"2015-03-16T00:30:07","slug":"polster","status":"publish","type":"post","link":"http:\/\/hintz.bplaced.net\/de\/2013\/webgl\/polster\/","title":{"rendered":"Polster"},"content":{"rendered":"<p>Dieses Muster erinnert mich an die Oberfl\u00e4che eines Ledersofas.<\/p>\n<p class=\"webgl\"><img decoding=\"async\" src=\"http:\/\/hintz.bplaced.net\/images\/2013\/05\/polster.jpg\" \/><a href=\"http:\/\/glslsandbox.com\/e#8563.8\"><canvas width=\"620\" height=\"620\"><script type=\"x-shader\/x-vertex\">attribute vec2 position; void main() { gl_Position = vec4(position, 0, 1); }<\/script><script type=\"x-shader\/x-fragment\">\n#ifdef GL_ES\nprecision mediump float;\n#endif\nuniform float time;\nuniform vec2 mouse;\nuniform vec2 resolution;\n#define M_PI 3.141592653589793\n\/\/ boxes by @hintz 2013-05-08\nvoid main(void)\n{\n\tvec2 position = (gl_FragCoord.xy - 0.5 * resolution.xy) \/ resolution.x;\n\tfloat a = 0.2*time*M_PI\/3.0;\n\tfloat r = length(position);\n\tfloat c = cos(a);\n\tfloat s = sin(a);\n\tmat2 rotate = mat2(c,s,-s,c);\n\tvec2 q = sin(rotate*(position+tan(2.0*position*rotate*rotate))*3.0*(1.5+sin(time*0.5)\/r));\n\tq=sqrt(abs(q)-0.1);\n\tvec3 color = vec3(length(position+q));\n\tcolor.rg += smoothstep(0.2,.0,abs(position.x));\n\tvec2 p2 = (position+q) * rotate;\n\tcolor.gb += smoothstep(0.2,.0,abs(p2.x));\n\tvec2 p3 = p2 * rotate;\n\tcolor.br += smoothstep(0.2,.0,abs(p3.x));\n\tvec2 p4 = p3 * rotate;\n\tcolor.rg += smoothstep(0.2,.0,abs(p4.x));\n\tvec2 p5 = p4 * rotate;\n\tcolor.gb += smoothstep(0.2,.0,abs(p5.x));\n\tvec2 p6 = p5 * rotate;\n\tcolor.br += smoothstep(0.2,.0,abs(p6.x));\n\tcolor.g *= abs(position.x);\n\tcolor.b *= abs(p2.x);\n\tcolor.r *= abs(p3.x);\t\n\tcolor.xy *= rotate;\n\tcolor.yz *= rotate;\n\tcolor = abs(color);\n\tgl_FragColor = vec4(color*color.zxy, 1.0);\n}\n<\/script><\/canvas><\/a><\/p>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Dieses Muster erinnert mich an die Oberfl\u00e4che eines Ledersofas.<\/p>\n","protected":false},"author":1,"featured_media":3065,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[144],"tags":[149,147,150,145,189],"_links":{"self":[{"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/posts\/3062"}],"collection":[{"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/comments?post=3062"}],"version-history":[{"count":8,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/posts\/3062\/revisions"}],"predecessor-version":[{"id":3182,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/posts\/3062\/revisions\/3182"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/media\/3065"}],"wp:attachment":[{"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/media?parent=3062"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/categories?post=3062"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/hintz.bplaced.net\/de\/wp-json\/wp\/v2\/tags?post=3062"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}