public void CreateLine(Pair2 pair, Vector3 transformScale, float lineWidth, float z = 0f) { float xuv0 = 0; float xuv1 = 1f - xuv0; float yuv0 = 0; float yuv1 = 1f - yuv0; float size = lineWidth / 6; float rot = pair.a.Atan2(pair.b); Vector2 A1 = pair.a; Vector2 A2 = pair.a; Vector2 B1 = pair.b; Vector2 B2 = pair.b; Vector2 scale = new Vector2(1f / transformScale.x, 1f / transformScale.y); A1 = A1.Push(rot + pi2, size, scale); A2 = A2.Push(rot - pi2, size, scale); B1 = B1.Push(rot + pi2, size, scale); B2 = B2.Push(rot - pi2, size, scale); AddVertice(new Vector3(B1.x, B1.y, z)); AddVertice(new Vector3(A1.x, A1.y, z)); AddVertice(new Vector3(A2.x, A2.y, z)); AddVertice(new Vector3(B2.x, B2.y, z)); AddUV(new Vector2(xuv1 / 3, yuv1)); AddUV(new Vector2(1 - xuv1 / 3, yuv1)); AddUV(new Vector2(1 - xuv1 / 3, yuv0)); AddUV(new Vector2(yuv1 / 3, xuv0)); Vector2 A3 = A1; Vector2 A4 = A1; A3 = A1; A4 = A2; A1 = A1.Push(rot, size, scale); A2 = A2.Push(rot, size, scale); AddVertice(new Vector3(A3.x, A3.y, z)); AddVertice(new Vector3(A1.x, A1.y, z)); AddVertice(new Vector3(A2.x, A2.y, z)); AddVertice(new Vector3(A4.x, A4.y, z)); AddUV(new Vector2(xuv1 / 3, yuv1)); AddUV(new Vector2(xuv0, yuv1)); AddUV(new Vector2(xuv0, yuv0)); AddUV(new Vector2(yuv1 / 3, xuv0)); A1 = B1; A2 = B2; B1 = B1.Push(rot - Mathf.PI, size, scale); B2 = B2.Push(rot - Mathf.PI, size, scale); AddVertice(new Vector3(B1.x, B1.y, z)); AddVertice(new Vector3(A1.x, A1.y, z)); AddVertice(new Vector3(A2.x, A2.y, z)); AddVertice(new Vector3(B2.x, B2.y, z)); AddUV(new Vector2(xuv0, yuv1)); AddUV(new Vector2(xuv1 / 3, yuv1)); AddUV(new Vector2(xuv1 / 3, yuv0)); AddUV(new Vector2(yuv0, xuv0)); AddTriangle(tris + 0); AddTriangle(tris + 1); AddTriangle(tris + 2); AddTriangle(tris + 2); AddTriangle(tris + 3); AddTriangle(tris + 0); AddTriangle(tris + 4); AddTriangle(tris + 5); AddTriangle(tris + 6); AddTriangle(tris + 6); AddTriangle(tris + 7); AddTriangle(tris + 4); AddTriangle(tris + 8); AddTriangle(tris + 9); AddTriangle(tris + 10); AddTriangle(tris + 10); AddTriangle(tris + 11); AddTriangle(tris + 8); tris += 12; }