tweak shader alias names

This commit is contained in:
2020-03-09 00:49:00 -04:00
parent 219c3f9e32
commit bb7dcfd47d
2 changed files with 23 additions and 27 deletions

View File

@@ -65,6 +65,10 @@ namespace cgl {
throw shader_error(get_info_log());
}
static shader<mode> file(const std::string &name) {
return shader<mode>(utilReadFile(name));
}
shader(shader &) = delete;
shader(shader &&o) noexcept {
@@ -172,6 +176,10 @@ namespace cgl {
detach(sh);
}
static shaderprogram<mode> file(const std::string &name) {
return shaderprogram<mode>(utilReadFile(name));
}
};
class pipeline {
@@ -236,17 +244,12 @@ namespace cgl {
}
};
using vert_shader = shader<GL_VERTEX_SHADER>;
using tctl_shader = shader<GL_TESS_CONTROL_SHADER>;
using tevl_shader = shader<GL_TESS_EVALUATION_SHADER>;
using geom_shader = shader<GL_GEOMETRY_SHADER>;
using frag_shader = shader<GL_FRAGMENT_SHADER>;
using comp_shader = shader<GL_COMPUTE_SHADER>;
using vert_program = shaderprogram<GL_VERTEX_SHADER>;
using tctl_program = shaderprogram<GL_TESS_CONTROL_SHADER>;
using tevl_program = shaderprogram<GL_TESS_EVALUATION_SHADER>;
using geom_program = shaderprogram<GL_GEOMETRY_SHADER>;
using frag_program = shaderprogram<GL_FRAGMENT_SHADER>;
using comp_program = shaderprogram<GL_COMPUTE_SHADER>;
namespace pgm {
using vert = shaderprogram<GL_VERTEX_SHADER>;
using tcs = shaderprogram<GL_TESS_CONTROL_SHADER>;
using tes = shaderprogram<GL_TESS_EVALUATION_SHADER>;
using geom = shaderprogram<GL_GEOMETRY_SHADER>;
using frag = shaderprogram<GL_FRAGMENT_SHADER>;
using comp = shaderprogram<GL_COMPUTE_SHADER>;
}
}

View File

@@ -81,22 +81,15 @@ void run(GLFWwindow *window) {
// glEnable(GL_CULL_FACE);
glCullFace(GL_BACK);
auto defer = cgl::vert_program(
utilReadFile("shaders/slice/deferred.vs.glsl"));
auto direct_ortho = cgl::vert_program(
utilReadFile("shaders/direct-ortho.vs.glsl"));
auto direct_stereo = cgl::vert_program(
utilReadFile("shaders/direct-stereo.vs.glsl"));
auto defer = cgl::pgm::vert::file("shaders/slice/deferred.vs.glsl");
auto direct_ortho = cgl::pgm::vert::file("shaders/direct-ortho.vs.glsl");
auto direct_stereo = cgl::pgm::vert::file("shaders/direct-stereo.vs.glsl");
auto slice = cgl::geom_program(
utilReadFile("shaders/slice/slice.gm.glsl"));
auto curve_stereo = cgl::geom_program(
utilReadFile("shaders/curve-stereo.gm.glsl"));
auto curve_ortho = cgl::geom_program(
utilReadFile("shaders/curve-ortho.gm.glsl"));
auto slice = cgl::pgm::geom::file("shaders/slice/slice.gm.glsl");
auto curve_stereo = cgl::pgm::geom::file("shaders/curve-stereo.gm.glsl");
auto curve_ortho = cgl::pgm::geom::file("shaders/curve-ortho.gm.glsl");
auto solid = cgl::frag_program(
utilReadFile("shaders/solid.fs.glsl"));
auto solid = cgl::pgm::frag::file("shaders/solid.fs.glsl");
cgl::pipeline proj_pipe;
proj_pipe.use_stages(direct_stereo);