added camera and would bounds checking