Commit Graph

4980 Commits

Author SHA1 Message Date
Admiral H. Curtiss 715a551dac
Merge pull request #12170 from Filoppi/custom_aspect_ratio
Add support for custom aspect ratios
2023-12-18 05:19:06 +01:00
Filoppi a6dfeed318 Video: make the "Auto" resolution setting also follow the max res setting, to avoid trying to create texture bigger than the maximum supported one 2023-12-18 02:00:25 +02:00
Filoppi ff03189a60 Video: fix auto resolution scale calculations 2023-12-18 02:00:25 +02:00
Filoppi fdd1934f12 Video: fix Auto Resolution Scale not updating when the window was resized.
Also fixes the widescreen hack not fully updating when the aspect ratio setting changed on the spot.
2023-12-18 02:00:25 +02:00
Filoppi b3aa6ad93b Video: implement custom aspect ratio support (already exposed to Qt).
This also renamed some variables/functions.
2023-12-18 02:00:24 +02:00
Filoppi f96bea95d8 Video: rename Presenter::SetWindowSize() 2023-12-18 00:28:15 +02:00
Filoppi 24004af814 Video: polish aspect ratio related code comments to make it clearer 2023-12-18 00:28:14 +02:00
Mai bcd74a81a9
Merge pull request #12370 from iwubcode/more_samplers
VideoBackends / VideoCommon: update max pixel shader samplers from 8 to 16
2023-12-17 14:50:23 -05:00
Mai 0125b5182f
Merge pull request #12409 from iwubcode/custom_material_graphics_mod_action_data
VideoCommon: prepare graphics mods for custom shader material data
2023-12-17 14:42:34 -05:00
Mai b27c15fab6
Merge pull request #12382 from iwubcode/shader_asset_default_value
VideoCommon: update shader asset to provide a variant default value
2023-12-17 14:41:55 -05:00
Mai f589c04aa7
Merge pull request #12372 from iwubcode/texture_usage_flag
VideoBackends / VideoCommon: add type enum to dictate how the texture is used; support texture 2d
2023-12-17 14:40:39 -05:00
Admiral H. Curtiss 190c4e8cda
Merge pull request #12427 from JosJuice/jitarm64-msr-updated-logical-imm
JitArm64: Fix MSRUpdated(ARM64Reg) with FEATURE_FLAG_PERFMON set
2023-12-16 17:22:23 +01:00
JosJuice e0eb4ef5bc JitArm64: Use enum class for LogicalImm size parameter
This should prevent issues like the one fixed in the previous commit
from happening again.
2023-12-16 16:48:26 +01:00
iwubcode 12dd15c8dd VideoBackends / VideoCommon: add type enum to dictate whether a texture is a 2D texture, a texture array, or a cube map; support 2D texture type across backends
Co-authored-by: TellowKrinkle <tellowkrinkle@gmail.com>
2023-12-15 11:06:02 -06:00
iwubcode b1d9e13d75 VideoCommon: prepare graphics mods for custom shader material data 2023-12-12 17:56:26 -06:00
Mai ea3033731d
Merge pull request #12240 from iwubcode/material_asset_additional_properties
VideoCommon: add additional data types to material asset
2023-12-12 18:38:20 -05:00
Tillmann Karras 5b4b8dba61 VideoCommon: add message to XF load assert 2023-12-12 22:35:02 +00:00
Lioncash a812a1f938 LightingShaderGen: Resolve -Wshadow warnings
Given how the lambda doesn't capture anything, we can move this to a
internally linked function, which prevents any name shadowing.
2023-12-12 16:55:06 -05:00
Tilka 4d98c237c7
Merge pull request #12371 from lioncash/span
VideoCommon: Use std::span for BoundingBox::Write()
2023-12-12 20:47:08 +00:00
iwubcode b69d336838 VideoCommon: update shader asset to provide a variant default value 2023-12-12 00:01:22 -06:00
Lioncash 4c7a4831cb CustomAssetLibrary: Remove unused GetAssetSize() function
There's a direct analogue of this function within
DirectFilesystemAssetLibrary that *is* used, however, so we can get rid
of this one.
2023-12-11 22:00:52 -05:00
Lioncash 49f44c1334 VertexManagerBase: Resolve -Wsign-compare warning 2023-12-11 18:00:34 -05:00
Admiral H. Curtiss 4f02f526b8
Merge pull request #12392 from lioncash/decl
General: Resolve -Wmissing-declaration warnings
2023-12-11 23:39:23 +01:00
Admiral H. Curtiss 54301d709a
Merge pull request #12389 from lioncash/cheeve
AchievementManager: Make GetInstance() and GetLock() return a reference
2023-12-11 23:37:29 +01:00
Lioncash e8b4796273 PostProcessing: Mark helper functions as static
These didn't have any prototypes and were generating
-Wmissing-declaration warnings.
2023-12-11 17:07:59 -05:00
Lioncash abb5cc3a3a ShaderAsset: Mark ParseShaderProperties() as static
This had no function prototype, so this can be internally linked.

