diff options
Diffstat (limited to 'scripts/generate-shaders.js')
-rwxr-xr-x | scripts/generate-shaders.js | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/scripts/generate-shaders.js b/scripts/generate-shaders.js index a3246c92d9..78d8911839 100755 --- a/scripts/generate-shaders.js +++ b/scripts/generate-shaders.js @@ -13,14 +13,23 @@ require('./style-code'); let concatenated = ''; let offsets = {}; +function basicMinify(src) { + return src = src.trim() // strip whitespace at the start/end + .replace(/\s*\/\/[^\n]*\n/g, '\n') // strip double-slash comments + .replace(/\n+/g, '\n') // collapse multi line breaks + .replace(/\n\s+/g, '\n') // strip identation + .replace(/\s?([+-\/*=,])\s?/g, '$1') // strip whitespace around operators + .replace(/([;\(\),\{\}])\n(?=[^#])/g, '$1'); // strip more line breaks +} + for (const key in shaders) { const vertex = concatenated.length; - concatenated += shaders[key].vertexSource; - concatenated += '\0'; + concatenated += basicMinify(shaders[key].vertexSource); + concatenated += '\n\0'; const fragment = concatenated.length; - concatenated += shaders[key].fragmentSource; - concatenated += '\0'; + concatenated += basicMinify(shaders[key].fragmentSource); + concatenated += '\n\0'; offsets[key] = {vertex, fragment}; } |