Index: deploy/OpenGLGame.iss
===================================================================
--- deploy/OpenGLGame.iss	(revision f71d87dc18c06463ff1d4281ff63beb34f582bf7)
+++ deploy/OpenGLGame.iss	(revision f71d87dc18c06463ff1d4281ff63beb34f582bf7)
@@ -0,0 +1,14 @@
+[Setup]
+AppName=OpenGLGame
+AppVersion=0.1
+DefaultDirName={pf}\OpenGLGame
+DefaultGroupName=OpenGLGame
+Compression=lzma2
+SolidCompression=yes
+OutputDir=userdocs:Inno Setup Examples Output
+
+[Files]
+Source: "Debug\OpenGLGame.exe"; DestDir: "{app}"
+
+[Icons]
+Name: "{group}\OpenGLGame"; Filename: "{app}\OpenGLGame.exe"
Index: laser.frag
===================================================================
--- laser.frag	(revision e1eec78b46bbc21e2acea988dcc0fdefc06f34d4)
+++ laser.frag	(revision f71d87dc18c06463ff1d4281ff63beb34f582bf7)
@@ -1,6 +1,14 @@
 #version 410
+
+#define MAX_NUM_OBJECTS 1024
 
 uniform sampler2D basic_texture;
 uniform vec3 laser_color;
+
+// use this to allow lasers of different colors,
+// while still drawing them all at the same time
+layout (std140) uniform colors {
+  vec3 laser_colors[MAX_NUM_OBJECTS];
+};
 
 in vec2 texture_coordinates;
