- initial camera implementation