CubismUpdateExecutionOrder.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /**
  2. * Copyright(c) Live2D Inc. All rights reserved.
  3. *
  4. * Use of this source code is governed by the Live2D Open Software license
  5. * that can be found at https://www.live2d.com/eula/live2d-open-software-license-agreement_en.html.
  6. */
  7. using System.Collections.Generic;
  8. namespace Live2D.Cubism.Framework
  9. {
  10. /// <summary>
  11. /// Cubism update order.
  12. /// </summary>
  13. public static class CubismUpdateExecutionOrder
  14. {
  15. public static readonly int CubismRepeatController = 50;
  16. public static readonly int CubismFadeController = 100;
  17. public static readonly int CubismParameterStoreSaveParameters = 150;
  18. public static readonly int CubismPoseController = 200;
  19. public static readonly int CubismExpressionController = 300;
  20. public static readonly int CubismEyeBlinkController = 400;
  21. public static readonly int CubismMouthController = 500;
  22. public static readonly int CubismHarmonicMotionController = 600;
  23. public static readonly int CubismLookController = 700;
  24. public static readonly int CubismPhysicsController = 800;
  25. public static readonly int CubismRenderController = 10000;
  26. public static readonly int CubismMaskController = 10100;
  27. public static readonly int CubismParametersInspector = int.MaxValue;
  28. public static readonly int CubismPartsInspector = int.MaxValue;
  29. public static void SortByExecutionOrder(List<ICubismUpdatable> updatables)
  30. {
  31. updatables.Sort(CompareByExecutionOrder);
  32. }
  33. private static int CompareByExecutionOrder(ICubismUpdatable a, ICubismUpdatable b)
  34. {
  35. return a.ExecutionOrder - b.ExecutionOrder;
  36. }
  37. }
  38. }