 				
 		private function effectChangedHandler(effect : Effect, property : String = null) : void
 		{
+			updateDrawCalls();
+			_bindings.clear();
+		}
+		
+		private function updateDrawCalls() : void
+		{
+			if (!_indexStream)
+				return ;
+			
 			var passes		: Vector.<ActionScriptShader>	= _effect.passes;
 			var numPasses 	: int 							= passes.length;
 			

			effectChangedHandler(_effect);
		}
		
		public function Mesh(effect			: Effect,
							 vertexStreams	: Vector.<IVertexStream>,
							 indexStream	: IndexStream	= null)
		{
			super();

			_vertexStreams = vertexStreams;
			_indexStream = indexStream;
			
			initialize();

				drawCall.setStreams(_vertexStreams, _indexStream);
				_drawCalls[i] = drawCall;
			}
		}
				
		public function clone() : Mesh
