// Instantiates and adds a edge between to vertices private void CreateEdge(LedgeVertex from, LedgeVertex to, int edgeNum) { GameObject instance = Instantiate(Resources.Load("LedgeEdge", typeof(GameObject))) as GameObject; LedgeEdge instanceEdge = instance.GetComponent <LedgeEdge>(); instance.name = "LedgeEdge " + edgeNum; instanceEdge.VertexClosestToOrigin = from; instanceEdge.VertexFurthestFromOrigin = to; instance.transform.position = from.transform.position + (to.transform.position - from.transform.position) * 0.5f; instance.transform.parent = from.transform; from.EdgeFurthestFromOrigin = instanceEdge; to.EdgeClosestToOrigin = instanceEdge; m_target.AddEdge(instanceEdge); }