UniRate Versions Save

Unity plugin to easily manage the application frame rate and rendering interval. Reducing battery power consumption and device heat, especially on mobile platforms.

v3.0.1

7 months ago

Changed

  • Using new UnityEngine.Device.Application api.
  • Using new UnityEngine.Device.Screen api.
  • Changed RateManager default update rate mode to ApplicationTargetFrameRate, default minimum update rate to 20 and default maximum render interval to 10.
  • Changed rate request components default delay seconds to stop requests to 1.

v3.0.0

1 year ago

Added

  • New editor tracker window to make it easy to debug requests lifecycle. It's accessible through Window > UniRate Tracker.

Changed

  • Refactored rates/interval management to allow easy testability.
  • Breaking: RateManager.Instance.UpdateRate now returns the update rate controller instance instead of the current update rate per seconds value, which is now accessible through RateManager.Instance.UpdateRate.Current.
  • Breaking: RateManager.Instance.FixedUpdateRate now returns the fixed update rate controller instance instead of the current fixed update rate per seconds value, which is now accessible through RateManager.Instance.FixedUpdateRate.Current.
  • Breaking: RateManager.Instance.RenderInterval now returns the render interval controller instance instead of the current render interval value, which is now accessible through RateManager.Instance.RenderInterval.Current.

Deprecated

  • RateManager.Instance.UpdateRateMode is now deprecated, use RateManager.Instance.UpdateRate.Mode instead.
  • RateManager.Instance.MinimumUpdateRate is now deprecated, use RateManager.Instance.UpdateRate.Minimum instead.
  • RateManager.Instance.TargetUpdateRate is now deprecated, use RateManager.Instance.UpdateRate.Target instead.
  • RateManager.Instance.UpdateRateModeChanged is now deprecated, use RateManager.Instance.UpdateRate.ModeChanged instead.
  • RateManager.Instance.UpdateRateChanged is now deprecated, use RateManager.Instance.UpdateRate.CurrentChanged instead.
  • RateManager.Instance.MinimumFixedUpdateRate is now deprecated, use RateManager.Instance.FixedUpdateRate.Minimum instead.
  • RateManager.Instance.TargetFixedUpdateRate is now deprecated, use RateManager.Instance.FixedUpdateRate.Target instead.
  • RateManager.Instance.FixedUpdateRateChanged is now deprecated, use RateManager.Instance.FixedUpdateRate.CurrentChanged instead.
  • RateManager.Instance.TargetFixedUpdateRateChanged is now deprecated, use RateManager.Instance.FixedUpdateRate.TargetChanged instead.
  • RateManager.Instance.MaximumRenderInterval is now deprecated, use RateManager.Instance.RenderInterval.Maximum instead.
  • RateManager.Instance.TargetRenderInterval is now deprecated, use RateManager.Instance.RenderInterval.Target instead.
  • RateManager.Instance.RenderIntervalChanged is now deprecated, use RateManager.Instance.RenderInterval.CurrentChanged instead.
  • RateManager.Instance.TargetRenderIntervalChanged is now deprecated, use RateManager.Instance.RenderInterval.TargetChanged instead.
  • RateManager.Instance.RenderRate is now deprecated, use RateManager.Instance.RenderInterval.CurrentRenderRate instead.
  • RateManager.Instance.WillRender is now deprecated, use RateManager.Instance.RenderInterval.WillRender instead.
  • RateManager.Instance.IsRenderIntervalSupported is now deprecated, use RateManager.Instance.RenderInterval.IsSupported instead.
  • RateManager.Instance.RequestUpdateRate(int) is now deprecated, use RateManager.Instance.UpdateRate.Request(int) instead.
  • RateManager.Instance.RequestFixedUpdateRate(int) is now deprecated, use RateManager.Instance.FixedUpdateRate.Request(int) instead.
  • RateManager.Instance.RequestRenderInterval(int) is now deprecated, use RateManager.Instance.RenderInterval.Request(int) instead.

Fixed

  • Fixed ArgumentNullException when application is quitting (#2).

v2.2.2

2 years ago

Fixed

  • Fixed compilation error on RateManager for Unity versions below 2019.3 (#1), by @Chrisdbhr.

v2.2.1

3 years ago

Fixed

  • RateRequestAnimatorComponent was not evaluating correctly if Animator states are playing.

v2.2.0

3 years ago

Added

  • RateRequestAnimationComponent to activate requests while an Animation component is playing.
  • RateRequestAnimatorComponent to activate requests while an Animator component is playing.

Fixed

  • DelaySecondsToStopRequests on requests components was not calculating delay since 'should stop requests' time.
  • Wrong release years on changelog.md file.

v2.1.2

3 years ago

Fixed

  • Changes to RateDebug.ScreenDataBackgroundColor sometimes had no effect when application was running on device.
  • Legacy code not being imported correctly by Unity because assembly definition file was missing.

v2.1.1

3 years ago

Fixed

  • package.json wrong version.

v2.1.0

3 years ago

Added

  • Customize background color, text color and font size on RateDebug screen data.
  • Enable/disable verbose screen data on RateDebug.
  • RateManager.HasInstance to check if the instance exists without creating it.

Changed

  • Renamed Debugger to RateDebug.
  • Renamed LogLevel to RateLogLevel.
  • Increased RateDebug.LogLevel default value.

v2.0.0

3 years ago

v1.1.0

5 years ago