示例#1
0
    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)));
            }
        }
    }