Dean Herbert
9b383e3276
Add support for showing tick misses
2023-12-20 20:23:19 +09:00
Dan Balasescu
27e55def64
Make animation start at the slider's start time
2023-12-13 20:27:14 +09:00
Dan Balasescu
b56a78c6ec
Adjust with framework changes
2023-12-04 08:51:21 +09:00
Andrei Zavatski
c7f1fd23e7
Implement spinner glow
2023-11-24 07:21:25 +03:00
Dean Herbert
66f7b9fae1
Adjust slider follow circle animation to not abruptly scale on early ticks
2023-11-17 19:09:24 +09:00
Bartłomiej Dach
e5b51f769c
Fix incorrect assertion placement in spinner rotation tracker
...
Checking the delta after the application of rate is not correct. The
delta is in screen-space *before* the rate from rate-changing mods were
applied; the point of the application of the rate is to compensate for
the fact that the spinner is still judged in "track time" - but the goal
is to keep the spinner's difficulty *independent* of rate, which means
that with DT active the user's spin is "twice as effective" to
compensate for the fact that the spinner is twice as short in real time.
In another formulation, with DT active, the user gets to record replay
frames "half as often" as in normal gameplay.
2023-10-30 21:28:29 +01:00
Dean Herbert
fbba3787d1
Merge pull request #25190 from frenzibyte/match-skin-element-animation-support
...
Match capability of animating legacy skin elements with osu!(stable)
2023-10-30 18:25:06 +09:00
Bartłomiej Dach
99e590c8dd
Fix legacy sprite texts not matching stable with respect to fixed width
...
stable's `pSpriteText` has a `TextConstantSpacing` flag, that is
selectively enabled for some usages. In particular, these are:
- mania combo counter (not yet implemented)
- taiko combo counter (not yet implemented)
- score counter
- accuracy counter
- scoreboard entries (not yet implemented)
Everything else uses non-fixed-width fonts.
Hilariously, `LegacySpinner` _tried_ to account for this by changing
`Font` to have `fixedWidth: false` specified, only to fail to notice
that `LegacySpriteText` changes `Font` in its BDL, making the property
set do precisely nothing. For this reason, attempting to set `Font`
on a `LegacySpriteText` will now throw.
2023-10-27 20:14:39 +02:00
Bartłomiej Dach
c9cb0561f7
Move maxSizePerGlyph
optional ctor param to init-only property
...
I'm doing this as I'm about to add more similar properties to
`LegacySpriteText` and I don't want to create a twenty-argument
constructor monstrosity.
2023-10-27 19:48:10 +02:00
Dean Herbert
23ea128f30
Merge branch 'master' into velocity-based-ball-animation
2023-10-25 14:01:19 +09:00
Dean Herbert
121fa6f165
Simplify pre-checks in HitObjectApplied
delegate
2023-10-25 13:53:20 +09:00
Bartłomiej Dach
0e5a521695
Merge pull request #25157 from peppy/spinner-anti-cheese-final
...
Fix spinner cheese by accounting for spin directionality
2023-10-24 08:13:32 +02:00
Dean Herbert
ded99c4097
Simplify calculation
2023-10-24 14:32:03 +09:00
Salman Ahmed
ff66b74b0e
Refactor logic to support DHO pooling
2023-10-24 02:24:00 +03:00
Salman Ahmed
0cf572d029
Use existing property and fix nullability
2023-10-23 11:46:21 +03:00
Salman Ahmed
2a70c331b9
Remove animation support from osu! slider reverse arrow
2023-10-20 23:59:03 +03:00
Salman Ahmed
80ce78e05d
Remove animation support from osu! hit circle overlay
2023-10-20 23:59:03 +03:00
Salman Ahmed
7373a9a784
Remove unnecessary usage of ApplyWithDoubledAlpha
2023-10-20 23:54:29 +03:00
Salman Ahmed
ac8c2a173b
Apply velocity into legacy slider ball animation rate
2023-10-20 22:47:45 +03:00
Dean Herbert
ca3a3f600e
Update visuals of spinner implementations to show MAX score differently
2023-10-20 16:11:09 +09:00
Dean Herbert
181a98e8ef
Remove duplicate definition of bonus text in ArgonSpinner
2023-10-20 16:10:54 +09:00
Dean Herbert
f16400929d
Update bindable flow to expose every spin, even after max bonus is reached
2023-10-20 15:38:04 +09:00
Dean Herbert
54da6f1048
Merge pull request #25160 from bdach/repeat-arrow-hidden-fade
...
Adjust slider repeat transforms to closer match stable
2023-10-18 18:03:48 +09:00
Bartłomiej Dach
f3cda58474
Fix legacy slider repeats becoming much too large on hit
...
They had scale transforms applied to them in two places: the actual
legacy pieces themselves (esp. `LegacyHitCirclePiece`), and on the
`DrawableSliderRepeat` level.
This change moves all of the scale transforms to the skinnable pieces.
Argon and triangles have received a copy of the previous logic each,
so behaviour on those skins should not change.
2023-10-17 14:47:44 +02:00
Dean Herbert
af7180a5b5
Add SpinnerSpinHistory
and tests
2023-10-17 20:10:22 +09:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
0bb95cfa88
Fix incorrect initial rotation transfer value
...
Should have been removed as part of https://github.com/ppy/osu/pull/24360 .
2023-10-16 19:34:55 +09:00
Dean Herbert
10bab61441
Tidy up lastAngle
usage and add assertion of maximum delta
2023-10-16 19:34:22 +09:00
Dean Herbert
159b24acf7
Rename RateAdjustedRotation
to TotalRotation
2023-10-16 18:25:03 +09:00
Dan Balasescu
84be714d6b
Fix large instantaneous delta on first frame
...
Happens when the first update frame comes in before any mouse input.
2023-10-16 18:17:11 +09:00
Dean Herbert
0b64852181
Limit sliderscorepoint
to hitcicle dimensions
...
You'd never use anything above this unless crazy.
2023-10-13 15:43:20 +09:00
Dean Herbert
17df2fdf01
Restrict followpoint
size
...
See https://github.com/ppy/osu/issues/24940#issuecomment-1760980461 .
2023-10-13 15:42:49 +09:00
Dean Herbert
ad6f04cfb0
Hotfix approach circle cutoff
2023-10-09 10:16:57 +02:00
Bartłomiej Dach
96bb8ed150
Apply feedback regarding maximum osu! element sizings
...
- `default-N` number sprites maximum size increased by 1.25x to a total
of 320x320 to counteract the 0.8x factor applied onto them when
displayed on a hitcircle.
- `sliderb` and parts' maximum size increased to 384x384, to match
`sliderfollowcircle`, as the two are apparently sometimes used
interchangeably by skinners to achieve different visual effects.
2023-10-05 22:33:49 +02:00
Bartłomiej Dach
0ae4a0f11f
Adjust gameplay element maximum size limits for backwards compatibility
...
The new limits were chosen by sampling across over 4000 skins. The
methodology for doing so is described in the following gist:
https://gist.github.com/bdach/6228ba41d128b23d1f89142f404108a3
2023-10-05 20:37:10 +02:00
Dean Herbert
16fcc4eaaa
Fix incorrect anchor/origin causing rotation to look wrong on legacy skin arrows
2023-10-03 12:32:52 +09:00
Dean Herbert
3aa51301e8
Add null checks in disposal flow
2023-10-02 22:28:33 +09:00
Dean Herbert
94e49a34fd
Adjust legacy reverse arrow implementation to match stable more closely
2023-10-02 22:26:57 +09:00
Dean Herbert
f0070eecf1
Add rotation support for very old skins
2023-10-02 20:09:39 +09:00
Dean Herbert
1bee7bf353
Add note about rotation
2023-10-02 19:22:24 +09:00
Dean Herbert
e4ac8362ec
Update other implementations to use non-beat-sync logic
2023-10-02 19:20:11 +09:00
Dean Herbert
8010410487
Stop beat syncing (and close match stable's implementation of arrow animation)
2023-10-02 19:17:35 +09:00
Dean Herbert
ad4e988520
Adjust reverse arrows to bounce more
2023-10-02 18:43:50 +09:00
Dean Herbert
455fc228ad
Add edge piece to argon reverse arrow
2023-10-02 18:43:50 +09:00
Dean Herbert
7dd9951c44
Split out reverse arrow implementations to allow better animation
2023-10-02 18:43:50 +09:00
Dean Herbert
990c54519b
Merge branch 'master' into limit-gameplay-sprite-dimensions
2023-09-26 16:40:32 +09:00
Dean Herbert
8e16b1d507
Simplify some maximum size specs
2023-09-20 12:48:15 +09:00
Salman Ahmed
922f6f36f2
Add size limitation for hit object numbers
2023-09-19 04:38:10 +03:00
Salman Ahmed
ab5226832a
Add size limitation for slider reverse arrow piece
2023-09-19 04:38:10 +03:00
Salman Ahmed
b823507b2a
Add size limitation for approach circles
2023-09-19 04:38:10 +03:00
Salman Ahmed
f963a921db
Add size limitation for slider follow circle
2023-09-19 04:18:12 +03:00
Salman Ahmed
fc1a39ede3
Add size limitations for slider balls
2023-09-19 04:18:12 +03:00
Salman Ahmed
291a91be66
Change extension from retrieval to post-processing instead
2023-09-19 03:40:30 +03:00
Salman Ahmed
57dc76b345
Revert "Update GetTexture
signature rather than creating new overload"
...
This reverts commit 96f12cfbaa
.
2023-09-19 03:21:19 +03:00
Dean Herbert
e3e7a81ad9
Remove slider head circle movement (and remove setting from "classic" mod)
2023-09-14 17:49:41 +09:00
Dean Herbert
96f12cfbaa
Update GetTexture
signature rather than creating new overload
2023-09-05 18:01:19 +09:00
Salman Ahmed
351081eb27
Add limit to osu! hit circle elements
2023-09-03 02:22:53 +03:00
Dean Herbert
0858bef66e
Update SmokeSegment
in line with framework vertex changes
2023-08-17 18:12:04 +09:00
Dean Herbert
2e9379474d
Change spinner rotation animation to match input 1:1
2023-07-25 19:21:20 +09:00
Dean Herbert
bddb91dc0a
Adjust adjustment to 1px based on review feedback
...
Also split out `Size` variable for clarity
2023-06-12 14:24:39 +09:00
Dean Herbert
03a5b701e9
Fix incorrect inline comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-06-12 14:20:54 +09:00
Dan Balasescu
4b8c4bd503
Fix black jaggies around argon hitcircles
2023-06-10 01:54:13 +09:00
Dean Herbert
9c4312b407
Add support for flipping colour of reverse arrow on legacy default skin when combo colour is too bright
2023-05-03 12:37:07 +09:00
Dean Herbert
bd72c67d68
Increase the rate of slider ball fade on argon skins to match other implementations
2023-05-02 15:47:35 +09:00
Dean Herbert
72b472a756
Change default scaling and add note about legacy cursor-ripple
scale
2023-04-30 14:48:03 +09:00
Dean Herbert
a4ae9e409b
Implement ripples (legacy and default)
2023-04-30 14:48:03 +09:00
Dean Herbert
b39a9d816e
Add basic structural requirements for cursor ripples
2023-04-30 14:48:03 +09:00
Salman Ahmed
678e8ed736
Update UBO usages inline with framework changes
2023-03-16 14:06:35 +03:00
Bartłomiej Dach
a14481acca
Merge pull request #22440 from peppy/argon-hit-lighting-v2
...
Adjust argon hit lighting further
2023-01-30 19:34:58 +01:00
Dean Herbert
2b55e05b10
Adjust argon hit lighting further
2023-01-27 13:31:21 +09:00
Dean Herbert
de1d473d29
Fix kiai flash being visible and incorrectly sized during hit animation
2023-01-26 15:24:10 +09:00
Bartłomiej Dach
73f53328cf
Merge branch 'master' into argon-kiai
2023-01-25 22:21:26 +01:00
Bartłomiej Dach
3daa9e6295
Merge branch 'master' into argon-hit-lighting-peppy-take
2023-01-25 21:44:43 +01:00
Dean Herbert
48d68b0f4f
Add very basic kiai flash to argon hit circles
2023-01-25 18:59:26 +09:00
Dean Herbert
9499d3a20a
Add support for disabling "hit lighting" with osu! argon skin
2023-01-25 15:50:49 +09:00
Dean Herbert
d8365f4fca
Reverse order of application to match DrawableHitObject
2023-01-25 11:47:15 +09:00
Dean Herbert
3a47be6e00
Fix argon hit circles occasionally going missing during editor seeking
2023-01-24 17:43:14 +09:00
Bartłomiej Dach
7483967157
Merge branch 'master' into SliderEnd-Snap
2023-01-23 21:33:16 +01:00
ekrctb
7e466e1eba
Fix SPM calculation division by zero
2023-01-20 21:00:01 +09:00
Wleter
00f15d19f9
fix double newlines
2023-01-17 21:11:21 +01:00
Dean Herbert
e9571be4ab
Fix incorrect application layer causing completely discoloured circles
2023-01-11 19:29:17 +09:00
Dean Herbert
0d1046ed83
Add full colour application to kiai sprites
2023-01-11 19:29:17 +09:00
Wleter
98ffcd33c7
Merge branch 'ppy:master' into SliderEnd-Snap
2023-01-10 21:22:13 +01:00
Wleter
38bb7ac0c7
add fields for path's end location
2023-01-10 21:16:34 +01:00
Salman Ahmed
760b2d98df
Tint "argon" slider follow circle with combo colour
2023-01-04 16:19:30 +03:00
Salman Ahmed
d70df08f45
Tint "argon" slider ball with combo colour
2023-01-04 16:19:16 +03:00
Dean Herbert
5e9fb1063a
Move judgement text creation to base class and tidy things up
2022-12-24 12:22:36 +08:00
Dean Herbert
03603f8b54
Don't show great or higher judgements when using argon "pro" skin
2022-12-24 03:35:44 +08:00
Dean Herbert
727ac00f6d
Combine base class for JudgementPiece
2022-12-24 03:32:13 +08:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Alden Wu
815cd56f13
Add support for nonsquare smoke textures
2022-11-20 16:50:15 -08:00
Thomas Müller-Höhne
9ef43ebd83
Fix compilation after framework-side PR updates
2022-11-12 21:24:12 +09:00
Thomas Müller-Höhne
fa8e38d9d6
Target rounded fragment shader
...
Compatibility with osu-framework change https://github.com/ppy/osu-framework/pull/5512
2022-11-12 17:18:23 +09:00
Dean Herbert
e19ba65f91
Remove LookupName
from base ISkinComponentLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
1aa0e40f2f
Add "Component" prefix to lookup naming
2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b
Rename ISkinComponent
to ISkinLookup
2022-11-09 17:46:43 +09:00
Dean Herbert
82ff142b1b
Apply nullability to osu! skinning classes
2022-11-09 13:37:09 +09:00
Dean Herbert
5e7dc34d05
Move some non-default skin files to correct namespace
2022-11-09 13:31:52 +09:00
Dean Herbert
710c224de4
Remove unused IHasMainCirclePiece
interface
2022-11-09 13:31:50 +09:00
Dean Herbert
e89d3840fc
Adjust completion animation
2022-11-03 15:12:30 +09:00