1
0
Fork 0

Program is a resource

This commit is contained in:
Meoweg 2015-11-13 15:02:01 +00:00
parent 7631a8d26e
commit e88e3899d2
3 changed files with 8 additions and 8 deletions

View File

@ -73,7 +73,7 @@ int main()
glfwSetKeyCallback(on_key);
emscripten_set_mousemove_callback(nullptr, nullptr, false, on_em_mousemove);
exe = Program(store, "textured").build(
exe = store.load<Program>("textured")->build(
__attrib_count, attribs,
__uniform_count, uniforms
);

View File

@ -6,7 +6,7 @@
const std::string Program::filename(const std::string &name)
{
return "/data/shaders/" + name;
return "/data/programs/" + name;
}
Program::Program(Store &store, const std::string &name):
@ -16,7 +16,7 @@ Program::Program(Store &store, const std::string &name):
const Executable *Program::build(
GLuint attrib_count, const GLchar *const attribs[],
unsigned uniform_count, const GLchar *const uniforms[])
unsigned uniform_count, const GLchar *const uniforms[]) const
{
Executable *exe = new Executable();

View File

@ -1,22 +1,22 @@
#ifndef _PROGRAM_HPP_
#define _PROGRAM_HPP_
#include "resource.hpp"
#include "shader.hpp"
#include "executable.hpp"
#include <string>
struct Program
struct Program:
Resource
{
Program(Store &store, const std::string &name);
RESOURCE(Program)
const Executable *build(
GLuint attrib_count, const GLchar *const attribs[],
unsigned uniform_count, const GLchar *const uniforms[]);
unsigned uniform_count, const GLchar *const uniforms[]) const;
private:
static const std::string filename(const std::string &name);
const Shader *vertex_shader;
const Shader *fragment_shader;
};