]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/renderer.h
Handle all shader data in Renderer through the generic mechanism
[libs/gl.git] / source / render / renderer.h
index 197cf95a5c6b09090adc6ccd5e4505c2a1f44617..50254cdf1de09824cb50f9bd37a9f85436a41606 100644 (file)
@@ -89,8 +89,6 @@ private:
                Matrix model_matrix;
                unsigned texture_count;
                unsigned lowest_effect_texunit;
-               const Material *material;
-               const Lighting *lighting;
                const Clipping *clipping;
                const Program *shprog;
                unsigned shdata_count;
@@ -105,12 +103,7 @@ private:
        enum ChangeMask
        {
                MATRIX = 2,
-               SHADER_DATA = 16,
-               MATERIAL_SHDATA = 32,
-               STANDARD_SHDATA = 64,
-               CAMERA_SHDATA = 128,
-               LIGHTING_SHDATA = 256,
-               CLIPPING_SHDATA = 512
+               SHADER_DATA = 16
        };
 
        const Camera *default_camera;
@@ -155,9 +148,9 @@ public:
        DEPRECATED void set_texturing(const Texturing *);
        DEPRECATED unsigned allocate_effect_texunit();
 #pragma GCC diagnostic pop
-       void set_material(const Material *);
+       DEPRECATED void set_material(const Material *);
 
-       void set_lighting(const Lighting *);
+       DEPRECATED void set_lighting(const Lighting *);
        void set_clipping(const Clipping *);
 
        /** Sets the shader program to use.  An initial set of data can be set as
@@ -169,8 +162,11 @@ public:
        Renderer state is popped. */
        void add_shader_data(const ProgramData &data);
 
-       void flush_shader_data();
+       DEPRECATED void flush_shader_data() { flush_shader_data_(); }
+private:
+       void flush_shader_data_();
 
+public:
        void set_vertex_setup(const VertexSetup *);
        void set_winding_test(const WindingTest *);
        void set_reverse_winding(bool);