X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=vignette_effect.cpp;h=ac5197781cc4fc17f95ad2f5211df6021c0bc700;hp=08dadabdc4cd509c9f2a6d536f9cc3d29cd39f8f;hb=ad66f9714e4a36008c341355700272a52484a785;hpb=f4516cf70e80bf1153759919c8b2ab1cee37d9ec diff --git a/vignette_effect.cpp b/vignette_effect.cpp index 08dadab..ac51977 100644 --- a/vignette_effect.cpp +++ b/vignette_effect.cpp @@ -1,9 +1,7 @@ -#define GL_GLEXT_PROTOTYPES 1 - +#include #include -#include -#include +#include "effect_util.h" #include "vignette_effect.h" #include "util.h" @@ -17,16 +15,16 @@ VignetteEffect::VignetteEffect() register_float("inner_radius", (float *)&inner_radius); } -std::string VignetteEffect::output_glsl() +std::string VignetteEffect::output_fragment_shader() { - return read_file("vignette_effect.glsl"); + return read_file("vignette_effect.frag"); } -void VignetteEffect::set_uniforms(GLhandleARB glsl_program_num, const std::string &prefix) +void VignetteEffect::set_gl_state(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num) { - Effect::set_uniforms(glsl_program_num, prefix); + Effect::set_gl_state(glsl_program_num, prefix, sampler_num); - set_uniform_float(glsl_program_num, prefix, "inv_radius", 1.0f / radius); + set_uniform_float(glsl_program_num, prefix, "pihalf_div_radius", 0.5 * M_PI / radius); Point2D aspect(16.0f / 9.0f, 1.0f); // FIXME set_uniform_vec2(glsl_program_num, prefix, "aspect_correction", (float *)&aspect);