Particle update method is now given as a delegate