我尝试了解对象及其网格的旋转/方向。让我解释一下,我在Unity中导入了一些OBJ。这是相同的零件,但位置不同(从同一出口商出口)。 对于职位来说,这没什么大不了的,但是对于轮换来说,这不是一个相同的问题。
这两个螺母的例子。是同一对象,但旋转不同:
在我的Unity变换中,所有值都是position(0,0,0),rotation(0,0,0),scale(1、1,1)。 因此,我尝试使用此代码来使同一对象的法线旋转:
Vector3 normalOne = ObjectOne.GetComponent<MeshFilter>().sharedMesh.normals[0];
Vector3 normalTwo = ObjectTwo.GetComponent<MeshFilter>().sharedMesh.normals[0];
Quaternion q = Quaternion.FromToRotation(normalOne, normalTwo);
ObjectOne.transform.rotation = q * ObjectOne.transform.rotation;
有人能做到这一点吗?
谢谢您的帮助。