1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-14 15:57:24 +08:00
Commit Graph

467 Commits

Author SHA1 Message Date
Dan Balasescu
9fd6449fd8
Add mods to FilterCriteria, pass to ruleset method 2024-03-28 23:03:26 +09:00
Dan Balasescu
10edb54614
Add ability to query key count with mods 2024-03-28 22:51:12 +09:00
Bartłomiej Dach
a1880e89c2
Use title as tiebreaker when sorting beatmap carousel by artist
Closes https://github.com/ppy/osu/issues/27548.

Reference: e53980dd76/osu!/GameplayElements/Beatmaps/BeatmapTreeManager.cs#L341-L347
2024-03-22 08:41:10 +01:00
Bartłomiej Dach
46c8560ca5
Merge branch 'master' into multiplayer-difficulty-tooltip 2024-02-22 12:08:29 +01:00
Bartłomiej Dach
d06c67ad8f
Substitute two jank interdependent bool flags for single tri-state enums 2024-02-22 12:05:50 +01:00
Dean Herbert
fb593470d5
Use DEFAULT instead of INSTANCE or static field
Matches other similar comparers.
2024-02-21 21:02:20 +08:00
Bartłomiej Dach
929858226a
Use custom comparer in beatmap carousel for expected sort behaviour 2024-02-21 12:43:18 +01:00
Dean Herbert
6960f87509
Merge pull request #26895 from vmfunc/ordinal-sorting
Consider case sensitivity when sorting beatmaps in song select
2024-02-18 04:05:22 +08:00
Dean Herbert
674ee91bb5
Define aggregate max delegates as static to further reduce allocations 2024-02-15 11:40:50 +08:00
Dean Herbert
80abf6aab3
Avoid some further enumerator allocations 2024-02-15 09:45:24 +08:00
Andrei Zavatski
6e1b4152c0 Redice allocations during aggregate beatmap sort 2024-02-15 00:01:55 +03:00
Bartłomiej Dach
1113355753
Merge branch 'master' into add-last-played-filter 2024-02-14 15:36:19 +01:00
syscats
0407b5d84a
use ordinal sorting on each method 2024-02-01 14:03:59 +01:00
syscats
7165511754 Use ordinal sorting for artist string comparison 2024-01-31 15:49:31 +01:00
Dean Herbert
02bb506cce
Avoid using .Children for enumeration in other locations 2024-01-23 05:32:11 +09:00
Dean Herbert
51bd32bf7e
Restore comment regarding usage of MinBy 2024-01-09 01:08:47 +09:00
Dean Herbert
e77d203a24
Refactor delayed load logic to hopefully read better 2024-01-09 01:08:17 +09:00
Dean Herbert
81c6fd5589
Load items closer to the centre of the screen as a priority 2024-01-04 19:25:12 +09:00
Dean Herbert
adac3b65ce
Fix beatmap carousel not preloading panels when off-screen 2024-01-04 19:25:12 +09:00
Dean Herbert
e003462f7d
Fix beatmap updates causing one extra carousel selection 2023-12-20 19:15:02 +09:00
Bartłomiej Dach
9a5027e556
Merge pull request #25900 from peppy/editor-from-any-carousel
Allow choosing "Edit" from any beatmap carousel item
2023-12-20 08:35:42 +01:00
Bartłomiej Dach
e306cc35ba
Merge branch 'master' into fix-song-select-realm-refresh-performance 2023-12-19 14:14:46 +01:00
Dean Herbert
bbfdd6892d
Allow choosing "Edit" from any beatmap carousel item 2023-12-19 19:58:49 +09:00
Dean Herbert
44efa2c540
Fix incorrect ordering of items at song select when certain sort modes are used 2023-12-19 15:09:03 +09:00
Dean Herbert
d81cabc063
Revert "Improve performance of attemptSelection using new cached count and LastSelected"
This reverts commit 25df42630e.
2023-12-18 22:46:02 +09:00
Dean Herbert
25e3a8e82e
Fix a few of silly issues 2023-12-18 22:45:58 +09:00
Dean Herbert
25df42630e
Improve performance of attemptSelection using new cached count and LastSelected 2023-12-18 20:47:08 +09:00
Dean Herbert
5755fa214a
Cache non-filtered beatmap counts to massively improve count performance 2023-12-18 20:44:08 +09:00
Dan Balasescu
fbef40bb1f
Reduce some allocations in SongSelect in the mania ruleset 2023-12-15 11:01:15 +09:00
Dan Balasescu
b36db3518c
Add keycount to song select details panel and carousel panels 2023-12-09 22:31:51 +09:00
Dean Herbert
8286d3896f
Fix searching at song select matching incorrect ruleset
Regressed with https://github.com/ppy/osu/pull/25679.
2023-12-06 11:32:26 +09:00
Dean Herbert
45e499778f
Search terms before performing other criteria checks
Very minor, but putting the more common case towards the
start of the method allows early return.
2023-12-05 15:28:56 +09:00
Dean Herbert
42010574b5
Avoid list construction when doing filtering 2023-12-05 15:26:14 +09:00
Dean Herbert
27e778ae09
Avoid sorting items when already in the correct sort order 2023-12-05 14:47:32 +09:00
Bartłomiej Dach
19be0055d5
Merge pull request #24921 from Pasi4K5/diff-name-search
Add ability to search for difficulty names using square brackets
2023-10-24 12:07:02 +02:00
Dean Herbert
c9161a7bfc
Remove incorrect copy paste fail 2023-10-24 17:32:01 +09:00
Dean Herbert
6865d8894d
Simplify implementation and remove unsupported test coverage 2023-10-24 16:01:32 +09:00
Dean Herbert
7139592e43
Fix collections not being sorted correctly in context menus 2023-10-16 16:03:12 +09:00
Pasi4K5
793d1bf970 Add ability to search for difficulty names 2023-09-25 12:52:49 +02:00
Aki
cb354685ca
simplify code 2023-07-16 10:21:32 +08:00
Aki
309c852222
Compute the top local rank directly without an expensive detach call 2023-07-15 23:00:13 +08:00
Dean Herbert
a98a36872e Bring realm library up-to-date 2023-07-06 13:37:43 +09:00
Dean Herbert
702266198b Add missing "title=" search support at song select 2023-06-27 15:21:13 +09:00
Dean Herbert
a74547c43c Add exact match support at song select 2023-06-26 18:26:44 +09:00
Dean Herbert
ce41ef6e5d Move OrderByTotalScore() to an extension method 2023-06-16 15:24:30 +09:00
Salman Ahmed
7269b4807e
Merge branch 'master' into improve-song-select-enter-performance 2023-06-12 13:13:59 +03:00
Dean Herbert
10c43d2273 Reduce delays and fades for carousel panels to improve song select initial display performance
Entering song select has seen a hit since the new renderer
implementations. The underlying cause is large numbers of vertex buffer
uploads (the counter hits >200k for me during the transition).

