added camera update and reset functions