camera state updates