2015-05-04 98 views
0

我在網格中的所有頂點上創建了一個Gizmos,但是當我這樣做時,對象是直線上下的,但是這個Gizmos是橫向的。旋轉樞軸點周圍的對象

正如你可以在此看到圖像,字符是直上直下,但小玩意旋轉90度,這樣我怎麼能既

答: 導入網格的正確方法。

B: 旋轉小物件90度,以便它們匹配的字符。

Gizmos

下面是我在用繪製的小玩意:

[RequireComponent(typeof(MeshFilter))] 
public class Creator : MonoBehaviour { 

    public Vector3[] vertices; 

    public Mesh mesh; 

    void OnDrawGizmosSelected() { 
     mesh = GetComponent<MeshFilter>().sharedMesh; 
     if (vertices == null || vertices.Length == 0) { 
      vertices = mesh.vertices; 
     } else { 
      mesh.vertices = vertices; 
     } 
     Vector3 lp = transform.position; 
     foreach (Vector3 v in vertices) { 
      Vector3 p = lp - v; 

      Gizmos.color = Color.yellow; 
      Gizmos.DrawCube(p, new Vector3(0.02f, 0.02f, 0.02f)); 
     } 
     mesh.RecalculateBounds(); 
    } 
} 

回答

1

我認爲它不是你點的是旋轉的,但該軸不排隊。 嘗試更換軸這樣的:

foreach (Vector3 v in vertices) { 
      Vector3 p = lp - v; 

      Gizmos.color = Color.yellow; 
      Gizmos.DrawCube(new Vector3(p.x, p.z, p.y), new Vector3(0.02f, 0.02f, 0.02f)); 
     } 

注:我換了Y和Z軸。如果這不是正確的交換嘗試不同的組合。

+1

太棒了!我不得不使用'-p.z'而不是積極的,但它的工作原理! –