Refactored camera