- Home /
Child versus Parent rotations
I am working on an animation that has main object animated along a path. That comes in just fine and is working well. The Main object has a child that I have put the following script on...
// Smoothly tilts a transform towards a target rotation.
var smooth = 2.0;
var tiltAngle = 30.0;
var myParent : Transform;
function Update () {
var tiltAroundZ = Input.GetAxis("Horizontal") * tiltAngle;
var target = Quaternion.Euler (0, 0, tiltAroundZ);
// Dampen towards the target rotation transform.rotation = Quaternion.Slerp(transform.rotation, target,Time.deltaTime * smooth);
}
The issue is that now my child object ignores that it is the child of the Main animated object. At least rotationally.
How can I get my child object to still behave as a child, while controlling the local rotational z roll of the object with my script?
Answer by The_r0nin · Dec 09, 2010 at 09:21 PM
You are setting the rotation of the transform (which is the global rotation) and not localRotation. Change your code to transform.localRotation and see if that is what you want.
Answer by Michael Neely · Dec 11, 2010 at 12:59 PM
After a few great suggestions, adding this to the beginning of my Update function keeps things oriented properly. Not completely certain why, but this is better.
transform..rotation = Quaternion.Euler(lockPos, transform.rotation.eulerAngles.y,transform.rotation.eulerAngles.x);
Your answer
Follow this Question
Related Questions
Make a simple tree 1 Answer
Pointing a child at an object using its parents rotation 1 Answer
How to fix Child Object Rotations.? 1 Answer
force child rotation to zero? 2 Answers
how to apply overall rotation to collection of rotated objects 0 Answers