ppy / osu

rhythm is just a *click* away!
https://osu.ppy.sh
MIT License
15.32k stars 2.28k forks source link

Slider follow circle animation is different compared to stable #25474

Closed brandondong closed 11 months ago

brandondong commented 11 months ago

Type

Cosmetic

Bug description

Certain sliders in lazer have always just felt different to me than stable. I've found a beatmap where the difference is particularly noticeable: https://osu.ppy.sh/beatmapsets/403282#osu/967561. After capturing footage and slowing it down, I think the key difference lies with the slider ball range indicator and how it expands during gameplay.

(Footage captured on stable vs lazer is not for the exact same replay. I used Classic mod for comparison sakes but it happens without it.)

Take note of the larger blue circle (slider ball range) and especially how it expands during the slider duration. On lazer, it suddenly expands to full size on the first slider tick: https://youtu.be/w0sQ1bnlsRk

Compared to stable where the blue circle gradually expands to full size: https://youtu.be/CzjQBFttkeM

Screenshots or videos

No response

Version

2023.1114.1 but happens on earlier versions

Logs

N/A

bdach commented 11 months ago

I'm pretty sure this is because stable's slider follow circle behaves in a broken peculiar way? See https://github.com/ppy/osu/issues/7521#issuecomment-573708270 and https://github.com/ppy/osu/pull/18795.

tl;dr: in stable the visible circle expands visually to 2x the radius of the hitcircle, but the actual hittable area is 2.4x the radius of the hitcircle. So the hittable area is larger in lazer than in stable, but also actually shows the hittable range.

Not sure we want to be doing anything with this? Probably should be added to wiki if anything (cc @Walavouchey)

brandondong commented 11 months ago

Thanks for the reply. I didn't notice the difference in circle size. I was more focused on the sudden expansion of the blue circle. Perhaps I should have slowed the video down more but if you watch at .25 speed, the blue circle expands substantially in size in a single frame upon reaching the first slider tick of each slider.

This sudden snap in particular is what makes this beatmap feel so different on lazer compared to stable. Video doesn't really do it justice. Playing the map on each client back to back really makes it apparent (and in my opinion, lazer feels super janky).

The thing is, for most beatmaps and 99% of sliders, I don't notice any difference. I think there's something about this particular beatmap. I'll capture some more footage in a bit.

brandondong commented 11 months ago

Here is a beatmap where I don't notice a difference: https://osu.ppy.sh/beatmapsets/309361#osu/691613

lazer: https://youtu.be/ar7MvKbBbFo There's a sudden growth in size again upon reaching the first slider tick. But compared to the previous beatmap, this is tiny.

stable: https://youtu.be/DBqmOkgoPNw Actually stable behaves the same way. Again though, barely noticeable.

peppy commented 11 months ago

Without the user making proper (frame-synced) comparison videos this is all pretty non-useful information so far, but I am guessing they could be noticing a difference in animation on reaching the first tick, where the first tick occurs while the initial scale is still playing.

It's likely that stable and lazer handle this scenario differently (stable is more likely to ignore the tick animation, while lazer is more likely to play it immediately).

brandondong commented 11 months ago

I don't have much time to edit tonight. Please let me know if this is insufficient and I can do a more thorough comparison in a day or two.

This is for the one beatmap mentioned above where there is a noticeable difference. lazer is on top. stable is on the bottom. Keep your eyes on the blue circle. There is a sudden jump in size which is not present in stable. https://youtu.be/QPwgJUGBVrA

This is for the beatmap mentioned subsequently where I cannot notice a difference while playing (most beatmaps fall into this category). The jump in size is present in both stable and lazer but is tiny. https://youtu.be/QDifmhEJ3tU

peppy commented 11 months ago

Thanks. It's precisely as I mentioned.