Vixen
02b45cc4
csharp
public enum ResumePoint

Where in a frame a suspended coroutine comes back.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

A small enum of its own rather than SystemPhase, because these are the points a coroutine may be resumed at, and that is a shorter list than the points a system may run at. A resume point costs a drain call in the frame whether or not anything is waiting on it, and points nobody can express a wait against would be paying that for nothing. UniTask draws the same line, and for the same reason: its PlayerLoopTiming is not Unity's PlayerLoop.

The four here are the four Unity's coroutines actually offer — yield return null, a late variant, WaitForFixedUpdate and WaitForEndOfFrame — because those are the four questions gameplay code asks. More can be added; each one is a system and a list.

Fields and properties (4)

  • Update

    With the rest of the frame's game logic, in SystemPhase.Update.

  • LateUpdate

    After everything has moved, in SystemPhase.LateUpdate.

  • FixedStep

    At a fixed simulation step, in SystemPhase.FixedUpdate. Ticks with the steps, not with the frames, so a frame that owes three steps resumes a waiting coroutine three times and one that owes none resumes it not at all.

  • EndOfFrame

    After the frame has been submitted, in SystemPhase.PostRender.

Used by (11)

  • BehaviorVixen.Engine
  • CoroutineAllocationTestsVixen.Engine.Tests
  • CoroutineAwaitableVixen.Engine
  • CoroutineEndOfFrameSystemVixen.Engine
  • CoroutineFixedStepSystemVixen.Engine
  • CoroutineLateUpdateSystemVixen.Engine
  • CoroutineSchedulerVixen.Engine
  • CoroutineTestsVixen.Engine.Tests
  • CoroutineUpdateSystemVixen.Engine
  • EntryVixen.Engine
  • SequencerVixen.Engine.Tests