ppy / osu

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

Wrong display when note behind sliderbody. #28624

Open ShineBreaker opened 2 days ago

ShineBreaker commented 2 days ago

Type

Game behaviour

Bug description

When playing some 2b style maps with hitcircle inside the sliderbody, it seems that sliderbody will cover the hitcircle. But in the osu!stable, hitcircle will show first and covered the sliderbody.

Screenshots or videos

图片 图片 图片

Version

2024.625.0-lazer

Logs

compressed-logs.zip

ShineBreaker commented 2 days ago

图片 图片 图片 behavior in latest osu!stable and all the things also performed in gameplay like that

ShineBreaker commented 2 days ago

it's not only display like that in editor but also in gameplay.

smoogipoo commented 2 days ago

This one is pretty important to fix, because it's not only edge case/"2B" beatmaps. We may want to proxy slider bodies underneath hitobjects, as I believe this is what stable does.

Will temporarily assign myself.

peppy commented 2 days ago

Is this not just a case of depth being applied slightly wrong? ie. it should be based on end time rather than start time?

bdach commented 2 days ago

Is this not just a case of depth being applied slightly wrong?

I honestly couldn't say myself with any degree of confidence. Having looked at that code previously, stable's depth handling is... stupid complicated?

smoogipoo commented 2 days ago

Visually it would be resolved by using end time, but I'm concerned about input. I'll need to go back to stable to test its input handling because I don't quite remember this edge case.