- Home /
Make a child camera's rotation and relative position to parent static, rather than having it completely move with the parent
I apologize if this has already been asked, but I searched around for a while and couldn't find anything.
I have a cube with a child camera, which is positioned behind the cube, just like your average third person over-the-shoulder camera.
My cube is moved by rigidbody.addforce
. My problem, however, is that when the cube is rolled forward, the camera maintains its local position and rotation, thus resulting in the camera rotating 90 degrees along with the cube and still looking at the same side it was originally. Which, when rotating results in great difficulty as far as seeing what's happening on the screen goes. I don't want that.
I want the camera to adjust its rotation and position to maintain the same over-the-shoulder view while the cube can roll and fling as much as it'd like.
I've tried:
- attaching a rigidbody to the camera and adjusting the values to be as little of an interference as possible and freeze all its constraints. Resulted in nothing but very wonky movement for the cube.
- using the snippet found in this guide to prevent the camera from rotating itself with the cube, which worked. It doesn't rotate anymore, but still "folds" with the cube when it rolls.
I'll include the code for the cube's forward movement and the camera's rotation fix, as well as an image to try and illustrate what I want to achieve.
//Rotation fix
Quaternion rotation;
void Awake()
{
rotation = transform.rotation;
}
void LateUpdate()
{
transform.rotation = rotation;
}
//Forward movement
public float spd;
Rigidbody rb;
// Use this for initialization
void Start () {
rb = GetComponent<Rigidbody>();
}
// Update is called once per frame
void FixedUpdate () {
if (Input.GetKey(KeyCode.W))
{
rb.AddForce(Vector3.forward * spd);
}
}
Answer by jchester07 · Oct 26, 2017 at 03:30 AM
If you followed this tutorial: Roll A Ball You'll be able to solve that problem. You should not make the camera a child of the cube. Make a script that follows the cube.
Your answer
Follow this Question
Related Questions
Jitter on Object with Rigidbody 0 Answers
Collision with camera inspection target 0 Answers
Very jerky camera movement with rigidbody 1 Answer
Camera twitching problem 0 Answers
Camera Clips though Walls 1 Answer