{"versions":{"1.0.3":{"name":"glsl-inject-defines","version":"1.0.3","description":"injects a #define statement into a shader source","main":"string.js","license":"MIT","scripts":{"test":"node test/test.js | faucet"},"author":{"name":"Matt DesLauriers","email":"dave.des@gmail.com","url":"http://github.com/mattdesl"},"dependencies":{"glsl-token-inject-block":"^1.0.0","glsl-token-string":"^1.0.1","glsl-tokenizer":"^2.0.2"},"devDependencies":{"faucet":"0.0.1","tape":"^4.0.0"},"repository":{"type":"git","url":"git://github.com/mattdesl/glsl-inject-defines.git"},"keywords":["ecosystem:stackgl","inject","define","shader","stackgl","webgl","shader","glsl"],"homepage":"https://github.com/mattdesl/glsl-inject-defines","bugs":{"url":"https://github.com/mattdesl/glsl-inject-defines/issues"},"gitHead":"6a813e550553b18d3f4f88855558d810cb266084","_id":"glsl-inject-defines@1.0.3","_shasum":"dd1aacc2c17fcb2bd3fc32411c6633d0d7b60fd4","_from":".","_npmVersion":"2.1.18","_nodeVersion":"0.10.32","_npmUser":{"name":"anonymous","email":"dave.des@gmail.com"},"dist":{"shasum":"dd1aacc2c17fcb2bd3fc32411c6633d0d7b60fd4","size":2241,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/glsl-inject-defines/-/glsl-inject-defines-1.0.3.tgz","integrity":"sha512-W49jIhuDtF6w+7wCMcClk27a2hq8znvHtlGnrYkSWEr8tHe9eA2dcnohlcAmxLYBSpSSdzOkRdyPTrx9fw49+A=="},"maintainers":[{"name":"anonymous","email":"dave.des@gmail.com"}],"directories":{},"publish_time":1435506888342,"_hasShrinkwrap":false,"_cnpm_publish_time":1435506888342,"_cnpmcore_publish_time":"2021-12-16T22:19:20.443Z","contributors":[]},"1.0.2":{"name":"glsl-inject-defines","version":"1.0.2","description":"injects a #define statement into a shader source","main":"string.js","license":"MIT","scripts":{"test":"node test/test.js | faucet"},"author":{"name":"Matt DesLauriers","email":"dave.des@gmail.com","url":"http://github.com/mattdesl"},"dependencies":{"glsl-token-inject-block":"^1.0.0","glsl-token-string":"^1.0.1","glsl-tokenizer":"^2.0.2"},"devDependencies":{"faucet":"0.0.1","tape":"^4.0.0"},"repository":{"type":"git","url":"git://github.com/stackgl/glsl-inject-defines.git"},"keywords":["ecosystem:stackgl","inject","define","shader","stackgl","webgl","shader","glsl"],"homepage":"https://github.com/stackgl/glsl-inject-defines","bugs":{"url":"https://github.com/stackgl/glsl-inject-defines/issues"},"gitHead":"53d89485748f878a6d0349a41aad3055f81c6af2","_id":"glsl-inject-defines@1.0.2","_shasum":"879b5c80a04779b45d5de0268c13cc91f3080751","_from":".","_npmVersion":"2.1.18","_nodeVersion":"0.10.32","_npmUser":{"name":"anonymous","email":"dave.des@gmail.com"},"dist":{"shasum":"879b5c80a04779b45d5de0268c13cc91f3080751","size":2238,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/glsl-inject-defines/-/glsl-inject-defines-1.0.2.tgz","integrity":"sha512-+Oq3Wl+L+nmKiv13THvPD63Fgx+bcLocvH19GbZqFAJevQcRqTEKzL8I5HR/U4L7smR+cjKMBD+ZHJcNK5/6+A=="},"maintainers":[{"name":"anonymous","email":"dave.des@gmail.com"}],"directories":{},"publish_time":1435266805204,"_hasShrinkwrap":false,"_cnpm_publish_time":1435266805204,"_cnpmcore_publish_time":"2021-12-16T22:19:20.627Z","contributors":[]},"1.0.1":{"name":"glsl-inject-defines","version":"1.0.1","description":"injects a #define statement into a shader source","main":"string.js","license":"MIT","scripts":{"test":"node test/test.js | faucet"},"author":{"name":"Matt DesLauriers","email":"dave.des@gmail.com","url":"http://github.com/mattdesl"},"dependencies":{"glsl-token-string":"^1.0.1","glsl-tokenizer":"^2.0.2"},"devDependencies":{"faucet":"0.0.1","tape":"^4.0.0"},"repository":{"type":"git","url":"git://github.com/stackgl/glsl-inject-defines.git"},"keywords":["ecosystem:stackgl","inject","define","shader","stackgl","webgl","shader","glsl"],"homepage":"https://github.com/stackgl/glsl-inject-defines","bugs":{"url":"https://github.com/stackgl/glsl-inject-defines/issues"},"gitHead":"129fd0f774738b7bca60eee1f3096535e9aeac55","_id":"glsl-inject-defines@1.0.1","_shasum":"371a480f68a612d7e1a1682cf6c2d196915fd676","_from":".","_npmVersion":"2.1.18","_nodeVersion":"0.10.32","_npmUser":{"name":"anonymous","email":"dave.des@gmail.com"},"dist":{"shasum":"371a480f68a612d7e1a1682cf6c2d196915fd676","size":2569,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/glsl-inject-defines/-/glsl-inject-defines-1.0.1.tgz","integrity":"sha512-qmpzgK6v2w8GszJwSz1zrVdMuX91oAoYsXyrQwcBa6M6lzJBeueFRkJiA7Fbql4C8TOj1gaGK+Mnkg2HBPXaJQ=="},"maintainers":[{"name":"anonymous","email":"dave.des@gmail.com"}],"directories":{},"publish_time":1435118454784,"_hasShrinkwrap":false,"_cnpm_publish_time":1435118454784,"_cnpmcore_publish_time":"2021-12-16T22:19:20.830Z","contributors":[]},"1.0.0":{"name":"glsl-inject-defines","version":"1.0.0","description":"injects a #define statement into a shader source","main":"string.js","license":"MIT","scripts":{"test":"node test/test.js | faucet"},"author":{"name":"Matt DesLauriers","email":"dave.des@gmail.com","url":"http://github.com/mattdesl"},"dependencies":{"glsl-token-string":"^1.0.1","glsl-tokenizer":"^2.0.2"},"devDependencies":{"faucet":"0.0.1","tape":"^4.0.0"},"repository":{"type":"git","url":"git://github.com/stackgl/glsl-inject-defines.git"},"keywords":["ecosystem:stackgl","inject","define","shader","stackgl","webgl","shader","glsl"],"homepage":"https://github.com/stackgl/glsl-inject-defines","bugs":{"url":"https://github.com/stackgl/glsl-inject-defines/issues"},"gitHead":"45491d3360c5bdff6c9145c41c87644f36b63a4b","_id":"glsl-inject-defines@1.0.0","_shasum":"c3ab0abb68e55712cb74a396995a59cef45cdeb6","_from":".","_npmVersion":"2.1.18","_nodeVersion":"0.10.32","_npmUser":{"name":"anonymous","email":"dave.des@gmail.com"},"dist":{"shasum":"c3ab0abb68e55712cb74a396995a59cef45cdeb6","size":2572,"noattachment":false,"tarball":"http://123.232.10.234:8212/nexus/content/groups/npm-public/glsl-inject-defines/-/glsl-inject-defines-1.0.0.tgz","integrity":"sha512-ty2J68k/0h00XD2e5YgfeJ6lLuA5C/30WlPPNuzNkBsSMVsLDH74iXjFPXMWz9A2W/hyD+CVT0K4wraC8EKvGA=="},"maintainers":[{"name":"anonymous","email":"dave.des@gmail.com"}],"directories":{},"publish_time":1435118368542,"_hasShrinkwrap":false,"_cnpm_publish_time":1435118368542,"_cnpmcore_publish_time":"2021-12-16T22:19:21.056Z","contributors":[]}},"dist-tags":{"latest":"1.0.3"},"name":"glsl-inject-defines","time":{"created":"2022-01-27T02:28:27.908Z","modified":"2022-01-27T02:28:27.908Z","1.0.3":"2015-06-28T15:54:48.342Z","1.0.2":"2015-06-25T21:13:25.204Z","1.0.1":"2015-06-24T04:00:54.784Z","1.0.0":"2015-06-24T03:59:28.542Z"},"readme":"# glsl-inject-defines\n\n[![stable](http://badges.github.io/stability-badges/dist/stable.svg)](http://github.com/badges/stability-badges)\n\nSafely inject `#define` statements into a shader source. \n\nIf the shader contains any `#version` or `#extension` statements, the defines are added after them. \n\n## Example\n\n```glsl\n// Your cool shader\n#version 330\n#extension GL_OES_standard_derivatives : enable\n\nvoid main() {\n  #ifdef BLUE\n    gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0);\n  #else\n    gl_FragColor = vec4(0.0);\n  #endif\n}\n```\n\nYou can process it at runtime, like so:\n\n```js\nvar injectDefines = require('glsl-inject-defines')\nvar fs = require('fs')\n\nvar source = fs.readFileSync(__dirname + '/shader.glsl', 'utf8')\n\nvar transformed = injectDefines(source, {\n  PI: 3.14,\n  BLUE: ''\n})\nconsole.log(transformed)\n```\n\nThe resulting shader:\n\n```glsl\n// Your cool shader\n#version 330\n#extension GL_OES_standard_derivatives : enable\n#define PI 3.14\n#define BLUE \n\nvoid main() {\n  #ifdef BLUE\n    gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0);\n  #else\n    gl_FragColor = vec4(0.0);\n  #endif\n}\n```\n\nWorks in the browser with browserify and [glslify](https://www.npmjs.com/package/glslify).\n\n## Install\n\n```sh\nnpm install glsl-inject-defines\n```\n\n## Usage\n\n[![NPM](https://nodei.co/npm/glsl-inject-defines.png)](https://www.npmjs.com/package/glsl-inject-defines)\n\n#### `newSource = injectDefines(source, defines)`\n\nInjects the set of `defines`, an object with `<name, value>` pairs that will get turned into strings for the shader source.\n\nReturns the transformed source, with defines injected after extension and version statements.\n\n## License\n\nMIT. See [LICENSE.md](http://github.com/stackgl/glsl-inject-defines/blob/master/LICENSE.md) for details.","users":{}}