X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbackends%2Fopengl%2Fprogram_backend.cpp;h=b902db5f6a99043df53af71632230ff9eed263e1;hb=f82ef71;hp=3b1c4293326fd1edfe21e3aa7806e2dde4597df0;hpb=160e9eea29bd10034733d59507fa1bcca36be401;p=libs%2Fgl.git diff --git a/source/backends/opengl/program_backend.cpp b/source/backends/opengl/program_backend.cpp index 3b1c4293..b902db5f 100644 --- a/source/backends/opengl/program_backend.cpp +++ b/source/backends/opengl/program_backend.cpp @@ -38,13 +38,11 @@ void uniform_matrix_wrapper(unsigned index, unsigned count, const void *data) namespace Msp { namespace GL { -OpenGLProgram::OpenGLProgram(): - linked(false) +OpenGLProgram::OpenGLProgram() { static Require _req(ARB_shader_objects); id = glCreateProgram(); - fill(stage_ids, stage_ids+MAX_STAGES, 0); } OpenGLProgram::~OpenGLProgram() @@ -138,6 +136,9 @@ void OpenGLProgram::add_glsl_stages(const GlslModule &mod, const map(this)->reflect_data; + rd.n_clip_distances = compiler.get_n_clip_distances(); } void OpenGLProgram::compile_glsl_stage(const GlslModule &mod, unsigned stage_id) @@ -336,11 +337,6 @@ void OpenGLProgram::query_uniforms() } default_block.sort_uniforms(); - if(!default_block.uniforms.empty()) - { - const ReflectData::UniformInfo &uni = *default_block.uniforms.back(); - default_block.data_size = uni.location*16+uni.array_size*get_type_size(uni.type); - } default_block.update_layout_hash(); rd.update_layout_hash(); }