Refactored more code into Camera