VimUnDo1Q@~S[;PNJ^ "ER*tW,rrrrV_*V^b)+>< w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top right5_,V^c+->? w / pixelsPerUnit, -h / pixelsPerUnit, 0.0, // bottom right5_'V;&(>var pixelsPerUnit = 100;5_ 'V;&(>var pixelsPerUnit = 10;5_ **-V V<).>*+>5_ ..1VV<02= -w / pixelsPerUnit, -h / pixelsPerUnit, 0.0 // bottom left/1> w / pixelsPerUnit, -h / pixelsPerUnit, 0.0, // bottom right.0; -w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top left-/; w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top right5_ *.1VV<)+B; w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top right5_ *.1VV<)+B9 w pixelsPerUnit, h / pixelsPerUnit, 0.0, // top right5_  *.1VV<)+B, w , h / pixelsPerUnit, 0.0, // top right5_ *.1VV<)+B+ w, h / pixelsPerUnit, 0.0, // top right5_*.1VV<)+B w, h, 0.0, // top right5_*.1VV<)+B w, 0, 0.0, // top right5_*.1VV<)+B w, 0.0, 0.0, // top right5_*.1VV<)+B w, .0, 0.0, // top right5_*.1VV<)+B w, 0, 0.0, // top right5_*.1VV<)+B w, , 0.0, // top right5_+.1VV=*,B; -w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top left5_+.1VV= *,B+ -w / pixelsPerUnit, h, 0.0, // top left5_+.1VV=*,B -w, h, 0.0, // top left5_+.1VV=*,B w, h, 0.0, // top left5_,.1VV=+-B> w / pixelsPerUnit, -h / pixelsPerUnit, 0.0, // bottom right5_-.1VV=,.B= -w / pixelsPerUnit, -h / pixelsPerUnit, 0.0 // bottom left5_ ,.1VV=2+-B/ w / pixelsPerUnit, 0.0, 0.0, // bottom right5_! -.1VV=8,.B. -w / pixelsPerUnit, 0.0, 0.0 // bottom left5_ "!-.1VV=<,.B .0, 0.0 // bottom left5_!#"+.1VV=>*,B 0, h, 0.0, // top left5_"$#'.1VV=H &'var pixelsPerUnit = 1;5_#*$,-0VV? +-A 0.0, 0.0 // bottom left5_$+)*+-0VVB*,A w, 0.0, 0.0, // bottom right5_*,++-0VVB*,A w, .0, 0.0, // bottom right5_+-,+-0VVB*,A w, 0, 0.0, // bottom right5_,.-+-0VVB*,A w, , 0.0, // bottom right5_-0.,-0VVB+-A 0.0, 0.0, 0.0 // bottom left5_.1/0,-0VVB+-A 0.0, h0.0, 0.0 // bottom left5_021,-0VVB+-A 0.0, h.0, 0.0 // bottom left5_132,-0VVB+-A 0.0, h0, 0.0 // bottom left5_243*-0VVB)+A 0.0, h, 0.0, // top left5_354)-0VVB(*A w, h, 0.0, // top right5_465--0VVC,-> // w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top right> // -w / pixelsPerUnit, h / pixelsPerUnit, 0.0, // top left5_576--.VVC,-A // w / pixelsPerUnit, -h / pixelsPerUnit, 0.0, // bottom right@ // -w / pixelsPerUnit, -h / pixelsPerUnit, 0.0 // bottom left5_687019VVJP03>02=5_79833;VVJq23 *function buildBuffer(gl, size, vertices) { var buffer = gl.createBuffer();( gl.bindBuffer(gl.ARRAY_BUFFER, buffer);L gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW); buffer.itemSize = size;* buffer.numItems = vertices.length / size; return buffer;}5_8:9133VVJt01/var buildBuffer = require("./gl/build-buffer");5_9;:11VVJv445_:<;))2VVJ() $function makeRectangleCoords(w, h) { var c = [ w, 0.0, 0.0, // top right 0.0, 0.0, 0.0, // top left w, h, 0.0, // bottom right 0.0, h, 0.0 // bottom left ]; return c;}5_;=< ))VVK W vertexCoords: buildBuffer(gl, 3, makeRectangleCoords(frame.frame.w, frame.frame.h)),5_<>=VVS+function fromImage(gl, image) {5_=?>$VVS.--, +5_>@?"VVS . } .5_?A@"VVS. flipped = true;.5_@BA"VVS. if (flipped === undefined) {.5_ACB"VVS. flipped = true;.5_BDC"VVS. if (flipped === undefined) {5_CED"VVS. if (flipped === undefined) {5_DFE"VVS. flipped = true;5_EGF"VVS. flipped = true;5_FHG"VVS. flipped = true;5_GIH"VVS. flipped = true;5_HJI"VVS . }5_IKJ"VVS . }5_JLK ("VVS .. gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, true);5_KML ("VVU ./ gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, false);5_LpMVЇ.& textureCoords: buildBuffer(gl, 2, [5_MqOpvV#..5_prq##(VV{"# textureCoords: { right, top, left, top, right, bottom, left, bottom ]),5_qr##VV~/var buildBuffer = require("./gl/build-buffer");5_MVNpOVА. top: top,5_OWUVvVЬ.. l top: top,5_VXWvVЭ. top: top,5_WYXvVЭ. top: top,5_XZYvVЭ. top: top,5_Y[ZvVЭ. top: top,5_Z\[vVЭ. top: top,5_[]\vVЮ. top: top,5_\^]vVЮ. top: top,5_]_^vVЮ. top: top,5_^`_vVЮ. top: top,5__a` vVа.. top: top,5_`ba!!vVа / / top: top,5_acb "$VVа !0 !0 top: top,5_bec"""VVд!%5_cfde"""VVи!#. :),5_egf"""VVл!#. }),5_fhg"""VVм!#. },5_gih""VV . right: top,5_hji ""VV . right: right,5_ikj ""VV!. bottom: top,5_jlk ""VV!. bottom: bottom,5_kml!""VV ". left: top,5_lnm! ""VV ". left: left,5_mon!""VV ". left: left5_no VV5_ced"""VVе!#. ],5_OTVUvVЩ.. l top: top,5_OSUT VП .5_OPTS VН . . top: top,5_OQSPVЙ.. top: top,5_PRQVК / / top: top,5_QR VК !0 !0 top: top,5_MONVЋ. / top5_.0/,-0VVB+-A! 0.0, hh0.0, 0.0 // bottom left5_$&*)+-0VVB*,A5_$'%)&)-0VVBI(*A w, -h, 0.0, // top right5_&('*-0VVBL)+A 0.0, -h, 0.0, // top left5_'(*-0VVBM )+A 0.0, -h, 0.0, // top left5_$&%-0VVA 1 // gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, true);5_+.1VV=*,B -w.0, // top left5_+.1VV<*,B' -w / pixelsPerUnit, h.0, // top left5_+.1VV<*,B' -w / pixelsPerUnit, h.0, // top left5_ *.1VV<)+B w, h 0.0, // top right5_'V6&(>var pixelsPerUnit = 10;5_'V5&(>var pixelsPerUnit = 10;5_'V3&(>var pixelsPerUnit = 10;5_'V3&(>var pixelsPerUnit = 1;5