public static Quaternion Euler(Vector3 eulerAngle) { //角度转弧度 eulerAngle = Mathf.Deg2Rad(eulerAngle); float cX = (float)Math.Cos(eulerAngle.x / 2.0f); float sX = (float)Math.Sin(eulerAngle.x / 2.0f); float cY = (float)Math.Cos(eulerAngle.y / 2.0f); float sY = (float)Math.Sin(eulerAngle.y / 2.0f); float cZ = (float)Math.Cos(eulerAngle.z / 2.0f); float sZ = (float)Math.Sin(eulerAngle.z / 2.0f); Quaternion qX = new Quaternion(sX, 0, 0, cX); Quaternion qY = new Quaternion(0, sY, 0, cY); Quaternion qZ = new Quaternion(0, 0, sZ, cZ); Quaternion q = (qY * qX) * qZ; return(q); }