Resolves a -Wmissing-declaration warning.
2023-12-11 17:05:06 -05:00
Lioncash 2b2ee61e79 CustomShaderCache: Resolve -Wreorder warnings
Lays out the initializer lists to be in the same order that
initialization would occur in.
2023-12-11 16:59:03 -05:00
Lioncash d90537cc18 AchievementManager: Return by reference from GetLock()
This makes the API a little nicer to use, since you don't need to do
a mandatory dereference when passing the lock into any kind of scope
guard.
2023-12-11 13:51:50 -05:00
Lioncash e55f9ed102 AchievementManager: Make GetInstance() return a reference
The internal static member will always have a valid lifetime. Makes this
consistent with other instance based objects in our code.
2023-12-11 13:36:39 -05:00
iwubcode ac862b04ab VideoBackends / VideoCommon: update max pixel shader samplers from 8 to 16, this allows us to support more samplers than the native Wii/GC 2023-12-10 18:14:02 -06:00
iwubcode 02756be381 VideoCommon: prevent a potential custom texture crash that can occur when a shared_ptr gets released while a pointer to its member data is still being used 2023-12-09 23:43:40 -06:00
Lioncash 0df7908025 VideoCommon/Present: Remove use of g_presenter inside Presenter class
There's no need to self reference a global of the class itself when we
can just call the function directly.
2023-12-09 20:15:32 -05:00
Lioncash 5f6c76af51 VideoCommon: Use std::span for BoundingBox::Write()
Crosses off a lingering TODO.

Also amends a few nearby cases where a u32 cast was being repromoted to
size_t.
2023-12-09 16:33:21 -05:00
LillyJadeKatrin e992225b88 Bugfix - small square in bottom right corner
Fixed a bug in OSUI created by the challenge icons that caused a small rectangle to appear in the bottom right corner of the screen.
2023-12-08 00:33:29 -05:00
LillyJadeKatrin caa729f84a Display Active Challenges On Screen
The active challenges, aka the primed achievements, are displayed on screen as a series of icons in the bottom right corner of the screen via OnScreenUI.
2023-12-07 16:02:15 -05:00
iwubcode e204b3c8ee VideoCommon: add additional data types (int, int2, float, bool, etc) as properties of materials and some helper functions to support sending the data to the GPU 2023-12-04 00:12:31 -06:00
Pokechu22 69cf8b3470 VertexLoader: Use Common::SmallVector 2023-12-02 15:54:52 -08:00
Pokechu22 4116344785 VertexLoader: Remove unnecessary calls to VertexLoader_TextCoord::GetDummyFunction 2023-12-02 15:54:52 -08:00
Pokechu22 36796abc08 VertexLoader: Fix wrong array being used if color 1 is present but color 0 isn't
This worked correctly on the JIT vertex loaders, and for the equivalent case with texture coordinates. I'm not aware of any games this affects (but libogc does mention a semi-related scenario at 6bc0317c7d/gc/ogc/gx.h (L1855-L1857).)
2023-12-02 15:54:52 -08:00
Pokechu22 1ee6824324 VertexLoaderTest: Add test for skipped texture coordinates
Jimmie Johnson's Anything with an Engine is known to use texture coordinate 7 (and only texture coordinate 7) in some cases. There are a lot of possible edge-cases, so this test brute-forces all combinations with coordinates 0, 1, and 2.
2023-12-02 15:54:52 -08:00
Zopolis4 f0d2ce4683
Remove _M_X86 in favour of _M_X86_64 2023-11-28 23:03:20 +11:00
Mai 731013c316
Merge pull request #12263 from Dentomologist/realtime_cheatsearch_update
CheatSearch: Automatically update Current Values
2023-11-28 04:17:06 +01:00
Tilka b8a897fda7
Merge pull request #12328 from iwubcode/xf_state_manager
VideoCommon: move xf state management to its own class
2023-11-28 02:04:26 +00:00
iwubcode fb86c6342e VideoCommon: move texture dump function out of texture cache to its own free function so it can be used elsewhere. Doing this change may also slightly improve performance of this operation 2023-11-26 16:35:03 -06:00
iwubcode 849a0c13b5 VideoCommon: move xf state management to its own class, so changes can be detected in places other than VertexShaderManager 2023-11-26 16:27:26 -06:00
JosJuice 3d5f95b298
Merge pull request #12297 from Filoppi/improve_paper_white
Change HDR paper white default to 203 to match the ITU recommendations
2023-11-26 18:03:39 +01:00
Lioncash 04011373f3 CustomAssetLibrary: Remove unnecessary qualifier in LoadInfo
The type is already in visible scope, so we don't need the rather length
qualifier.
2023-11-25 18:01:44 -05:00
Lioncash b85902ccb5 CustomAssetLibrary: Add virtual destructor
This is used as a base pointer inside CustomPipelineAction, so this
should probably really have a virtual destructor to ensure derived
objects are torn down properly.
2023-11-25 18:01:17 -05:00
Filoppi a8fd938a06 Change paper white default to 203 to match the ITU 2023-11-14 20:21:34 +02:00
Pokechu22 3984d1964b Fix accidental fallthrough in BPStructs
This caused us to update the indirect texture information in shaders more often than we needed to, which probably doesn't matter in practice since it's only used in ubershaders and copyyscale and stride are generally only updated before EFB/XFB copies, which generally will have other changes afterwards.
2023-11-12 10:39:56 -08:00