Skip to content

cutting-room-floor/glify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

glify

Compiles and links GLSL shaders with glsl-unit.

It can be used either as a browserify transform or as a regular node module.

Install

npm install --save-dev glify

Example

var glify = require('glify');
var shader = glify('./fill.*.glsl');

In node, shader will be an object with vertex and fragment properties containing optimized GLSL source from fill.vertex.glsl and fill.fragment.glsl files.

With browserify, you can run browserify -t glify foo.js > bar.js and bar.js will contain:

var shader = {"vertex":"precision mediump float;attribute vec2 a_pos;uniform mat4 u_posmatrix;void main(){gl_Position=u_posmatrix*vec4(a_pos,0,1);gl_PointSize=2.;}","fragment":"precision mediump float;uniform vec4 u_color;void main(){gl_FragColor=u_color;}"};

Prepend

You can prepend #defines to the source:

var lineShader = glify('./line.*.glsl', '#define FOO bar');

About

glsl-unit compiler as browserify transform

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •