Repository navigation
Releases: Lucas7yoshi/TomodachiDrawer
Release list
0.9.6 - Hotfixes for Buckets
Silly me thought i hit the button to publish 0.9.5... I did not, so this is both 0.9.5 and 0.9.6
- Added a optimization to export times when using bucket fills, the program would normally compare the with bucket/without bucket time to draw which would require processing a layer for 5s+ twice for full images, it now skips this comparison if it is pretty certain buckets will be quicker.
- Added telemetry to finetune the above optimization, it gives info on individual layers' performance (how long to export) but does not contain any information besides pixel counts of a colour on a layer. Your images are never shared, and you can still of course disable telemetry with no penalty whatsoever. This will be a temporary measure of telemetry.
- Hopeful fix for #195 reverting a line that i kinda did blind but may have come to bite through that issue.
- More uninteresting library updates.
- Fixed a overzealous error thing that was popping up in Sentry but I don't believe had any user facing impact (related to the tweak to preview updating less often for tweaking the colour limit for Arbitrary)
Full Changelog: 0.9.4...0.9.6
0.9.4 - Optimized (including Buckets)
This update is just some CPU/Memory optimizations and bits and bobs here and there. This is a tweak to 0.9.3 which was just that, but added some other stuff i missed before making that release.
Stuff
- Changed internal representations of instructions to be more CPU/Memory efficent, particularly for stuff that is timed (i.e, pretty much everything)
- Optimized some image processing logic to work with the Pixels as an array instead of fetching each pixel individually, should be quicker for some things
- Changed instruction delays from double to float for above optimizations
- Updated the first-start message to reflect the 0.9.0 addition of Bucket fills.
- Don't draw outlines for bucket fills if they are on the canvas edge (only works for full 256x256 inputs)
- Select the brush quicker when the selection is the brush size that we know we had prior (particularly helpful to speed up the paranoid solution to the bucket fill clicks)
This update was tested against a Switch 2 with a 1 hour drawing.
PRs
- Bump System.IO.Ports from 10.0.11 to 10.0.12 by @dependabot[bot] in #192
Full Changelog: 0.9.2...0.9.4
0.9.3 - Optimizations (but not for the buckets)
This update is just some CPU/Memory optimizations and bits and bobs here and there.
Stuff
- Changed internal representations of instructions to be more CPU/Memory efficent, particularly for stuff that is timed (i.e, pretty much everything)
- Optimized some image processing logic to work with the Pixels as an array instead of fetching each pixel individually, should be quicker for some things
- Changed instruction delays from double to float for above optimizations
- Updated the first-start message to reflect the 0.9.0 addition of Bucket fills.
Future stuff: Gonna try optimizing menu navigation in some contexts
This update was tested against a Switch 2 with a 1 hour drawing.
PRs
- Bump System.IO.Ports from 10.0.11 to 10.0.12 by @dependabot[bot] in #192
Full Changelog: 0.9.2...0.9.3
0.9.2 - Optimized Buckets
Full Changelog: 0.9.1...0.9.2
This update adds more intelligent logic for the bucket filling system, namely if another colour would already be acting as a border for a bucket fill, dont draw a useless line around it for the bucket fill zone, so it'll use whats already drawn. As well as some logic that orders colours to encourage this.
For more info on 0.9.0, see https://github.com/Lucas7yoshi/TomodachiDrawer/releases/tag/0.9.1
0.9.1 - Behold, buckets... hotfix. (Brought to you by Vinny, kinda)
Full Changelog: 0.9.0...0.9.1
This update fixes an issue in 0.9.0 caused by me thinking a c# feature worked in a way that it... didn't. Fixes #189
For nerds curious: C# has a "default" feature which will... pick the default for whatever it is you are using. However I thought this mean it picked the default value for a parameter, but it picks the default value for the data type. The result was that I had added some logic to extend the delays for when the bucket was selected, and for the case where it wasnt, i just did : default, thinking it would use the default 25ms delay, but instead it used the default for int, which is 0, which meant the inputs were not received by the game. Somehow in all my years of using C# i never made this realization, which would have been obvious had I looked at the docs page for it.
Anyway...
From 0.9.0
This update addresses the... known issues with the experimental bucket filling tool, which effectively draws outlines of areas then uses the bucket tool when it can. The primary issue was that the bucket tool causes lag because it seems like the game is for some reason calculating what the bucket would do if it were used at any point, causing moving it while selected to cause lag, which would cause desyncs (always on switch 1, rarely on switch 2)
The solution to this was to never move with the bucket tool selected, and when the bucket tool is selected, perform inputs much slower. This means between each point it bucket fills it has to change tools, which isnt ideal, so additional logic was also added that trashes using the bucket fill if it would just take longer than not using it.
This update is kinda brought to you by Vinny Vinesauce because by sheer chance I opened his stream to him using TomodachiDrawer to draw Saddam Hussein and it reminded me I wanted to finally finish it. Relevant link: https://youtu.be/8c6xcuJF-4o?t=1709
Future improvements
0.9.2 hopefully feature some further improvements, namely tightening up some delays on Switch 2, and HOPEFULLY removing the unnecessary outline drawing in bucket fill (Hard to explain, but some lines do not need drawn because the area the bucket would fill would include those anyway because of a already-drawn border.)
IF THERE ANY BUGS, OPEN A FRESH ISSUE
Or post in the discussion, or anywhere where I get sent emails (which is most places on this repo)
If this release has sizable issues that I did not encounter (I ran runs on Switch 1 and Switch 2) then this release MAY get pulled, if you encounter any major issues you can downgrade without much difficulty.
0.9.0 - Behold, buckets. (Brought to you by Vinny)
This update addresses the... known issues with the bucket filling tool, which effectively draws outlines of areas then uses the bucket tool when it can. The primary issue was that the bucket tool causes lag because it seems like the game is for some reason calculating what the bucket would do if it were used at any point, causing moving it while selected to cause lag, which would cause desyncs (always on switch 1, rarely on switch 2)
The solution to this was to never move with the bucket tool selected, and when the bucket tool is selected, perform inputs much slower. This means between each point it bucket fills it has to change tools, which isnt ideal, so additional logic was also added that trashes using the bucket fill if it would just take longer than not using it.
This update is kinda brought to you by Vinny Vinesauce because by sheer chance I opened his stream to him using TomodachiDrawer to draw Saddam Hussein and it reminded me I wanted to finally finish it. Relevant link: https://youtu.be/8c6xcuJF-4o?t=1709
Future improvements
0.9.1 (or 0.9.2 if theres issues that need addressed quickly) will hopefully feature some further improvements, namely tightening up some delays on Switch 2, and HOPEFULLY removing the unneccasary outline drawing in bucket fill (Hard to explain, but some lines do not need drawn because the area the bucket would fill would include those anyway because of a already-drawn border.)
IF THERE ANY BUGS, OPEN A FRESH ISSUE
Or post in the discussion, or anywhere where I get sent emails (which is most places on this repo)
If this release has sizable issues that I did not encounter (I ran runs on Switch 1 and Switch 2) then this release MAY get pulled, if you encounter any major issues you can downgrade without much difficulty.
Dependency nonsense:
What's Changed
- Bump Sentry from 6.8.0 to 6.9.0 by @dependabot[bot] in #183
- Bump the avalonia group with 4 updates by @dependabot[bot] in #184
- Bump Sentry from 6.9.0 to 6.10.0 by @dependabot[bot] in #185
- Bump SkiaSharp from 4.151.1 to 4.151.2 by @dependabot[bot] in #186
- Bump SkiaSharp.NativeAssets.Linux from 4.151.1 to 4.151.2 by @dependabot[bot] in #187
Full Changelog: 0.8.4...0.9.0
0.8.4 - Maintenance Pt 2
This is just another small update bumping some libraries, probably fixes bugs, speeds things up, etcetera.
Again, apologies for the lack of updates, been busy with some stuff, but if anyone wants to open a Pull Request with anything, I will still review them. I do want to try and come back to this and work on some optimizations still.
What's Changed
- Bump the avalonia group with 4 updates by @dependabot[bot] in #177
- Bump SkiaSharp from 4.150.1 to 4.151.0 by @dependabot[bot] in #178
- Bump SkiaSharp.NativeAssets.Linux from 4.150.1 to 4.151.0 by @dependabot[bot] in #179
- Bump System.IO.Ports from 10.0.10 to 10.0.11 by @dependabot[bot] in #182
- Bump SkiaSharp from 4.151.0 to 4.151.1 by @dependabot[bot] in #180
- Bump SkiaSharp.NativeAssets.Linux from 4.151.0 to 4.151.1 by @dependabot[bot] in #181
Full Changelog: 0.8.3...0.8.4
0.8.3 - Maintenance
This is just a small update bumping some libraries.
Apologies for the lack of updates, been busy with some stuff, but if anyone wants to open a Pull Request with anything, I will still review them. I do want to try and come back to this and work on some optimizations still.
What's Changed
- Bump actions/setup-dotnet from 5 to 6 by @dependabot[bot] in #175
- Bump Sentry from 6.6.0 to 6.8.0 by @dependabot[bot] in #176
- Bump System.IO.Ports from 10.0.9 to 10.0.10 by @dependabot[bot] in #172
Full Changelog: 0.8.2...0.8.3
0.8.2 - Sorry linux users
Due to a bizzaro dependency quirk with avalonia it seemed like it was not making use of the most recent SkiaSharp... but only for Linux. Which caused it to crash.
So, explicitly targeted it in the project.
Closes #166 , thanks for the report(s)!
Full Changelog: 0.8.1...0.8.2
0.8.1 - Cancel Button and Optimization Woes
What's Changed
- Added a button to cancel in progress drawings #162
- This cancels between layers so it may take a few seconds to cancel.
- Disabled early TSP convergence by default.
- I am not confident enough in the values used for it to have this enabled by default for the meanwhile, so its now disabled by default. You can enable it, and tweak the mysterious values that I do not really understand, from the settings toolbar.
- Also lots of libraries updated:
- Bump actions/checkout from 6 to 7 by @dependabot[bot] in #150
- Bump the avalonia group with 4 updates by @dependabot[bot] in #151
- Bump SkiaSharp from 3.119.4 to 4.148.0 by @dependabot[bot] in #152
- Bump actions/cache from 5 to 6 by @dependabot[bot] in #154
- Bump JeremyAnsel.ColorQuant from 3.0.74 to 3.0.75 by @dependabot[bot] in #158
Full Changelog: 0.8.0...0.8.1