예제 #1
0
        private IEnumerator ExecuteOnUpdate(IUniRoutine routine, RoutineType routineType)
        {
            var awaiter = GetRoutineAwaiter(routineType);

            while (true)
            {
                routine.Update();
                //wait time before next update
                yield return(awaiter);
            }
        }
예제 #2
0
        private void ExecuteRoutine(
            IUniRoutine routine,
            RoutineType routineType)
        {
            if (routineType == RoutineType.LateUpdate)
            {
                AddLateRoutine(routine);
                return;
            }

            StartCoroutine(ExecuteOnUpdate(routine, routineType));
        }
예제 #3
0
 private void AddLateRoutine(IUniRoutine routine)
 {
     _lateUpdateRoutines.Add(routine);
 }