glsl-shader-loader
Version:
A static shader source bundler for WebGL program, provide a possibility for management shader source by creating separate files.
20 lines (16 loc) • 516 B
JavaScript
const fs = require('fs')
module.exports = function extractShaderSource(loader, path) {
return new Promise((resolve, reject) => {
fs.access(path, (err) => {
if (err) return reject(err)
loader.resolve(loader.context, path, function(err, resolved) {
if (err) return reject(err)
loader.addDependency(resolved)
fs.readFile(resolved, 'utf-8', function(err, shaderSource) {
if (err) return reject(err)
resolve(shaderSource)
})
})
})
})
}