Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Layer Separations #798

Merged
merged 1 commit into from
May 2, 2024
Merged

Conversation

CryZe
Copy link
Collaborator

@CryZe CryZe commented May 2, 2024

This improves the code that splits the rendered entities into the bottom and top layers. The top layer is intended to be used for entities that update frequently. This was mostly done pretty well before, but with the web renderer it has been quite easy to find cases that could be improved:

  1. The graph used to always be rendered onto the top layer. This does not need to be the case when the timer is paused or just not running at all.
  2. Game Time can change all the time, even if the timer is paused. So this is taken into account everywhere now.
  3. Columns didn't consider pausing at all either.
  4. There was a bug in the web renderer where a brightness of 0 was considered as the default for brightness and thus no brightness change was applied. This should've been at 1.
  5. The new Rust release brought some new clippy lints around string buffer reusage that were addressed.

@CryZe CryZe added enhancement An improvement for livesplit-core. rendering The issue or pull request is affecting the rendering. code quality Affects the quality of the code. performance Affects the performance of the code. labels May 2, 2024
@CryZe CryZe added this to the v0.14 milestone May 2, 2024
@CryZe CryZe added this to In progress in LiveSplit One Desktop MVP via automation May 2, 2024
This improves the code that splits the rendered entities into the bottom
and top layers. The top layer is intended to be used for entities that
update frequently. This was mostly done pretty well before, but with the
web renderer it has been quite easy to find cases that could be
improved:

1. The graph used to always be rendered onto the top layer. This does
   not need to be the case when the timer is paused or just not running
   at all.
2. Game Time can change all the time, even if the timer is paused. So
   this is taken into account everywhere now.
3. Columns didn't consider pausing at all either.
4. There was a bug in the web renderer where a brightness of 0 was
   considered as the default for brightness and thus no brightness
   change was applied. This should've been at 1.
5. The new Rust release brought some new clippy lints around string
   buffer reusage that were addressed.
@CryZe CryZe force-pushed the improve-layer-separations branch from 70fb0d0 to 2824f55 Compare May 2, 2024 20:21
@CryZe CryZe merged commit 47bf322 into LiveSplit:master May 2, 2024
70 checks passed
LiveSplit One Desktop MVP automation moved this from In progress to Done May 2, 2024
@CryZe CryZe deleted the improve-layer-separations branch May 2, 2024 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code quality Affects the quality of the code. enhancement An improvement for livesplit-core. performance Affects the performance of the code. rendering The issue or pull request is affecting the rendering.
Projects
Development

Successfully merging this pull request may close these issues.

None yet

1 participant