Index: /trunk/nv/gfx/keyframed_mesh.hh
===================================================================
--- /trunk/nv/gfx/keyframed_mesh.hh	(revision 313)
+++ /trunk/nv/gfx/keyframed_mesh.hh	(revision 314)
@@ -28,5 +28,4 @@
 		virtual void update_animation( animation_entry*, uint32 a_anim_time );
 		virtual void update( program a_program );
-		virtual void update( uint32 ms ) { animated_mesh::update(ms); }
 		virtual ~keyframed_mesh();
 	protected:
@@ -74,5 +73,5 @@
 	public:
 		keyframed_mesh_gpu( context* a_context, const mesh_data* a_data, const mesh_nodes_data* a_tag_map );
-		void update( uint32 ms );
+		void update_animation( animation_entry* anim, uint32 a_anim_time );
 		virtual void update( program a_program );
 	private:
@@ -89,5 +88,5 @@
 	public:
 		keyframed_mesh_cpu( context* a_context, const mesh_data* a_data, const mesh_nodes_data* a_tag_map );
-		void update( uint32 ms );
+		void update_animation( animation_entry* anim, uint32 a_anim_time );
 		~keyframed_mesh_cpu();
 	private:
Index: /trunk/nv/interface/context.hh
===================================================================
--- /trunk/nv/interface/context.hh	(revision 313)
+++ /trunk/nv/interface/context.hh	(revision 314)
@@ -42,5 +42,4 @@
 	public:
 		mesh_interface() {}
-		virtual void update( uint32 ) {}
 		virtual void update( program ) {}
 		virtual nv::vertex_array get_vertex_array() const = 0;
@@ -93,13 +92,4 @@
 		virtual void draw( primitive prim, const render_state& rs, program p, vertex_array va, size_t count ) = 0;
 
-		void draw( const render_state& rs, program p, const mesh_interface* mesh )
-		{
-			draw( mesh->get_primitive_type(), rs, p, mesh->get_vertex_array(), mesh->get_index_count() );
-		}
-		void draw( const render_state& rs, const scene_state& s, program p, const mesh_interface* mesh )
-		{
-			apply_engine_uniforms(p,s);
-			draw( rs, p, mesh );
-		}
 		void draw( primitive prim, const render_state& rs, const scene_state& s, program p, vertex_array va, size_t count )
 		{
Index: /trunk/src/gfx/keyframed_mesh.cc
===================================================================
--- /trunk/src/gfx/keyframed_mesh.cc	(revision 313)
+++ /trunk/src/gfx/keyframed_mesh.cc	(revision 314)
@@ -136,8 +136,8 @@
 
 
-void nv::keyframed_mesh_gpu::update( uint32 ms )
-{
+void nv::keyframed_mesh_gpu::update_animation( animation_entry* anim, uint32 a_anim_time )
+{
+	keyframed_mesh::update_animation( anim, a_anim_time );
 	if ( m_loc_next_position == -1 ) return;
-	animated_mesh::update( ms );
 	if ( m_gpu_last_frame != m_last_frame )
 	{
@@ -199,8 +199,7 @@
 }
 
-void nv::keyframed_mesh_cpu::update( uint32 ms )
-{
-	animated_mesh::update( ms );
-
+void nv::keyframed_mesh_cpu::update_animation( animation_entry* anim, uint32 a_anim_time )
+{
+	keyframed_mesh::update_animation( anim, a_anim_time );
 	// TODO: this could be done generic for any data
 	if ( m_has_tangent )
