5124 Commits

Author SHA1 Message Date
Tillmann Karras
ac9079f2ca VideoCommon: copy software renderer logic for blend mode priorities
I've not tested this on hardware, but it fixes issue 12271 (shadow
people in Deal or No Deal - Special Edition).
2023-11-12 05:51:28 +00:00
Pokechu22
9543555bfe Fix typo in comment for bpmem.texcoords 2023-11-11 16:13:37 -08:00
Dentomologist
fdb7328c73 CheatSearch: Update Current Values at end of frame
At the end of each frame automatically update the Current Value for
visible table rows in the selected and visible CheatSearchWidget (if
any). Also update all Current Values in all CheatSearchWidgets when the
State changes to Paused.

Only updating visible table rows serves to minimize the performance cost
of this feature. If the user scrolls to an un-updated cell it will
promptly be updated by either the next VIEndFieldEvent or the State
transitioning to Paused.
2023-10-31 17:34:31 -07:00
JosJuice
899d61bc7d Jit64: Recompile asm routines on cache clear
This is needed so that the checks added in the previous commit will be
reevaluated if the value of m_enable_dcache changes.

JitArm64 was already recompiling its asm routines on cache clear by
necessity. It doesn't have the same setup as Jit64 where the asm
routines are in a separate region, so clearing the JitArm64 cache
results in the asm routines being cleared too.
2023-10-31 19:43:49 +01:00
Tilka
2212a5b225
Merge pull request #12254 from AdmiralCurtiss/savestate-no-xfb-stride
VideoCommon: Don't swap on state load when there's no XFB.
2023-10-28 02:14:30 +01:00
Admiral H. Curtiss
4f0c8b1657
VideoCommon: Don't swap on state load when there's no XFB.
This triggers an assert in TCacheEntry::SetXfbCopy() otherwise if you load a savestate that was made before the first XFB has been rendered.
2023-10-25 18:24:42 +02:00
TellowKrinkle
323aea60d6 VideoCommon: Fix VS point/line on older GLSL 2023-10-24 23:18:01 -05:00
Admiral H. Curtiss
cb13ad7a5f
VideoCommon: Add support for icons in OSD messages. 2023-10-17 02:47:29 +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
iwubcode
fec2a8af8c VideoCommon: add additional properties to ShaderAsset to support custom shader uniforms 2023-10-16 19:02:27 -05: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
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
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
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
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
get
63467559b2
fmt 10.0.0-10.1.1 compile fixes
Implicit conversion operators and enums was removed for parity with std::format (fce74caa15).
2023-09-21 01:19:23 +02:00
Admiral H. Curtiss
1a821465f4
Merge pull request #12166 from iwubcode/cubemap_shader_texture_integration
VideoCommon: add cubemap to ShaderAsset and TextureAsset
2023-09-12 16:56:26 +02:00
Jordan Woyak
7cc4304918 VideoCommon: Expose the widescreen heuristic's standard and widescreen ratio values in onion config. 2023-09-06 18:45:28 -05:00
iwubcode
589834f562 VideoCommon: add cubemap as a sampler target for shaders, add cubemap as a valid texture asset 2023-09-05 21:11:19 -05:00
JMC47
76a00551d1
Merge pull request #11419 from OatmealDome/widescreen
VideoCommon: Allow widescreen heuristic's constants to be overridden by onion config
2023-09-05 13:25:07 -04:00
OatmealDome
4938b99600 VertexManagerBase: Allow widecreen heuristic constants to be overriden by onion config 2023-09-05 11:50:49 -04:00
OatmealDome
de781a6fa7 RenderBase: Allow widescreen heuristic's transition threshold to be overridden by onion config 2023-09-05 11:49:22 -04:00
JMC47
9419d92446
Merge pull request #12139 from iwubcode/more_shader_texture_properties
VideoCommon: add additional texture sampler types to ShaderAsset
2023-09-04 22:45:56 -04:00
JMC47
82ea4f4c70
Merge pull request #12137 from iwubcode/custom_pipeline_more_error_checking
VideoCommon: additional error checking for CustomPipelineAction
2023-09-04 22:43:41 -04:00
JMC47
627282473b
Merge pull request #12136 from iwubcode/texture_metadata_struct
VideoCommon: add TextureData structure with metadata
2023-09-04 22:40:50 -04:00
JMC47
900439ea0d
Merge pull request #12102 from iwubcode/cubemap_custom_texture
VideoCommon: add ability to load cube maps into custom texture data
2023-09-03 18:29:00 -04:00
Sketch
fb852a5062 VideoCommon: Deinit Graphics Mod Manager implicitly 2023-09-03 16:06:08 -04:00
Admiral H. Curtiss
46a596c0d3
Merge pull request #12148 from Dentomologist/fifo_convert_memoryupdate_type_to_enum_class
Fifo: Convert MemoryUpdate::Type to enum class
2023-09-03 03:34:35 +02:00
iwubcode
62fee2f3b6 VideoCommon: add loading cube maps from DDS files and loading it into our custom texture object. Custom texture object now has the concept of slices in addition to levels. Traditional custom textures have a single slice 2023-09-02 20:20:09 -05:00
Dentomologist
9cabf20aaa Fifo: Convert MemoryUpdate::Type to enum class 2023-09-02 18:19:26 -07:00
Dentomologist
d5d3eb5025 TextureCacheBase: Add m_ prefix to member variables 2023-09-01 22:52:17 -07:00
Admiral H. Curtiss
69db8a615f
Merge pull request #12145 from JosJuice/ubershaderpixel-uint
VideoCommon: Fix GLSL uint handling in UberShaderPixel
2023-08-29 12:33:54 +02:00
Admiral H. Curtiss
df120b0630
Merge pull request #12000 from Filoppi/window_res_fix
Video: Fix issues with the window presentation
2023-08-28 23:50:50 +02:00
JosJuice
5b112dbf2c VideoCommon: Fix GLSL uint handling in UberShaderPixel 2023-08-28 21:17:01 +02:00
iwubcode
f982c556b5 VideoCommon: add additional texture sampler types to ShaderAsset 2023-08-26 12:12:37 -05:00
Admiral H. Curtiss
2502e412b3
Merge pull request #12117 from JosJuice/config-callback-cpu
Don't call RunAsCPUThread in config callbacks
2023-08-26 16:34:46 +02:00
Admiral H. Curtiss
5c4671f573
Merge pull request #12126 from JosJuice/small-vector
Move SmallVector to Common
2023-08-26 14:15:18 +02:00
iwubcode
9223540bf4 VideoCommon: additional error checking for CustomPipelineAction and move the pixel shader asset cache time back to being calculated during texture creation 2023-08-24 00:47:48 -05:00
iwubcode
7c52a52440 VideoCommon: add TextureData structure that contains the raw texture data, a sampler, and the type of texture information 2023-08-24 00:35:31 -05:00
JosJuice
ba99d17ac0 VideoCommon: Fix custom shader constants on GLES 2023-08-22 19:38:18 +02:00
JosJuice
6e88c44d5d Move SmallVector to Common
We had one implementation of this type of data structure in Arm64Emitter
and one in VideoCommon. This moves the Arm64Emitter implementation to
its own file and adds begin and end functions to it, so that VideoCommon
can use it.