Song select is in the process of being redesigned, and we are probably
going to make improvements to the renderer to alleviate this, but in the
mean time we can greatly improve the user experience by reducing how
long the initial fade in delays take on panels.

Visually this doesn't look too jarring, and gives a more immediate
feeling when scrolling. It's also more feasible to load elements sooner
with https://github.com/ppy/osu/pull/23809 applied.
2023-06-08 17:28:58 +09:00
Dean Herbert
3978d4babb Crop and disable mipmaps on beatmap panel backgrounds
This is an effort to improve general performance at song select. At
least on the metal renderer, I can notice very high draw frame overheads
related to texture uploads.

By reducing the size of the texture uploads to roughly match what is
actually being displayed on screen (using a relatively inexpensive crop
operation), we can bastly reduce stuttering both during initial load and
carousel scroll.

You might ask if it's safe to disable mipmapping, but I've tested with
lower resolutions and bilinear filtering seems to handle just fine.
Bilinear without mipmaps only falls apart when you scale below 50% and
we're not going too far past that at minimum game scale, if at all.
2023-06-08 16:51:07 +09:00
Dean Herbert
8ba9677b96
Merge branch 'master' into add-last-played-filter 2023-06-06 16:12:23 +09:00
Dean Herbert
c54670aee1 Add comment explaining implementation 2023-06-06 13:30:56 +09:00