- Home /
Camera Rotation Script
Hey UnityAnswers,
I'm looking for some advice on some code I have. Basically I have 4 cubes, each being a different colour (Red, Blue, Green and Yellow). In the center is an empty gameObject, with the mainCamera parented. When the gameObject rotates, so does the mainCamera. Right now I have input controls to rotate the empty gameObject either left or right, showing each of the cubes.
Here is what my scene looks like just for visualization : http://imgur.com/79ibA
What I'm trying to get is a smooth curve between 90 degree intervals. I don't want it to change like a light switch. I'm not a good programmer, but I'm thinking it involves either for loops, time.Deltatime or transform.Rotate. Let know if you can help me out. The code I'm working on is below.
var goodDegs = 30; // degrees per second
var badDegs = -30; // degrees per second
function Update () {
if (Input.GetKeyDown("left")){
for (var n = 0; n < 90; n++)
{
transform.Rotate(0, goodDegs * Time.deltaTime, 0);
}
}
if (Input.GetKeyDown("right")){
for (var m = 0; m < 90; m++)
{
transform.Rotate(0, badDegs * Time.deltaTime, 0);
}
}
}
or an older version:
var rotationPositive = 90;
var rotationNegative = -90;
function Update () {
if (Input.GetKeyDown("left"))
{
transform.Rotate(Time.deltaTime, rotationPositive, 0);
}
if (Input.GetKeyDown("right"))
{
transform.Rotate(Time.deltaTime, rotationNegative, 0);
}
}
Answer by DaveA · May 20, 2011 at 04:13 AM
Have a look at this: http://unity3d.com/support/documentation/ScriptReference/Mathf.MoveTowardsAngle.html
You'll want to set a 'target rotation degrees' OnKeyDown, rather than using a for loop. Anything you do in one frame will all happen in that frame, so you need to spread it across frames. Time.deltaTime is your friend.
Answer by maaz0011 · Sep 21, 2017 at 11:34 AM
public class swipebutton : MonoBehaviour { public Camera cam;
void Update()
{
cam.transform.Rotate(Vector3.up, 20.0f * Time.deltaTime);
}
}
Your answer
Follow this Question
Related Questions
Need help on the 3ds max style camera control 0 Answers
Quaternion Slerp Sanity Check 1 Answer
Orthographic Camera rotation on world y-axis but also rotates z-axis slightly? 0 Answers
how to clamp y axis with Quaternion.Euler in unity 1 Answer
How to change object direction when Camera Rotates 0 Answers