public void SetSubdivide(int subdivide) { this.subdivide = subdivide; int subCount = Bars.Count * (subdivide - 1); while (Subs.Count < subCount) { Subs.Add(Instantiate(SubPrototype, contentRectTrans).GetComponent <RectTransform>()); } while (Subs.Count > subCount) { Destroy(Subs[0].gameObject); Subs.RemoveAt(0); } for (int i = 0; i < Bars.Count; i++) { for (int j = 0; j < subdivide - 1; j++) { Subs[i * (subdivide - 1) + j].anchoredPosition = new Vector2(0, rectTrans.rect.height / visibleDuration * (i * beatDuration + (j + 1) * (beatDuration / subdivide))); } } }