2016-09-22 49 views
2

我有一个物体A和B.当我点击物体B时,A旋转到物体B(A面B)。 B不会面对A.我需要做的是: 当A面向B时,我需要A面对相反的方向。我有一个旋转的代码来看看B.如何旋转后面对相反的方向?旋转一个物体以面对相反的方向

Vector3 targetDirection = target - transform.position; 
float step = speed * Time.deltaTime; 
Vector3 newDirection = Vector3.RotateTowards (turretDome.transform.forward, targetDirection, step, 0.0F); 
turretDome.transform.rotation = Quaternion.LookRotation (newDirection); 

回答

3

你说的对象A已经面临物体B,所有你想要做的是逆对象A的后方向?

objectA.transform.rotation = Quaternion.Inverse(objectA.transform.rotation) 

但是让我们从你的例子假定turretDome为对象的,那么你可以这样做(否定的方向):

turretDome.transform.rotation = Quaternion.LookRotation (-newDirection); 

当然,这两个片段中不显示怎么理顺旋转,因为您似乎已经知道如何使用time.deltaTime。

只要你不确定,Quaternion.Lerp会帮你做到这一点