load shaders from Ruby on Window creation

This commit is contained in:
josh committed 2014-07-23 16:36:40 -04:00
1 parent d85a0de9df
commit 8604d6d5ad
4 files changed
+30 -44

No files matched your search

+24
View File
@@ -0,0 +1,24 @@
class Window
def initialize
@programs = {}
load_shaders
end
private
def load_shaders
program_sources = {
text: ["text.v.glsl", "text.f.glsl"],
basic: ["basic.v.glsl", "basic.f.glsl"],
rect: ["rect.v.glsl", "basic.f.glsl"],
}
program_sources.each do |program, (v_src_fname, f_src_fname)|
v_shader = GLShader.new(:vertex, Runtime.read(:shader, v_src_fname))
v_shader or raise "Could not find shader #{v_src_fname}"
f_shader = GLShader.new(:fragment, Runtime.read(:shader, f_src_fname))
f_shader or raise "Could not find shader #{f_src_fname}"
@programs[program] = GLProgram.new(v_shader, f_shader)
end
end
end
+2 -1
View File
@@ -3,8 +3,9 @@ def init_loadpath
end
def load_lib_files
require "runtime"
require "gl_program"
require "runtime"
require "window"
end
def main(argv)