Skip to content

Releases: Cysharp/LogicLooper

1.6.0

02 May 08:45
c277f50
Compare
Choose a tag to compare

What's Changed

  • Adopt to .NET 8 by @mayuki in #32
  • LogicLooper.Current also returns an instance when running in ManualLogicLooper by @mayuki in #33

Housekeeping

  • ci: add depndabot.yaml to update github-actions by @guitarrapc in #26
  • Bump actions/upload-artifact from 2 to 4 by @dependabot in #30
  • Bump technote-space/toc-generator from 2.4.0 to 4.3.1 by @dependabot in #29
  • Bump peaceiris/actions-gh-pages from 3 to 4 by @dependabot in #28
  • Bump actions/checkout from 3 to 4 by @dependabot in #27
  • ci: change upload-artifact & download-artifact to Cysharp/Actions by @guitarrapc in #31

New Contributors

Full Changelog: 1.5.0...1.6.0

Ver.1.5.0

14 Feb 02:36
849cf57
Compare
Choose a tag to compare

What's Changed

  • ci: use setup-dotnet default dotnet version by @guitarrapc in #23
  • ci: Cysharp/Actions/.github/workflows/create-release.yaml by @guitarrapc in #24
  • Add ILogicLooper.CurrentFrame property by @mayuki in #25

Full Changelog: 1.4.0...1.5.0

Ver.1.4.0

20 Nov 07:28
1993658
Compare
Choose a tag to compare

What's Changed

  • Make possible to override the target fps for each loop action. by @mayuki in #21

Full Changelog: 1.3.0...1.4.0

Ver.1.3.0

04 Aug 02:49
7325daf
Compare
Choose a tag to compare

What's Changed

Full Changelog: 1.2.0...1.3.0

Ver.1.2.0

02 Aug 05:41
554ebfa
Compare
Choose a tag to compare

What's Changed

  • Adopt to .NET 7 by @mayuki in #17
  • Add experimental support for async-aware loop action by @mayuki in #18
  • Use the high-resolution timer on Windows by @mayuki in #19

Full Changelog: 1.1.0...1.2.0

1.1.0

18 Oct 08:50
646a466
Compare
Choose a tag to compare

Introduce ManualLogicLooper

If you want to write unit tests with LogicLooper or update frames manually, you can use ManualLogicLooper / ManualLogicLooperPool.

var looper = new ManualLogicLooper(60.0); // `ElapsedTimeFromPreviousFrame` will be fixed to `1000 / FrameTargetFrameRate`.
var count = 0;
var t1 = looper.RegisterActionAsync((in LogicLooperActionContext ctx) =>
{
    count++;
    return count != 3;
});
looper.Tick(); // Update frame
Console.WriteLine(count); // => 1
looper.Tick(); // Update frame
Console.WriteLine(count); // => 2
looper.Tick(); // Update frame (t1 will be completed)
Console.WriteLine(count); // => 3
looper.Tick(); // Update frame (no action)
Console.WriteLine(count); // => 3

What's Changed

  • Add ManualLogicLooper in #12
  • Update documents in #13
  • Update TargetFrameworks in #14

Full Changelog: 1.0.2...1.1.0

1.0.2

18 Mar 08:06
c1dc9d6
Compare
Choose a tag to compare

Changes

Fixes

  • #3 ElapsedTimeFromPreviousFrame returns an incorrect value.

Notes

  • #3 Re-enable unit tests to run on CI and fix some tests.

1.0.1

17 Mar 10:48
0890a5b
Compare
Choose a tag to compare

Changes

Fixes

  • #2 Update actions are not called at expected intervals on non-Windows.