public void AddPortal(LevelGridNode n1, LevelGridNode n2, List<Vector3> left, List<Vector3> right)
        {
            if (n1 == n2) {
                return;
            }

            int i1 = n1.GetIndex ();
            int i2 = n2.GetIndex ();
            int x1 = i1 % width;
            int x2 = i2 % width;
            int z1 = i1 / width;
            int z2 = i2 / width;

            Vector3 n1p = (Vector3)n1.position;
            Vector3 n2p = (Vector3)n2.position;

            int diffx = Mathf.Abs (x1-x2);
            int diffz = Mathf.Abs (z1-z2);

            if (diffx > 1 || diffz > 1) {
                //If the nodes are not adjacent to each other

                left.Add (n1p);
                right.Add (n1p);
                left.Add (n2p);
                right.Add (n2p);
            } else if ((diffx+diffz) <= 1){
                //If it is not a diagonal move

                Vector3 dir = n2p - n1p;
                //dir = dir.normalized * nodeSize * 0.5F;
                dir *= 0.5F;
                Vector3 tangent = Vector3.Cross (dir.normalized, Vector3.up);
                tangent *= /*tangent.normalized * */nodeSize * 0.5F;

                left.Add (n1p + dir - tangent);
                right.Add (n1p + dir + tangent);
            } else {
                //Diagonal move

                Vector3 dir = n2p - n1p;
                Vector3 avg = (n1p + n2p) * 0.5F;
                Vector3 tangent = Vector3.Cross (dir.normalized, Vector3.up);

                tangent *= nodeSize * 0.5F;

                left.Add (avg - tangent);
                right.Add (avg + tangent);

                /*Node t1 = nodes[z1 * width + x2];
                Node t2 = nodes[z2 * width + x1];
                Node target = null;

                if (t1.walkable) {
                    target = t1;
                } else if (t2.walkable) {
                    target = t2;
                }

                if (target == null) {
                    Vector3 avg = (n1p + n2p) * 0.5F;

                    left.Add (avg);
                    right.Add (avg);
                } else {
                    AddPortal (n1,(LevelGridNode)target,left,right);
                    AddPortal ((LevelGridNode)target,n2,left,right);
                }*/
            }
        }