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

Add style options to dynamic skin elements #31100

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

bctix
Copy link

@bctix bctix commented Dec 12, 2024

This pr adds style options: Font, TextColour, and ShowLabel, to a few dynamic skin elements.

The skin elements being: BPMCounter. ClicksPerSecondCounter, LongestComboCounter and UnstableRateCounter.

Made this to make these elements less restrictive and add more customization to the skin editor.

Preview:
image

Comment on lines 123 to 126
// We only have bold weight for venera, so let's force that.
FontWeight fontWeight = typeface.NewValue == Typeface.Venera ? FontWeight.Bold : FontWeight.Regular;

FontUsage f = OsuFont.GetFont(typeface.NewValue, weight: fontWeight);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In master this particular piece of code is copied once. This PR adds four more copies. That's definitely past the threshold of "not sure if it's fine to copy this logic" - it's not.

This can probably go live in OsuFont itself. Compare:

if ((family == GetFamilyString(Typeface.Torus) || family == GetFamilyString(Typeface.TorusAlternate)) && weight == FontWeight.Medium)
// torus doesn't have a medium; fallback to regular.
weight = FontWeight.Regular;

@bdach
Copy link
Collaborator

bdach commented Dec 16, 2024

Visually not sure on the execution either. Most of the components seem to be designed with a heavy lean on venera's aesthetic and metrics to visually work. With other fonts things just kinda don't work. Although I guess there is an option to switch labels off and usually it's the labels that look bad...

Like look at the screenshots below. Counter text & label text misaligned:

osu_2024-12-16_13-51-20
osu_2024-12-16_13-51-14
osu_2024-12-16_13-49-35
osu_2024-12-16_13-49-31

Ascenders protruding past counter that look bad, not sure on the lowercase use either:

osu_2024-12-16_13-50-51

cc @ppy/team-design maybe

@bctix
Copy link
Author

bctix commented Dec 16, 2024

I moved the venera bold check to OsuFont.

As for the visual concerns, I'm not entirely sure if I should fix it, or wait for other opinions from the design team.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants