Commit Graph

41577 Commits

Author SHA1 Message Date
LillyJadeKatrin db78437498
Refactored welcome message to render after game start
Split the "welcome" messages letting players know achievements are active into a separate method that gets called (currently) after a number of frames to ensure that the emulator has started properly and has somewhere to display the messages.
2023-10-19 19:21:12 +02:00
LillyJadeKatrin a3d561fdff
Add badges to achievement messages
Updated OSD::AddMessage calls for achievements and game start to pass in the badges intended to be shown.
2023-10-19 19:13:20 +02:00
Admiral H. Curtiss c87b2e46b4
Merge pull request #12242 from AdmiralCurtiss/osd-icons
VideoCommon: Add support for icons in OSD messages.
2023-10-17 12:46:36 +02:00
Admiral H. Curtiss 53ea7aee1b
Merge pull request #12239 from AdmiralCurtiss/achievementprogresswidget-clearlayout
DolphinQt/AchievementProgressWidget: Use ClearLayoutRecursively() to clear layout.
2023-10-17 12:45:40 +02:00
Admiral H. Curtiss cb13ad7a5f
VideoCommon: Add support for icons in OSD messages. 2023-10-17 02:47:29 +02:00
Admiral H. Curtiss 7122c7e872
Merge pull request #12243 from iwubcode/tolower_assets
VideoCommon: use ToLower function in assets when parsing json
2023-10-17 02:34:18 +02:00
iwubcode b292022bc7 VideoCommon: use ToLower function in assets when parsing json, for proper locale independent behavior 2023-10-16 19:23:00 -05:00
Admiral H. Curtiss 2ae9771a30
Merge pull request #12241 from iwubcode/shader_asset_additoinal_properties
VideoCommon: add additional properties to ShaderAsset to support custom shader uniforms
2023-10-17 02:16:40 +02:00
iwubcode fec2a8af8c VideoCommon: add additional properties to ShaderAsset to support custom shader uniforms 2023-10-16 19:02:27 -05:00
Admiral H. Curtiss 3873664143
DolphinQt/AchievementProgressWidget: Use ClearLayoutRecursively() to clear layout. 2023-10-15 22:54:40 +02:00
Admiral H. Curtiss bbf3fed93c
Merge pull request #12027 from LillyJadeKatrin/retroachievements-leaderboards-tab
RetroAchievements - Leaderboards Tab
2023-10-15 21:40:58 +02:00
LillyJadeKatrin b824d55093
Add Leaderboards tab to Achievement dialog
A new tab is added to the Achievements dialog to chart out the leaderboards in a table. Each row of the table contains the leaderboard information and up to four relevant entries, varying based on how many entries are in the leaderboard, whether or not the player has a submitted score, and where in the leaderboard the player's score is.
2023-10-15 21:28:40 +02:00
LillyJadeKatrin 04df930e0d
Added FetchBoardInfo to AchievementManager
FetchBoardInfo is called (via the work queue asynchronously) on a leaderboard every time it is activated or submitted to. It makes two calls to the RetroAchievements API for fetching leaderboard info, one that requests the top four entries in the leaderboard and another that requests the player's entry, the two entries above the player and the two entries below. All of these are inserted into a single map (resolving any overlaps) so the result can be exposed to the UI.
2023-10-15 21:28:40 +02:00
LillyJadeKatrin 61dded7043
Added Leaderboard info map to AchievementManager
The leaderboard map created here contains information useful to displaying leaderboard stats in the Achievement dialog, including each leaderboard's name and description and a partial list of entries for display. The entire map is exposed to the UI in a single call for simplicity.
2023-10-15 21:28:40 +02:00
Admiral H. Curtiss daf9ff012a
Merge pull request #12229 from AdmiralCurtiss/achievement-load-async-lock
AchievementManager: Call ActivateDeactivateLeaderboards() and ActivateDeactivateRichPresence() under lock.
2023-10-15 21:27:41 +02:00
JosJuice b3b660b446
Merge pull request #12236 from AdmiralCurtiss/qt-clear-layout
DolphinQt: Move GraphicsModListWidget::ClearLayoutRecursively() to QtUtils.
2023-10-15 19:17:01 +02:00
Admiral H. Curtiss 1645b1ed62
AchievementManager: Call ActivateDeactivateLeaderboards() and ActivateDeactivateRichPresence() under lock.
Both of these functions access `m_game_data` and don't lock themselves, so they must be called in a way that guarantees that `m_game_data` is not modified during the call.
2023-10-15 18:59:36 +02:00
Admiral H. Curtiss ab562553f6
DolphinQt/AchievementHeaderWidget: Remove unused member variables. 2023-10-15 18:56:28 +02:00
Admiral H. Curtiss 923fc00777
DolphinQt/AchievementHeaderWidget: Fix wrong label for hard unlock count. 2023-10-15 18:42:03 +02:00
Admiral H. Curtiss 4b2dad074a
DolphinQt: Move GraphicsModListWidget::ClearLayoutRecursively() to QtUtils. 2023-10-15 18:39:05 +02:00
Admiral H. Curtiss 2677fd9a8e
Merge pull request #12185 from iwubcode/custom_shader_uniform_backend_support
VideoBackends / VideoCommon: add support for custom shader uniforms to D3D, Vulkan, OGL
2023-10-15 00:21:56 +02:00
Admiral H. Curtiss 5195446ddb
Merge pull request #12233 from AdmiralCurtiss/libcurl840
Externals: Update libcurl to 8.4.0
2023-10-14 18:42:00 +02:00
JosJuice 47396650bf
Merge pull request #12232 from Dentomologist/convert_objectsubtype_to_enum_class
IOSC: Convert ObjectSubType to enum class
2023-10-13 21:54:23 +02:00
Admiral H. Curtiss ac0f1b8b0d
Externals: Update libcurl to 8.4.0 2023-10-12 21:45:50 +02:00
Dentomologist b2a8f7e276 IOS: Convert ObjectSubType to enum class 2023-10-11 14:21:29 -07:00
Admiral H. Curtiss 1c0605d1c4
Merge pull request #12228 from AdmiralCurtiss/achievement-callback-scope
AchievementManager: Don't store pointer to rc_runtime_event_t in lambda.
2023-10-11 14:40:06 +02:00
Admiral H. Curtiss 111c1ab531
AchievementManager: Don't store pointer to rc_runtime_event_t in lambda.
Scope issue in the event callback from `rc_runtime_do_frame()`. The pointer points to a variable on the stack from inside `rc_runtime_do_frame()`, so that's a race condition between the thread calling `rc_runtime_do_frame()` and the event queue thread.
2023-10-11 10:32:11 +02:00
Admiral H. Curtiss 601767c1c8
Merge pull request #12227 from iwubcode/wait_on_gpu_when_config_changes
VideoCommon: wait for the GPU to be finished doing any work before invalidating pipelines when graphics config changes
2023-10-11 09:44:20 +02:00
iwubcode b251194a7e VideoCommon: wait for the GPU to be finished doing any work before invalidating pipelines when graphic config changes 2023-10-10 18:17:24 -05:00
Admiral H. Curtiss 6aadfd522b
Merge pull request #12225 from AdmiralCurtiss/resolution-dropdown-fix
Qt/EnhancementsWidget: Fix size of resolution dropdown.
2023-10-10 19:29:22 +02:00
Admiral H. Curtiss a2f21da877
Merge pull request #12167 from iwubcode/use_texture_data_for_texture_assets
VideoCommon: use 'TextureData' for texture assets to support texture metadata
2023-10-10 17:11:03 +02:00
iwubcode 0e8f8ea930 VideoCommon: instead of using 'CustomTextureData' directly, use 'TextureData' for texture assets, this allows us to provide additional metadata for textures. Such as a sampler or type information (to distinguish cube maps) 2023-10-10 09:58:14 -05:00
Admiral H. Curtiss 7b32530de6
Qt/EnhancementsWidget: Fix size of resolution dropdown. 2023-10-10 15:03:49 +02:00
Admiral H. Curtiss 1b7a590b4b
Merge pull request #12209 from JosJuice/frsqrte-exp-lsb
PowerPC: Flip the order of frsqrte_expected
2023-10-10 10:38:07 +02:00
Admiral H. Curtiss 410ec83575
Merge pull request #12213 from dreamsyntax/128_CODE_SIZE_AND_FARCODE_SIZE
Jit64: Increase farcode & nearcode cache size
2023-10-10 10:35:23 +02:00
Admiral H. Curtiss 9ebb52537e
Merge pull request #12217 from malleoz/savestate_lz4
Savestates: Use LZ4 algorithm for faster decompression
2023-10-10 10:34:38 +02:00
sowens99 1eaa9380dd Savestates: Use LZ4 algorithm for faster decompression 2023-10-08 20:45:49 -04:00
Admiral H. Curtiss 968a981958
Merge pull request #12221 from nick0ve/fix-gc-memcard-heap-overflow
Fix heap buffer overflow in GCMemcardRaw
2023-10-08 15:20:43 +02:00
Nicola Vella b506bdc401
Fix heap buffer overflow in GCMemcardRaw 2023-10-08 15:13:41 +02:00
Nicola Vella 31dfb53152 Fix heap buffer overflow in GCMemcardRaw 2023-10-06 19:30:03 +02:00
iwubcode 713454b7d7 Metal: update binding mapping for SPRV due to change for custom shader uniforms in other backends (Metal is still not supported)
Co-authored-by: TellowKrinkle <tellowkrinkle@gmail.com>
2023-10-06 02:17:43 -05:00
iwubcode a099f4f41b VideoCommon: given the changes to pipeline interaction, update the global version variable to reflect those changes and force pipelines to be rebuilt 2023-10-06 02:17:43 -05:00
iwubcode 751356af47 VideoCommon: avoid Vulkan validation errors when custom shader ubo isn't set up
Co-authored-by: TellowKrinkle <tellowkrinkle@gmail.com>
2023-10-06 02:17:43 -05:00
iwubcode b6d321bfb1 VideoBackends / VideoCommon: add new uniform buffer object for custom shader materials (slot 3, geometry shader buffer moves to slot 4 if available) 2023-10-06 02:17:42 -05:00
iwubcode 92accc3ef7 VideoCommon: add custom pixel shader constants as a buffer of data to be passed to all backends 2023-10-05 21:20:16 -05:00
Admiral H. Curtiss 1c433d5f3f
Merge pull request #12171 from Filoppi/support_8k
Add support for resolutions multipliers up to 12x (~8k)
2023-10-06 02:37:36 +02:00
Filoppi 8027c88e58 Video: add support for 12x resolution multiplier 2023-10-06 01:12:10 +03:00
dreamsyntax 219610d8a0 Jit64: Increase nearcode/farcode size 2023-10-04 13:05:09 -07:00
Pokechu22 0291d2c45f
Merge pull request #12219 from AdmiralCurtiss/bba-name-conflict
Core/BBA/BuiltIn: Replace IP_PROTOCOL with IPV4_ETHERTYPE to avoid conflict with Linux headers.
2023-10-04 09:43:15 -07:00
Admiral H. Curtiss beebe0a200
Core/BBA/BuiltIn: Replace IP_PROTOCOL with IPV4_ETHERTYPE to avoid conflict with Linux headers. 2023-10-04 16:13:16 +02:00