You may notice that the license header for the new file is CC0. I wrote
the Arm64Emitter implementation of SmallVector, so this should be no
problem.
2023-08-22 13:19:49 +02:00
iwubcode
55fba7c0ed
VideoCommon/GraphicsModAsset: Error out if config key is not a string. 2023-08-22 02:40:08 +02:00
iwubcode
5506121685 VideoCommon: add support to graphics mod manager to load in assets and pass it to graphics actions 2023-08-20 18:53:27 -05:00
iwubcode
6ea0d17802 VideoCommon: when graphics settings change, trigger a reload of all custom shaders 2023-08-20 18:53:27 -05:00
iwubcode
931a8aa413 VideoCommon: add milliseconds elapsed time value to pixel shaders as a uniform to be able to support animation effects in custom shaders 2023-08-20 18:53:27 -05:00
iwubcode
c7191382be VideoCommon: add custom pipeline action 2023-08-20 18:53:27 -05:00
iwubcode
d320366954 VideoCommon: add custom shader cache to VertexManagerBase, supporting custom pixel shaders by replacing the existing pipeline with a modified one 2023-08-20 18:53:27 -05:00
iwubcode
bedbf2b8c6 VideoCommon: add custom shader cache 2023-08-20 18:53:27 -05:00
iwubcode
dbaf24ef09 VideoCommon: add data needed to support custom pixel shaders to graphics mod actions 2023-08-20 18:53:27 -05:00