Camera touch rotation Pokemon Go style

Camera stuff is pretty tricky… you may wish to consider using Cinemachine from the Unity Package Manager.

There’s even a dedicated forum: Unity Engine - Unity Discussions

If you want to do it yourself, definitely get away from any use of the .eulerAngles property, especially additive uses. That will almost certainly lead to undesirable results. Here’s why:

Notes on clamping camera rotation and NOT using .eulerAngles because of gimbal lock:

How to instantly see gimbal lock for yourself:

All about Euler angles and rotations, by StarManta:

https://starmanta.gitbooks.io/unitytipsredux/content/second-question.html

You will always have better luck by:

  1. setting the camera position (transform.position = …)
  2. telling the camera to look at another position (transform.LookAt( …))