コード例 #1
0
    void OnEnable()
    {
        triangleHandle = new List <GameObject>();
        if (rigidBody == null)
        {
            rigidBody = GetComponent <Rigidbody>();
        }

        if (editMesh == null)
        {
            editMesh = GetComponent <EditMesh>();
        }

        if (!editMesh.enabled)
        {
            editMesh.enabled = true;
        }

        int triangle_count = editMesh.triangleCount;

        for (int i = 0; i < triangle_count; i++)
        {
            GameObject   triangle = new GameObject("triangle_handle");
            GameObject[] vertices = editMesh.GetTriangleVertices(i);
            triangle.transform.parent = this.transform;

            FaceGizmos faceGizmos = triangle.AddComponent <FaceGizmos>();
            faceGizmos.OnHitSomething += new HitEventHandler(DetectFaceNormal);
            faceGizmos.Initialize(vertices, rayLength);
            triangleHandle.Add(triangle);
        }

        //assign init value
        _oldRayLength = rayLength;
    }
コード例 #2
0
 public override void OnInspectorGUI()
 {
     DrawDefaultInspector();
     editMesh = target as EditMesh;
     if (GUILayout.Button("Reset"))
     {
         editMesh.Reset();
     }
     if (editMesh.isCloned)
     {
         if (GUILayout.Button("Subdivide"))
         {
             editMesh.clonedMesh.Subdivide();
         }
     }
 }
コード例 #3
0
 void OnSceneGUI()
 {
     editMesh = target as EditMesh;
     EditMesh();
 }