X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=util.cpp;h=01787f013e0a4c70817be2ccf49743cddb7bd254;hp=1e66c30b573e51ef419146d5149c32ed9e53e7d3;hb=5ee3e6bb0bf100d57a06911b89c3a0a0dc49e2be;hpb=6aff20a0932dc9b668b77981390539dd710cf06d diff --git a/util.cpp b/util.cpp index 1e66c30..01787f0 100644 --- a/util.cpp +++ b/util.cpp @@ -1,4 +1,4 @@ -#include +#include #include #include #include @@ -12,9 +12,9 @@ #if defined(__DARWIN__) #include #elif defined(WIN32) -#include +#include #else -#include +#include #endif using namespace std; @@ -96,6 +96,19 @@ string read_file(const string &filename) return string(buf, len); } +string read_version_dependent_file(const string &base, const string &extension) +{ + if (movit_shader_model == MOVIT_GLSL_110) { + return read_file(base + "." + extension); + } else if (movit_shader_model == MOVIT_GLSL_130) { + return read_file(base + ".130." + extension); + } else if (movit_shader_model == MOVIT_ESSL_300) { + return read_file(base + ".300es." + extension); + } else { + assert(false); + } +} + GLuint compile_shader(const string &shader_src, GLenum type) { GLuint obj = glCreateShader(type);