CubismUpdateExecutionOrder.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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 CubismFadeController = 100;
  16. public static readonly int CubismParameterStoreSaveParameters = 150;
  17. public static readonly int CubismPoseController = 200;
  18. public static readonly int CubismExpressionController = 300;
  19. public static readonly int CubismEyeBlinkController = 400;
  20. public static readonly int CubismMouthController = 500;
  21. public static readonly int CubismHarmonicMotionController = 600;
  22. public static readonly int CubismLookController = 700;
  23. public static readonly int CubismPhysicsController = 800;
  24. public static readonly int CubismRenderController = 10000;
  25. public static readonly int CubismMaskController = 10100;
  26. public static void SortByExecutionOrder(List<ICubismUpdatable> updatables)
  27. {
  28. updatables.Sort(CompareByExecutionOrder);
  29. }
  30. private static int CompareByExecutionOrder(ICubismUpdatable a, ICubismUpdatable b)
  31. {
  32. return a.ExecutionOrder - b.ExecutionOrder;
  33. }
  34. }
  35. }