Doesn't this need to happen when the model matrix changes too?