updated version of Camera class