first draft with simple camera control