Rotating and zooming with an isometric camera

I’ve made an isometric camera which is controlled by the WASD keys using this tutorial; http://kraigwalker.com/articles/creating-an-isometric-camera-in-unity/

Now I just want to make it so my camera can be rotated clockwise and anticlockwise with the Q & E keys and for the camera to zoom in and out with the Mouse wheel. Can anybody create me a script that would enable these camera movements?

I do not know if you still need help, but in case you do or if anyone is looking for it, you cannot zoom in by moving the camera forward in Isometric mode. You can zoom in and out increasing or decreasing Camera.orthographicSize values in script.

 if (Input.GetAxis ("Mouse ScrollWheel") > 0) {
             camera.orthographicSize += 1; //Change values according to your requirements
         }
 if (Input.GetAxis ("Mouse ScrollWheel") < 0) {
             camera.orthographicSize -= 1;
         }

The higher the orthographicSize the more area the camera can see, so increase it to zoom out and decrease it to zoom in.

int speed = 5;
void Update(){
if (Input.GetAxis (“Mouse ScrollWheel”) > 0) {
transform.Translate(Vector3.forward * speed * Time.deltaTime);
}
if (Input.GetAxis (“Mouse ScrollWheel”) < 0) {
transform.Translate(Vector3.back * speed * Time.deltaTime);
}
if (Input.GetKey(KeyCode.Q)){
transform.Rotate(Vector3.forward * speed * Time.deltaTime);
}
if (Input.GetKey(KeyCode.E)){
transform.Rotate(Vector3.forward* -speed * Time.deltaTime);
}
}

Thanks for the reply Cherno and mcroswell! Sorry for the late reply. I didn’t get notified of these reponses!

Thanks for the tip about Space.World. To be honest, I don’t understand what it means but attaching it to the code got me closer to what I was after:

	//rotate

if(Input.GetKey("e"))
{
transform.Rotate(Vector3.up * cameraSpeed * Time.deltaTime, Space.World); 
}

if(Input.GetKey ("q"))
{
transform.Rotate(Vector3.down * cameraSpeed * Time.deltaTime, Space.World); 
}			

I have three questions now though:

  1. I still couldn’t get the camera to rotate properly without using the above code. Is this because we were trying achieve different types of rotations? I do not want the camera to tilt in anyway. Just to rotate on the Y axis.
  2. how do you stop the camera from the blurring the terrain when it moves?
  3. if anyone can go into more detail about how to rotate the camera around a central point I will be very grateful.