I have doors in the house environment that i am making but not all of them are on the same orientation!
I already made the correct animation to some doors … but if i assign the same animation to the others it is a mess since they have not the same origin point on the Y axis and for file weight (WebGL) i don’t want to have 20 different animations! xO
Can somebody help me making a script for modifying the object rotation? so the door physically rotates to a certain degree? =)
Thanks for any help!! ^^
Here is something you can get to work for rotation.
using UnityEngine;
using System.Collections;
public class MyRotation : MonoBehaviour
{
public float Yrot;
Vector3 eulers;
void Start(){
eulers = transform.rotation.eulerAngles;
StartCoroutine(rotateStuff(eulers));
}
IEnumerator rotateStuff(Vector3 eulers){
float t = 0;
float targetRot = 0;
while(targetRot < Yrot){
t += Time.deltaTime;
targetRot = Mathf.Lerp(targetRot,Yrot,t*0.5f);
transform.rotation = Quaternion.Euler(eulers.x,targetRot,eulers.z);
yield return null;
}
}
}
You need to assign this script to all object you want to rotate and add the value to slot “YRot” to desired rotation. (Assuming default rotation axis is Y).
If you want to know further here is scripting ref :
Good luck