first camera implementation WIP