void EndUpdate() { FramePhase = FramePhase.end; CodeHelper.invokeEndFrame.InvokeAll(); UnityEndUpdateMethods?.Invoke(); OnUnityEndUpdateMethods?.Invoke(); OnUnityEndUpdateMethods = null; }
void Update() { PreUpdate(); FramePhase = FramePhase.middle; CodeHelper.invokeNextFrame.InvokeAll(); UnityUpdateMethods?.Invoke(); OnUnityUpdateMethods?.Invoke(); OnUnityUpdateMethods = null; }
void PreUpdate() { InputHelper.inputInfoFromKey.ForEach(thisPair => thisPair.Value.UpdateInfo()); FramePhase = FramePhase.pre; CodeHelper.invokeBeforeFrame.InvokeAll(); //EVERTHING THATS NOT INTERNAL SHOULD BE AFTER THIS LINE UnityPreUpdateMethods?.Invoke(); OnUnityPreUpdateMethods?.Invoke(); OnUnityPreUpdateMethods = null; }
void LateUpdate() { FramePhase = FramePhase.late; }
TimeSpan _rawDuration(FramePhase phase) => TimeSpan.FromMilliseconds(_timestamps[(int)phase] / 1000.0);
public long timestampInMicroseconds(FramePhase phase) => _timestamps[(int)phase];