Matrix clipping_matrix;
const Program *shprog;
unsigned shdata_count;
- const Mesh *mesh;
const VertexSetup *vertex_setup;
const WindingTest *winding_test;
bool reverse_winding;
enum ChangeMask
{
- LEGACY_MATRIX = 1,
- MODERN_MATRIX = 2,
- MATRIX = LEGACY_MATRIX|MODERN_MATRIX,
- LEGACY_LIGHTING = 4,
- LEGACY_CLIPPING = 8,
+ MATRIX = 2,
SHADER_DATA = 16,
MATERIAL_SHDATA = 32,
- STANDARD_SHDATA = 64,
- LEGACY_PROJECTION = 128
+ STANDARD_SHDATA = 64
};
const Camera *default_camera;
unsigned char changed;
- bool matrices_loaded;
std::vector<State> state_stack;
State *state;
ProgramData standard_shdata;
std::set<const Renderable *> excluded;
public:
- Renderer(const Camera *);
+ Renderer();
+ DEPRECATED Renderer(const Camera *);
+private:
+ void init();
+public:
~Renderer();
- /** Resets all internal state and restarts rendering. There must be no
- unpopped state in the stack. It is permissible to call begin() multiple
- times without an intervening end().
-
- Deprecated; use end() and set_camera() instead.*/
- void begin(const Camera *);
-
/** Sets the camera to render from. The modelview matrix is reset to the
camera's view matrix. */
void set_camera(const Camera &);
void flush_shader_data();
- void set_mesh(const Mesh *);
void set_vertex_setup(const VertexSetup *);
void set_winding_test(const WindingTest *);
void set_reverse_winding(bool);