Improved the camera implementation