예제 #1
0
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        protected virtual void UpdateTickMeshes()
        {
            HoverFillSlider fillSlider = gameObject.GetComponent <HoverFillSlider>();

            if (fillSlider.SegmentInfo == null)
            {
                return;
            }

            List <SliderUtil.SegmentInfo> tickInfoList = fillSlider.SegmentInfo.TickInfoList;

            for (int i = 0; i < tickInfoList.Count; i++)
            {
                UpdateTickMesh(fillSlider.Ticks[i], tickInfoList[i]);
            }
        }
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        protected virtual void UpdateFillMeshes()
        {
            HoverFillSlider fillSlider = gameObject.GetComponent <HoverFillSlider>();

            if (fillSlider.SegmentInfo == null)
            {
                return;
            }

            List <SliderUtil.SegmentInfo> segInfoList = fillSlider.SegmentInfo.SegmentInfoList;
            int   segCount = HoverFillSlider.SegmentCount;
            int   segIndex = 0;
            float startPos = segInfoList[0].StartPosition;
            float endPos   = segInfoList[segInfoList.Count - 1].EndPosition;

            for (int i = 0; i < segInfoList.Count; i++)
            {
                SliderUtil.SegmentInfo segInfo = segInfoList[i];

                if (segInfo.Type != SliderUtil.SegmentType.Track)
                {
                    continue;
                }

                UpdateUsedFillMesh(fillSlider.GetChildMesh(segIndex++), segInfo, startPos, endPos);
            }

            for (int i = 0; i < segCount; i++)
            {
                HoverMesh segMesh = fillSlider.GetChildMesh(i);

                if (i >= segIndex)
                {
                    UpdateUnusedFillMesh(segMesh);
                }

                ActivateFillMesh(segMesh);
            }
        }