+ scene::SMesh *m_mesh;
+ IGameDef *m_gamedef;
+
+ bool m_enable_shaders;
+ bool m_enable_highlighting;
+
+ video::SColor m_highlight_mesh_color;
+
+ // Must animate() be called before rendering?
+ bool m_has_animation;
+ int m_animation_force_timer;
+
+ // Animation info: cracks
+ // Last crack value passed to animate()
+ int m_last_crack;
+ // Maps mesh buffer (i.e. material) indices to base texture names
+ std::map<u32, std::string> m_crack_materials;
+ std::list<u32> m_highlighted_materials;
+
+ // Animation info: texture animationi
+ // Maps meshbuffers to TileSpecs
+ std::map<u32, TileSpec> m_animation_tiles;
+ std::map<u32, int> m_animation_frames; // last animation frame
+ std::map<u32, int> m_animation_frame_offsets;
+
+ // Animation info: day/night transitions
+ // Last daynight_ratio value passed to animate()
+ u32 m_last_daynight_ratio;
+ // For each meshbuffer, maps vertex indices to (day,night) pairs
+ std::map<u32, std::map<u32, std::pair<u8, u8> > > m_daynight_diffs;
+
+ // Camera offset info -> do we have to translate the mesh?
+ v3s16 m_camera_offset;