Tillmann Karras
37758fa290
OpcodeDecoder: provide default GetVertexSize() implementation
2025-08-18 01:41:14 +01:00
Dentomologist
3cc00c0676
DolphinAnalytics: Use Pascal case for GameQuirk enum
2025-08-14 13:54:23 -07:00
Admiral H. Curtiss
3fb80bec9b
Merge pull request #13780 from jordan-woyak/fix-text-filter-nearest
...
VideoCommon: Fix "Force Nearest" texture filter setting.
2025-08-01 21:59:04 +02:00
Admiral H. Curtiss
03b709019d
Merge pull request #13749 from iwubcode/vertex_shadergen_expand_fix
...
VideoCommon: fix regression in vertexshadergen for line/point expansion
2025-08-01 21:44:41 +02:00
Admiral H. Curtiss
06e05e0f90
Merge pull request #13794 from Sintendo/doouble-lookup
...
Avoid map/set double lookups
2025-08-01 21:43:12 +02:00
Tilka
812c6c2ea4
Merge pull request #13830 from CrossVR/broken-depth-clamp-control
...
DriverDetails: Disable depth_clamp_control on official AMD drivers
2025-07-31 01:06:00 +01:00
Tillmann Karras
cc71401e29
VideoCommon: drop unused XF enumerators
...
We handle all six registers (scale/offset * xyz) via the viewport name.
Keeping around unused enumerators only for the z component is confusing.
2025-07-30 19:56:30 +01:00
CrossVR
0d87f835e2
VKPipeline: Don't include depth clamp control struct when not supported
...
This should not be needed
2025-07-29 08:42:22 +09:00
CrossVR
59e9267e3d
DriverDetails: Disable depth_clamp_control on AMD official drivers
2025-07-29 08:42:22 +09:00
CrossVR
0ace5f5d3d
Vulkan: Add support for unrestricted depth range.
2025-07-21 14:07:26 +09:00
Dentomologist
72ea7a2128
VideoBackendBase: Remove redundant unique_ptr reset
...
Remove redundant reset of g_presenter in ShutdownShared, which is
already reset earlier in the function.
2025-07-09 14:12:06 -07:00
Sintendo
f2392e4048
Avoid map/set double lookups
...
Fix some common anti-patterns with these data structures.
- You can dereference the iterator returned by `find` to access the
underlying value directly, without an extra `operator[]`/`at`.
- Rather than checking for an element before insertion/deletion, you can
just do the operation and if needed check the return value to
determine if the insertion/deletion succeeded.
2025-07-08 06:53:42 +02:00
Jordan Woyak
60156f4f94
VideoCommon: Fix "Force Nearest" texture filter setting.
2025-06-28 15:52:27 -05:00
Tillmann Karras
59d2611a94
VideoCommon: remove unused struct fields
2025-06-24 19:38:45 +01:00
Dr. Dystopia
ca8f9b672b
Source: Remove redundant lambda parameter lists
2025-06-14 10:19:31 +02:00
iwubcode
6ab83bdd05
VideoCommon: fix regression where scenes with expanded lines or points would cause issues if doing per-vertex transformations in the vertex shader
2025-06-09 19:08:21 -05:00
Tilka
19fbbf0dba
Merge pull request #13727 from JoshuaVandaele/fmt-11.2.0-localtime-deprec
...
fmt: Replace deprecated `fmt::localtime` usage with `Common::LocalTime`
2025-06-08 04:04:37 +01:00
Jordan Woyak
65f3ba70f5
Merge pull request #13522 from tygyh/Enforce-overriding-destructor-style-Core&UnitTests
...
Core & UnitTests: Make overriding explicit and remove redundant virtual specifiers on overriding destructors
2025-06-07 17:55:14 -05:00
iwubcode
c3d3b81533
VideoCommon: remove 'GetByteSizeInMemory()' from custom asset, it is not needed anymore
2025-06-06 23:03:02 -05:00
iwubcode
774a84a953
VideoCommon: avoid race conditions with asset load/unload by moving the lock to the entire function, favor atomics for the memory/time getters
2025-06-06 23:03:02 -05:00
iwubcode
b3f50c969e
VideoCommon: rename m_bytes_loaded in asset library to bytes_loaded
2025-06-06 23:03:02 -05:00
iwubcode
3b83907b88
VideoCommon: update CustomAsset's load time to be before the load occurs (this prevents issues where the load time might be incorrectly inflated by long load operations)
...
Co-authored-by: Jordan Woyak <jordan.woyak@gmail.com>
2025-06-06 23:03:02 -05:00
iwubcode
d940d62cae
VideoCommon: watch texture pack folder for texture reloads (from dynamic input textures)
2025-06-06 23:03:02 -05:00
iwubcode
7afa9e6c6f
VideoCommon: use CustomResourceManager in the texture cache and hook up to our hires textures
2025-06-06 23:03:02 -05:00
iwubcode
12d178a8df
VideoCommon: initialize and shutdown the CustomResourceManager when the video thread initializes and shuts down
2025-06-06 23:03:02 -05:00
iwubcode
70abcb2030
VideoCommon: add resource manager and new asset loader; the resource manager uses a least recently used cache to determine which assets get priority for loading. Additionally, if the system is low on memory, assets will be purged with the less requested assets being the first to go. The loader is multithreaded now and loads assets as quickly as possible as long as memory is available
...
Co-authored-by: Jordan Woyak <jordan.woyak@gmail.com>
2025-06-06 23:03:02 -05:00
iwubcode
d8ea31ca46
VideoCommon: rename GameTextureAsset into TextureAsset and make it only contain CustomTextureData. Move validation and load logic to individual functions
2025-06-06 23:03:02 -05:00
iwubcode
2ae43324cb
VideoCommon: move AssetMap to a types header file, so it can be pulled in without the DirectFilesystemAssetLibrary dependencies, the header will be expanded later
2025-06-06 23:03:02 -05:00
iwubcode
bafe78203d
VideoCommon: remove 'GetLastAssetWriteTime' and switch to a steady_clock for asset times
2025-06-06 23:03:02 -05:00
iwubcode
15f125ebee
VideoCommon: change asset loading to return the number of bytes loaded instead of a pass/fail
2025-06-06 23:03:02 -05:00
iwubcode
316740daed
VideoCommon: add 'Unload' functionality to CustomAsset
2025-06-06 23:03:02 -05:00
iwubcode
9ec69b5925
VideoCommon: add a handle to custom asset, this is an id that is only relevant for a particular game session but is slightly faster as a numeric value for lookups than the traditional asset id
2025-06-06 19:20:25 -05:00
iwubcode
d7de49ccf6
Core / VideoCommon: Remove original custom asset loader
2025-06-06 19:20:25 -05:00
iwubcode
ae26b38fc0
VideoCommon: fix pixel shader gen error about structure not being fully initialized
2025-06-05 01:37:45 -05:00
Joshua Vandaële
4b65cc9a4c
fmt: Replace deprecated fmt::localtime usage with Common::LocalTime
2025-06-04 13:32:12 +02:00
iwubcode
b23dddea4e
VideoCommon: move vertex shader gen logic to a 'process_vertex()' function, to eventually allow for custom shaders to override vertex logic
2025-05-24 01:27:58 -05:00
Jordan Woyak
94888d250e
Merge pull request #13527 from tygyh/Replace-msg-with-structured-binding-VideoCommon/NetPlayChatUI
...
VideoCommon/NetPlayChatUI: Replace msg with structured binding
2025-05-17 17:09:13 -05:00
JMC47
cf3702cbc8
Merge pull request #13046 from SuperSamus/vi-overclock
...
Add VBI Frequency Override
2025-05-12 13:36:55 -04:00
Martino Fontana
c720211542
VideoCommon: Limit maximum denominator for MPEG4
...
It happened to be under the limit normally, but now that the VBI rate can be changed, that's no longer the case.
2025-05-12 18:54:42 +02:00
JMC47
b2e5d6df25
Merge pull request #13350 from iwubcode/custom_shader_overhaul_vertex_pos
...
VideoCommon: move transform matrices to accessible functions in VertexShaderGen
2025-05-10 01:20:28 -04:00
Tillmann Karras
6f25e20c6a
VideoCommon: reset some CP registers during PI_FIFO_RESET
...
This fixes the shutdown error in SpongeBob Globs of Doom.
2025-05-05 21:18:37 +01:00
Admiral H. Curtiss
380a9291ad
Merge pull request #13602 from jordan-woyak/move-only-function
...
Common: Add MoveOnlyFunction.
2025-05-04 17:28:06 +02:00
Jordan Woyak
5a80105555
Common and VideoCommon: Change texture data from std::vector to Common::UniqueBuffer.
2025-05-03 18:32:30 -05:00
iwubcode
e80ed595ac
VideoCommon: move position/normal matrices to be gettable by function in VertexShaderGen
2025-05-03 16:51:34 -05:00
JMC47
2b568566ac
Merge pull request #13535 from m-brodschi/mihaib/fix-shutdown-crash
...
Core, VideoCommon: Fix crash at shutdown due to destructor order
2025-05-01 21:29:02 -04:00
Dr. Dystopia
f240e20e3f
Make overriding explicit and remove redundant virtual specifiers on overriding destructors - Core & UnitTests
2025-05-01 15:00:37 +02:00
Dr. Dystopia
5c0cf0788f
VideoCommon/NetPlayChatUI: Replace msg with structured binding
2025-05-01 14:11:55 +02:00
Jordan Woyak
a149b9d62d
WorkQueueThread: Cleanups. Implement in terms of WaitableSPSCQueue. Add single producer WorkQueueThreadSP.
2025-04-30 14:31:51 -05:00
OatmealDome
0b0151770a
Merge pull request #13436 from JoshuaVandaele/clang-format-19
...
Update clang-format to version 19
2025-04-30 01:17:31 -04:00
Mihai Brodschi
bad78cfed4
Core, VideoCommon: Fix crash at shutdown due to destructor ordering
...
Previously, PerformanceTracker registered a callback to be updated on
emulation state changes. PerformanceTrackers live in a global variable
(g_perf_metrics) within libvideocommon. The callback was stored in a
global variable in libcore. This created a race condition at shutdown
between these libraries, when the PerfTracker's destructor tried to
unregister the callback.
Notify the PerfTracker directly from libcore, without callbacks, since
Core.cpp already references g_perf_metrics explicitly. Also rename
Core::CallOnStateChangedCallbacks to NotifyStateChanged to better
reflect what it's doing.
2025-04-28 07:11:53 +03:00
Jordan Woyak
37aa65afc4
VideoCommon: Use MoveOnlyFunction for AsyncRequests.
2025-04-27 20:07:13 -05:00
Dentomologist
45b9def42c
VideoConfig: Remove ConfigChangedCallback on shutdown
2025-04-25 16:00:43 -07:00
Tilka
5523b9a01b
Merge pull request #13487 from Dentomologist/performancemetrics_fix_window_arrangement
...
PerformanceMetrics: Fix window arrangement
2025-04-25 01:40:58 +01:00
Joshua Vandaële
2c54ee94c1
linter: Apply clang-format 19.1 formatting
...
find ./Source/ -name '*.cpp' -o -name '*.h' | xargs clang-format-19 -i
2025-04-23 11:19:20 +02:00
Jordan Woyak
af960651e8
Common: SPSCQueue cleanups and improvements.
2025-04-22 23:49:32 -05:00
Jordan Woyak
4aa056dd4d
BPStructs: Add TODO for unsafe usage of GetTicks.
2025-04-08 19:58:31 -05:00
JMC47
ee27f03a43
Merge pull request #13439 from jordan-woyak/perf-marker
...
Core: Move CountPerformanceMarker to VideoInterface to eliminate a Throttle call. PerformanceMetrics: Fixes/Cleanups.
2025-04-07 17:57:56 -04:00
Dentomologist
ec49ea5be3
PerformanceMetrics: Fix window arrangement
...
Fix overlays stacking on top of each other or not moving to the edge of
the screen when enabling or disabling overlays while emulation is
active.
This change only applies when Config::GFX_MOVABLE_PERFORMANCE_METRICS is
False.
2025-04-05 14:22:17 -07:00
Jordan Woyak
c42dab6388
Core: Move CountPerformanceMarker to VideoInterface to eliminate a Throttle call. PerformanceMetrics: Fixes/Cleanups.
2025-04-02 23:23:51 -05:00
iwubcode
ec36fce7c6
VideoCommon: fix a mali bug by moving the perf queries back to being close to the draw call, having them apart seems to cause errors on some devices
2025-04-01 18:32:42 -05:00
JMC47
9819d66a47
Merge pull request #13221 from mitaclaw/nrvo-fails-1
...
GCC: Remedy NRVO Fails
2025-03-29 03:26:46 -04:00
JMC47
932b4abdcf
Merge pull request #13457 from jordan-woyak/efb-access-fix
...
VideoCommon: Fix out-of-bounds and disabled EFB access.
2025-03-28 18:43:57 -04:00
Joshua Vandaële
3a1a60d4f8
Fix shadowed variable warnings and missing declarations
...
- PPCSymbolDB: Resolve shadowed variable warnings
- PerformanceMetrics: Resolve shadowed variable warnings
- SWEfbInterface: Add missing declarations
2025-03-27 21:48:08 +01:00
Jordan Woyak
e351f03cdf
VideoCommon: Fix out-of-bounds and disabled EFB access.
2025-03-26 01:23:16 -05:00
JMC47
ad3650abfc
Merge pull request #13093 from mitaclaw/ranges-modernization-4-projection
...
Ranges Algorithms Modernization - Projection
2025-03-23 15:56:13 -04:00
JMC47
cef4d8fb76
Merge pull request #13432 from iwubcode/custom_pixel_fragment
...
VideoCommon: move to a 'process_fragment()' function to simplify custom shaders
2025-03-23 15:21:48 -04:00
JMC47
28f1beeca8
Merge pull request #13398 from jordan-woyak/perf-tracker
...
PerformanceTracker: Eliminate mutex. General cleanups.
2025-03-23 15:21:11 -04:00
iwubcode
8e253518e6
VideoCommon: move to a 'process_fragment()' function to simplify custom shaders and provide a direct override of the tev stage logic
2025-03-22 15:22:00 -05:00
Jordan Woyak
561aee7707
Config: Expose Default and 1x Anisotropic Filtering setting.
2025-03-17 20:46:24 -05:00
Pokechu22
79a1e480ca
Enable anisotropic filtering when the game requests it
2025-03-17 20:46:19 -05:00
JosJuice
0299540209
Merge pull request #13397 from jordan-woyak/perf-metrics
...
PerformanceMetrics: Eliminated a mutex. Code cleanups.
2025-03-17 23:20:41 +01:00
OatmealDome
49bee36e6a
Merge pull request #13435 from iwubcode/uninitialized_directx
...
VideoCommon: initialize uninitialized state value in pixel ubershader
2025-03-16 14:56:44 -04:00
iwubcode
c5f89f2de9
VideoCommon: initialize uninitialized state value in pixel ubershader to prevent error on directx in some games
2025-03-16 11:35:56 -05:00
Jordan Woyak
48b2f7d200
VideoConfig: Eliminate frame dumping members.
2025-03-16 04:30:06 -05:00
JMC47
f4c37aeb14
Merge pull request #13423 from jordan-woyak/async-request-cleanup-1
...
AsyncRequests Cleanups.
2025-03-15 18:17:29 -04:00
JMC47
e3deb14156
Merge pull request #13347 from iwubcode/custom_shader_overhaul_lighting
...
VideoCommon: move lighting shader logic to callable functions
2025-03-15 17:26:32 -04:00
Jordan Woyak
46e0952e97
PerformanceTracker: Use SPSCQueue and atomic to eliminate need for a mutex. Clean up some math.
2025-03-15 14:40:00 -05:00
Jordan Woyak
c763961112
PerformanceTracker: Use std::deque instead of hand-rolled circular
...
queue.
2025-03-15 14:40:00 -05:00
Jordan Woyak
b2ce3fbefc
PerformanceTracker: Pass chrono values instead of us s64.
2025-03-15 14:40:00 -05:00
JosJuice
f2d1918714
Fix broken merge of PR #13181
...
This undoes one of the changes of PR #13181 . I'm guessing the relevant
code changed between when the PR was last pushed to and when it was
merged.
2025-03-15 17:23:39 +01:00
JosJuice
8c7ab286f5
Merge pull request #13181 from tygyh/Replace-'reinterpret_cast'
...
Replace 'reinterpret_cast' with 'static_cast'
2025-03-15 15:31:38 +01:00
JosJuice
3fb4084e25
Merge pull request #13345 from Tilka/unswap_depth
...
Fix depth texture being incorrectly affected by swap table
2025-03-15 14:30:19 +01:00
Jordan Woyak
2690a62949
Core: Remove unused GetActualEmulationSpeed function and related variables/functions.
2025-03-14 03:10:13 -05:00
Jordan Woyak
e1745f682f
PerformanceMetrics: Eliminated a mutex. Code cleanups.
2025-03-14 03:10:13 -05:00
Jordan Woyak
6c158ed590
VideoCommon: Create AsyncRequests directly in MMU code to eliminate EFB-related functions in VideoBackendBase.
2025-03-14 01:14:51 -05:00
Jordan Woyak
63b848ca93
VideoCommon: Eliminate EFBAccessType enum. Eliminate union and switch statement handler in AsyncRequests.
2025-03-14 00:59:41 -05:00
iwubcode
15372dc835
VideoCommon: move lighting shader logic to callable functions
2025-03-13 23:56:04 -05:00
JMC47
0e2785a562
Merge pull request #13387 from jordan-woyak/frame-pacing
...
CoreTiming: Improve frame pacing
2025-03-13 14:23:18 -04:00
Jordan Woyak
5b36c13bfb
VideoCommon: Rename Renderer to EFBInterface.
2025-03-12 21:09:16 -05:00
JMC47
de997d616f
Merge pull request #13416 from jordan-woyak/unused-viewport-correction
...
VertexShaderManager: Eliminate unnecessary m_viewport_correction member.
2025-03-11 19:00:55 -04:00
JMC47
b7bd0a0836
Merge pull request #13413 from jordan-woyak/vconfig-progressive
...
VideoConfig: Eliminate bForceProgressive.
2025-03-11 18:59:28 -04:00
JMC47
67c8d5640f
Merge pull request #13412 from jordan-woyak/netplay-vconfig
...
VideoConfig: Eliminate NetPlay related members.
2025-03-11 18:59:02 -04:00
JMC47
1698daef66
Merge pull request #13410 from jordan-woyak/movie-vconfig
...
Movie: Eliminate MovieManager::SetGraphicsConfig.
2025-03-11 18:58:45 -04:00
Jordan Woyak
c191ed5321
VertexShaderManager: Eliminate unnecessary m_viewport_correction member.
2025-03-11 03:55:57 -05:00
Jordan Woyak
de01a790e1
VideoConfig: Eliminate bForceProgressive.
2025-03-10 19:02:43 -05:00
Jordan Woyak
7f3d8a1ad4
VideoConfig: Eliminate NetPlay related members.
2025-03-10 18:53:44 -05:00
Jordan Woyak
44423a3656
Movie: Eliminate MovieManager::SetGraphicsConfig.
2025-03-10 18:16:49 -05:00
Jordan Woyak
7222188cde
Core/VideoCommon: Push presentation time calculated from CPU thread to GPU thread.
2025-03-10 16:40:46 -05:00
Jordan Woyak
fe2d247acb
VideoCommon: Don't merge EFBPoke AsyncRequests.
2025-03-10 16:37:24 -05:00
mitaclaw
433c6ce0f2
GCC: Remedy NRVO Fails
...
Using the `-Wnrvo` flag introduced by GCC 14, I identified a few places where NRVO was clearly intended, but is fumbled.
2025-03-10 12:38:03 -07:00
JMC47
5ed8b7bc9d
Merge pull request #13403 from jordan-woyak/backend_info
...
VideoCommon: Move backend_info out of VideoConfig struct.
2025-03-10 15:06:19 -04:00
mitaclaw
e4efe011d7
Modernize std::max_element with ranges and projections
2025-03-09 13:26:39 -07:00
mitaclaw
8b9f92a0af
Modernize std::sort with ranges and projections
...
In PPCTables.cpp, the code is currently unused so I was unable to test it.
In CustomPipeline.cpp, a pointer to member function cannot be used due to 16.4.5.2.1 of the C++ Standard regarding "addressable functions". https://eel.is/c++draft/namespace.std#6
In Fs.cpp and DirectoryBlob.cpp, these examples used projections in a previous iteration of this commit, but no longer do. Still, they remain in this commit because the PR they would actually belong to is already merged.
2025-03-09 13:26:38 -07:00
mitaclaw
62b2b939b5
Simplify std::find_if with std::ranges::find and projections
...
In LabelMap.cpp, the code is currently unused so I was unable to test it.
In WiiUtils.cpp, the magic value `1u` was replaced by the constant value `DiscIO::PARTITION_UPDATE`.
2025-03-09 13:26:35 -07:00
Jordan Woyak
c18c039089
VideoCommon: Move backend_info out of VideoConfig struct.
2025-03-09 01:42:45 -06:00
Jordan Woyak
7925240107
Core/VideoBackendBase: Call ExitGpuLoop from Core to eliminate Video_ExitLoop.
2025-03-07 17:30:33 -06:00
iwubcode
6dedf11c96
VideoCommon: mark 'WriteTexCoordTransforms' as 'static'
2025-03-02 11:27:54 -06:00
Tillmann Karras
4e460a7968
UberShaderPixel: use unswapped texture samples for depth
2025-02-25 18:45:01 +00:00
Tillmann Karras
359fb51d64
PixelShaderGen: use unswapped texture samples for depth
2025-02-25 18:45:01 +00:00
Dentomologist
0645a267d9
PerformanceMetrics: Add clamping, resetting on resize, and setting
...
Clamp overlays to the render window (with some padding), reset their
positions when the render window changes sizes, and add a setting to
enable moving the overlays (off by default, .ini only for now).
2025-02-24 13:17:57 -08:00
JMC47
43a6ec5bbd
Merge pull request #13353 from iwubcode/custom_shader_overhaul_vertex_texcoord
...
VideoCommon: move texcoord calculations to accessible functions in VertexShaderGen
2025-02-22 02:32:47 -05:00
JosJuice
af064c57de
Merge pull request #13219 from Tilka/cp_cleanup
...
VideoCommon: drop CP MMIO registers that were probably added in the wrong place
2025-02-17 21:27:19 +01:00
iwubcode
1ce78dd9b4
VideoCommon: move texcoord calculations to accessible functions in VertexShaderGen
2025-02-14 22:44:49 -06:00
Tillmann Karras
5db6bd6054
VideoCommon: simplify dither calculation
...
This saves three instructions on AMD GPUs. Dunno about Nvidia.
2025-02-11 19:23:37 +00:00
Tillmann Karras
19d954eaea
VideoCommon: remove CP readonly field, it's now always false
2025-02-08 11:46:49 +00:00
Tillmann Karras
84e72c185a
VideoCommon: drop CP MMIO registers that were probably added in the wrong place
...
I think someone confused these with the actual token and bounding box
registers in PE, which were added later. In CP they never did anything
and it's suspicious that they have the same addresses as their PE
counterparts. On real hardware they always read as zero.
2025-02-08 11:46:49 +00:00
Admiral H. Curtiss
05f217bd0b
Merge pull request #13330 from Dentomologist/performancemetrics_allow_moving_overlays
...
PerformanceMetrics: Allow users to move overlays
2025-02-06 21:56:57 +01:00
JosJuice
db285b7c87
Merge pull request #13319 from hoogmin/infinite-style-fix
...
Refactor: Infinite loop in AsyncShaderCompiler according to style guidelines
2025-02-06 18:31:28 +01:00
Javier Martinez
7dec083af5
Refactor: Make loop non-infinite instead in AsyncShaderCompiler.
2025-02-05 20:06:59 -05:00
Dentomologist
4b8e36cba9
PerformanceMetrics: Allow users to move overlays
...
Allow users to move the FPS, VPS, Speed, and Performance Graph overlays.
2025-02-02 19:40:01 -08:00
Dentomologist
f94e6cb73e
PerformanceMetrics: Call ImGui::End() unconditionally
...
Move ImGui::End() calls out of if(ImGui::Begin()) blocks.
Quoting from ImGui::Begin's function comment in imgui.cpp:
"You always need to call ImGui::End() even if false is returned."
In practice this didn't cause problems because the windows don't have
title bars and thus can't be collapsed, and so the block containing
::End would always run, but let's do it the right way.
2025-02-02 14:14:56 -08:00
OatmealDome
b5a0d293ae
Merge pull request #13305 from OatmealDome/vertexloader-config
...
VertexLoaderBase: Allow the vertex loader type to be set via config
2025-01-29 17:14:05 -05:00
JMC47
e16e3f9a61
Merge pull request #13291 from iwubcode/imgui_1_91_7
...
Externals / VideoCommon: update imgui to 1.91.7 and implot to v0.16
2025-01-28 20:57:28 -05:00
OatmealDome
bffaec9c5e
VertexLoaderBase: Allow the vertex loader type to be set via config
2025-01-24 18:31:42 -05:00
iwubcode
25c805be99
Externals / VideoCommon: update imgui to 1.91.7 and implot to v0.16; imgui changed types for ImTextureId, which was addressed by using an implicit cast
2025-01-20 14:47:14 -06:00
iwubcode
ee906ae6e8
VideoCommon: add formatter for AbstractTextureType
2025-01-20 14:24:54 -06:00
Admiral H. Curtiss
3ea870ef8c
Merge pull request #13244 from dreamsyntax/bugfix-double-osd-texture-messages
...
Core/VideoCommon: Fix duplicate OSD Custom Textures messages
2025-01-12 16:16:09 +01:00
Admiral H. Curtiss
7133bfbb0e
Merge pull request #13180 from jordan-woyak/eof-logic
...
Core/VideoCommon: Fix some weird (!eof) logic.
2025-01-08 05:27:42 +01:00
JMC47
6b686be5f1
Merge pull request #13233 from TryTwo/PR_Codec
...
AdvancedWidget: Replace FFV1 codec with Ut Video
2025-01-04 22:26:36 -05:00
mitaclaw
110d32729e
Simplify std::find with Common::Contains
...
In NandPaths.cpp, the `std::initializer_list<char>` of illegal characters has been turned into a `char[]` (similar to the one in GameList.cpp).
The reverse iteration in ResourcePack.cpp seemed to provide no benefits, and doing without it it seemed to have no ill effects.
2025-01-01 09:52:03 -08:00
Jordan Woyak
0938fca6e3
Core/VideoCommon: Fix some weird (!eof) logic.
2024-12-30 20:13:59 -06:00
TryTwo
3d248d000f
Frame Dumping: Change lossless codec from FFV1 to Ut Video.
...
Ut Video is faster and more compatible with editing programs, but produces larger files.
2024-12-30 14:07:43 -07:00
dreamsyntax
07f712f8a0
Core/VideoCommon: Fix duplicate OSD Custom Textures messages
...
Resolves duplicate OSD messages for Loading and Found custom textures.
VideoBackend initialization results in HiresTexture::Init being called.
We already call HiresTexture::Update when OnNewTitleLoad is called.
Thus we can remove HiresTextures::Init completely as it is redundant.
2024-12-28 01:09:50 -07:00
mitaclaw
2b0cd16c8c
Modernize std::none_of with ranges
...
In JitRegCache.cpp, the lambda predicate were replaced by a pointer to member function because ranges algorithms are able to invoke those.
In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates.
In BoundingBox.cpp, the lambda predicate was returning the bool element unchanged, so `std::identity` was a better fit.
2024-12-15 19:54:17 -08:00
mitaclaw
140252ffc0
Modernize std::any_of with ranges
...
In WiimoteReal.cpp, JitRegCache.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those.
In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates.
2024-12-15 19:54:16 -08:00
mitaclaw
860e6cf5cb
Modernize std::all_of with ranges
...
In DITSpecification.cpp, MaterialAsset.cpp, and ShaderAsset.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those.
In NetPlayClient.cpp, the non-trivial `NetPlay::Player` elements were being passed by value in `NetPlayClient::DoAllPlayersHaveGame()`. This has been fixed.
In WIABlob.cpp, the second example's predicate was returning the `std::optional` by value instead of implicitly converting it to a bool. This has been fixed.
2024-12-15 19:50:34 -08:00
Dr. Dystopia
6d44afc7dd
Replace 'reinterpret_cast' with 'static_cast'
2024-11-08 07:26:47 +01:00
Dentomologist
47a86d920f
GeneralWidget: Recommend default video backend in tooltip
...
Recommend the platform's default video backend in the Backend tooltip
instead of always recommending OpenGL.
2024-11-03 12:28:30 -08:00
Dentomologist
7b8610f4ea
VideoBackendBase: Clarify function name
...
Rename GetDefaultBackendName to GetDefaultBackendConfigName to
distinguish it from the display name.
2024-11-03 12:26:57 -08:00
TellowKrinkle
5ef4fcb005
VideoCommon: Implement primitive breaking for primitive lists
2024-10-29 22:38:22 -05:00
JMC47
05e3a52de0
Merge pull request #13135 from Tilka/warning
...
VideoCommon: fix -Wshadow-uncaptured-local warning and simplify
2024-10-19 15:12:25 -04:00
Tilka
fed8220c39
Merge pull request #12712 from Dentomologist/remove_defined_out_code
...
Remove defined-out code
2024-10-19 19:36:19 +01:00
JMC47
21f4319302
Merge pull request #13092 from mitaclaw/ranges-modernization-3-spaceship
...
Ranges Algorithms Modernization - Compare
2024-10-17 13:37:16 -04:00
Tillmann Karras
0e41adb7b7
VideoCommon: fix -Wshadow-uncaptured-local warning and simplify
2024-10-16 18:36:00 +01:00
JosJuice
07605bf67c
Merge pull request #13090 from mitaclaw/ranges-modernization-1-trivial
...
Ranges Algorithms Modernization - Trivial
2024-10-15 17:08:55 +02:00
JMC47
ef8b753cd7
Merge pull request #13115 from Tilka/syncfifo
...
VideoCommon: fix common opcode decoding errors
2024-10-14 21:26:08 -04:00
Pokechu22
937bb2aa2e
Cache normals in addition to binormals and tangents
...
Fixes LIT (https://bugs.dolphin-emu.org/issues/13635 ). The text does not include normals, but has lighting enabled. With the previous default of (0, 0, 0), lighting was always black (as dot(X, (0, 0, 0)) is always 0). It seems like the normal from the map in the background (0, 0, 1) is re-used.
LIT also has the vertex color enabled while vertex color is not specified, the same as SMS's debug cubes; the default MissingColorValue GameINI value of solid white seems to work correctly in this case.
2024-10-12 10:32:41 -07:00
Tilka
c1832d17f6
Merge pull request #13117 from mitaclaw/ranges-modernization-9-trivial-find
...
Ranges Algorithms Modernization - Find
2024-10-11 20:27:18 +01:00
mitaclaw
8b1975ab18
GraphicsMod: Simplify std::sort using ranges and projections
2024-10-11 12:08:22 -07:00
mitaclaw
e8d5fb89e4
C++20: Synthesize operator!= From operator==
...
The inequality operator is automatically generated by the compiler if `operator==` is defined.
2024-10-10 20:23:55 -07:00