Question by
pizzapocalypse · Jul 01, 2018 at 12:55 PM ·
c#camerarotation
Camera rotation and zooming
I'm trying to rotate my main camera using keyboard and scroll using the mouse wheel. Just rotation or just zooming work fine, but when you do both the camera starts rotating along the x, y, and z axes instead of just the y.
//Rotate clockwise
if (Input.GetKey(KeyCode.Q))
{
Camera.main.transform.Rotate(new Vector3(0, 2, 0));
}
//Rotate counterclockwise
else if (Input.GetKey(KeyCode.E))
{
Camera.main.transform.Rotate(new Vector3(0, -2, 0));
}
//Scroll down and zoom out
if ((Input.GetAxis("Mouse ScrollWheel") < 0f) && (Camera.main.transform.position.y < 15))
{
Camera.main.transform.Translate(new Vector3(0, 1, 0));
Camera.main.transform.Rotate(new Vector3(3, 0, 0));
}
//Scroll up and zoom in
if ((Input.GetAxis("Mouse ScrollWheel") > 0f) && (Camera.main.transform.position.y > 2))
{
Camera.main.transform.Translate(new Vector3(0, -1, 0));
Camera.main.transform.Rotate(new Vector3(-3, 0, 0));
}
Comment
Best Answer
Answer by pizzapocalypse · Jul 01, 2018 at 06:22 PM
I figured it out, I needed to use a camera rig instead of moving the camera directly.