Commit Graph
100 Commits
Author SHA1 Message Date
TellowKrinkle ea35619a78 Common: Add class for spinning GPUs 2022-10-24 14:33:17 +01:00
TellowKrinkle 65aeeba567 GHActions: Migrate to new variable output system 2022-10-20 09:30:00 +01:00
TellowKrinkle f37fd29fd0 CMake:Windows: Add install step 2022-10-19 15:50:43 -05:00
TellowKrinkle 310ed9af0d GHActions: Add CMake Qt build 2022-10-19 15:50:43 -05:00
TellowKrinkle 4e4ffa6526 CMake: Windows Qt build support 2022-10-19 15:50:43 -05:00
TellowKrinkle 8975f2d92c Qt: Add comment on ODR violation workaround 2022-10-19 15:50:43 -05:00
TellowKrinkle 1ad6605dfb GS:HW: Remove comment on rgba to 8i only-blue optimization
Doesn't seem to improve anything anymore (GPUs do this with csel now anyways, it's like 5 instructions with no divergence)
2022-10-17 10:28:27 +02:00
TellowKrinkle c6add663f8 GS:HW: Clean up ps_convert_rgba_8i 2022-10-17 10:28:27 +02:00
TellowKrinkle 1ac081ef4c Common: Make GL::Context::Create use gsl::span 2022-10-16 19:24:45 -05:00
TellowKrinkle 074e90d046 3rdparty: Add GSL
Version 4.0.0 (a3534567187d2edc428efd3f13466ff75fe5805c)
2022-10-16 19:24:45 -05:00
TellowKrinkle a2c3050c51 Common: Formatting 2022-10-16 19:24:45 -05:00
TellowKrinkle 8981572674 GS:HW: blend_mix doesn't get you fast hdr
It didn't before either, it just accidentally turned on full barriers
2022-10-16 05:09:02 +01:00
TellowKrinkle 9b5dd92dad GS:HW: Use 16-bit unorm for HDR 2022-10-11 18:17:27 +02:00
TellowKrinkle 4a7539cd06 GS:HW: Rename FloatColor to HDRColor
It will soon be not a float
2022-10-11 18:17:27 +02:00
TellowKrinkle 0637682eb0 GS:HW: Properly handle fbmask of negative values
Previously was possible with blending and colclip, but now more common with the new hdr algorithm
2022-10-09 04:06:59 +01:00
TellowKrinkle af1888b21a GHActions:macOS: Remove unused dependencies 2022-10-08 22:41:59 +01:00
TellowKrinkle fca61d68b0 GHActions:MacOS: Disable Qt gssapi support
Qt's build script picks up gssapi_krb5.dylib instead of GSS.framework on some MacOS SDKs, failing the build.  We don't need GSS, so disable it instead of patching
2022-10-08 22:41:59 +01:00
TellowKrinkle 954e9fc7c1 CMake: Prevent finding Mono.framework libpng 2022-10-08 22:41:59 +01:00
TellowKrinkle 73ae9f8879 GS:HW: Make HDR algorithm more float-precision-friendly
- Use whole numbers instead of 255ths
- Use range -128 - 127 instead of 0 - 255 for accumulation blends
2022-10-07 20:44:53 +02:00
TellowKrinkle 0f0543d3f6 PAD: Remove weird unused binary file 2022-09-16 00:52:28 -05:00
TellowKrinkle 738c8cb630 Core: Remove trailing whitespace from all files 2022-09-16 00:52:28 -05:00
TellowKrinkle 4c298ca484 GS: Add zequal to GSScanlineSelector to_string 2022-09-08 19:55:09 -05:00
TellowKrinkle 650dc8bc6a GS: Fix zequal handling in CDrawScanline
I somehow didn't use the same algorithm as the asm version originally
2022-09-08 19:55:09 -05:00
TellowKrinkle 81cafd21d0 GS:MTL: Don't override GSTexture::Save with a TODO
There's a working default implementation
2022-09-08 02:20:26 -05:00
TellowKrinkle 365c1c3f3e GS:MTL: Implement GPU usage tracking 2022-09-08 02:20:26 -05:00
TellowKrinkle fbc3120c47 GS:MTL: Ensure prim id init actually writes 2022-09-08 02:20:26 -05:00
TellowKrinkle 66093c3278 GS:MTL: Add barrier counting 2022-09-08 02:20:26 -05:00
TellowKrinkle 5fa35c5273 CMake:MacOS: Don't strip qt binaries 2022-09-07 01:18:34 -05:00
TellowKrinkle 95ad6b8ab4 GS:DX11: Add primid destination alpha support 2022-09-06 21:07:56 +02:00
TellowKrinkle 1b34eb14f8 GS: Pass through primitive ID in geometry shaders in DX12 and VK
Fixes primid destination alpha on sprites
2022-09-06 21:07:56 +02:00
TellowKrinkle 412480b326 GS: Don't add 10 to date flag to indicate initialization
We already have 1 and 2 dedicated to the job
2022-09-06 21:07:56 +02:00
TellowKrinkle 0500824e57 GS:Vk: Change primitive_id enable to match the new meaning
A bit messy, due to the fact that its support piggybacks on support of other features, instead of having a dedicated feature flag
2022-09-06 21:07:56 +02:00
TellowKrinkle 3e0f3d05e2 GS: Rename image_load_store capability to primitive_id
The algorithm it enables has changed for all renderers, and no longer needs image_load_store
2022-09-06 21:07:56 +02:00
TellowKrinkle 62f9b16139 GS:OGL: Use blend min for primid destination alpha 2022-09-06 21:07:56 +02:00
TellowKrinkle 80523828c7 GS:HW: Properly use primid dst alpha as a fallback to barrier dst alpha
Even when we would have otherwise used barrier over primid if both were supported
2022-09-06 21:07:56 +02:00
TellowKrinkle ea81b74e3b GS:OGL: Add fetch_rt function to shader 2022-09-04 23:02:44 -05:00
TellowKrinkle 1864440f5c GS:OGL: Support disabling texture barrier 2022-09-04 14:47:39 -05:00
TellowKrinkle 517f3b7709 GS:HW: Don't skip FBW 0 2022-09-01 11:01:50 +02:00
TellowKrinkle 603f863b71 GS: Don't clamp fbw to 1
fbw zero is a thing
2022-09-01 11:01:50 +02:00
TellowKrinkle e40a93e389 GS: Don't clamp scissor to fbw
HW tests indicate this doesn't happen
2022-09-01 11:01:50 +02:00
TellowKrinkle e89612e5b9 GS: Use accumulation blend when alpha is known to be 1 2022-08-31 18:17:43 +02:00
TellowKrinkle f4a56ae106 GHActions:macOS: Use ccache 2022-08-28 18:35:03 -05:00
TellowKrinkle 280316dceb Qt: no-pch support 2022-08-28 18:35:03 -05:00
TellowKrinkle 693790a19f GS:MTL: Expand lines and sprites in vertex shader 2022-08-26 01:18:00 -05:00
TellowKrinkle ce34fbe502 3rdparty: Update cubeb 2022-08-25 15:16:46 +02:00
TellowKrinkle 562e9bfebb GS:FindMinMax: sprites use flat Z and color 2022-08-25 15:15:07 +02:00
TellowKrinkle c2fbe5c606 GS: Fix up FindMinMax handling of swapped lines and final triangles 2022-08-25 15:15:07 +02:00
TellowKrinkle f53cb0fae7 GS: Reduce FindMinMax instantiation count 2022-08-25 15:15:07 +02:00
TellowKrinkle e55825fd88 GHActions:Windows:CMake: Properly exit on failed build 2022-08-23 03:32:26 -05:00
TellowKrinkle a50a9fcf9a GHActions: CMake builds are SSE4 2022-08-23 03:32:26 -05:00
TellowKrinkle ce8679a978 CMake: Use full LTO
Speeds up Vulkan backend a bit compared to LTO_PCSX2_CORE, since Vulkan calls into a lot of common methods
2022-08-23 03:32:26 -05:00
TellowKrinkle 5d6348fbf9 CMake: Add GS- flag to MSVC bulds 2022-08-23 03:32:26 -05:00
TellowKrinkle 63e9d47f09 CMake: Add SPU and GS to LTO_PCSX2_CORE LTO 2022-08-23 03:32:26 -05:00
TellowKrinkle 8cc7343201 GHActions: Publish PDB for cmake builds 2022-08-23 03:32:26 -05:00
TellowKrinkle 2aabd54e6a GHActions: Disable buildcache on windows
Not compatible with PDB
2022-08-23 03:32:26 -05:00
TellowKrinkle bb56f274c8 CMake: Enable PDB generation in Release builds 2022-08-23 03:32:26 -05:00
TellowKrinkle 241d7335e4 SDL2: Remove mac crash workaround for SDL 2.0.22
2.24 is here!
2022-08-23 03:24:57 -05:00
TellowKrinkle bc7037bb52 3rdparty: Upgrade SDL to 2.24 2022-08-23 03:24:57 -05:00
TellowKrinkle e7e5814214 3rdparty: Sort SDL vcxproj entries 2022-08-23 03:24:57 -05:00
TellowKrinkle 91601e5647 GS: Manually do bilinear sampling when converting RGBA to depth
Shader bilinear doesn't properly handle the case where r overflows into g (or g overflows into b, etc)
2022-08-20 10:12:24 +01:00
TellowKrinkle 882c09b870 Vulkan: Format convert.glsl 2022-08-20 10:12:24 +01:00
TellowKrinkle 48d3d38e84 GS: Fix wx replayer readbacks
WX runs GS commands directly, so GS isn't open
2022-08-18 20:35:35 -05:00
TellowKrinkle cb64e8d504 GS:HW: More accurate blend equation for blend mix 2022-08-13 00:01:23 +02:00
TellowKrinkle 8b375d66fa GHActions:MacOS: Don't fail on failed brew unlink
If brew can't unlink them, they're not there and there's no need to do anything
2022-08-10 04:28:31 -05:00
TellowKrinkle e5405e191b Metal: Fix ImGui renderer
Turns out those were bitcasts, not conversions
2022-06-18 15:32:46 -05:00
TellowKrinkle 04681babf1 Common: Add assertion failure message to crashlogs 2022-06-15 16:23:32 -05:00
TellowKrinkle 77471bd9d6 GS: Avoid using both blending and fbfetch 2022-06-10 14:40:30 +02:00
TellowKrinkle 347736f2b4 GHActions:macOS: Add Qt SVG plugin 2022-06-04 22:28:15 -05:00
TellowKrinkle cba6a6ec51 Qt: Add preferences button to menu system
Important on macOS to get the expected keyboard shortcut
2022-06-04 14:50:33 +01:00
TellowKrinkle d74623faf9 Qt: Support DPI change events 2022-06-04 14:50:33 +01:00
TellowKrinkle db4bf08475 GHActions:macOS: Add Qt build 2022-06-04 14:50:33 +01:00
TellowKrinkle f9c2327bf5 Qt: Respond to dark/light mode changes 2022-06-04 14:50:33 +01:00
TellowKrinkle beab9870cf Common: Move ObjC methods to CocoaTools 2022-06-04 14:50:33 +01:00
TellowKrinkle dbfb93a50f Qt: Calculate icon theme from palette instead of name 2022-06-04 14:50:33 +01:00
TellowKrinkle 6b66cd7f29 Qt: Remove [Light] from Native theme
It's whatever your system theme is set to, be that light or dark
2022-06-04 14:50:33 +01:00
TellowKrinkle 08089e0654 Qt: Set isMask to true on menu items
Prevents icons from being the wrong color when the Qt theme doesn't match the macOS system theme (or when you use Native theme with dark mode)
2022-06-04 14:50:33 +01:00
TellowKrinkle b2ef973f16 Qt: Fix game summary field size on macOS 2022-06-04 14:50:33 +01:00
TellowKrinkle d862f8cd53 Qt: Fix SDL initialization crash on macOS 2022-06-04 14:50:33 +01:00
TellowKrinkle 9c61e9eda3 Qt: Mac build 2022-06-04 14:50:33 +01:00
TellowKrinkle fc06963c56 Common: Implement screensaver prevention on macOS 2022-05-30 16:38:01 -05:00
TellowKrinkle 98947c10bb wx: Fix assert on settings panel 2022-05-30 09:48:13 +01:00
TellowKrinkle 6aa7266084 Core: Fix LnxFlatFileReader FinishRead return 2022-05-30 09:46:53 +01:00
TellowKrinkle bd5656bf89 Core: Fix DarwinFlatFileReader FinishRead return
Looks like the return value is expected to be the number of bytes read
2022-05-30 09:46:53 +01:00
TellowKrinkle 1e4795e653 CDVD: BlockDumpFileReader formatting 2022-05-30 09:46:53 +01:00
TellowKrinkle 9084ef35b4 GS:SW: Restore zequal for optimization 2022-05-26 03:51:39 -05:00
TellowKrinkle e58b1054ea GS:SW: Use restrict on DrawTriangleSection
Improves compiler optimization
2022-05-26 03:51:39 -05:00
TellowKrinkle 24de0866f7 GS:SW: Don't interpolate xy fields for scanlines
By that point, xy is what's being used to advance the scanline and won't be needed as a parameter
2022-05-26 03:51:39 -05:00
TellowKrinkle 0cec99361b GS:SW: Use floats for zskip 2022-05-26 03:51:39 -05:00
TellowKrinkle 8ba745030a GS:SW: Hold double z in registers more 2022-05-26 03:51:39 -05:00
TellowKrinkle 4ddf897719 GS:SW: Use doubles for Z calculation 2022-05-26 03:51:39 -05:00
TellowKrinkle 9be7eb67d8 GS:SW: Rearrange GSVertexSW members to better match planned DoubleZ arrangement
Note: Removes zequal.  DoubleZ will fix, but until then things will break
2022-05-26 03:51:39 -05:00
TellowKrinkle 56bba522ac GS:SW: Unvectorize unneccessarily-vectorized things 2022-05-26 03:51:39 -05:00
TellowKrinkle b6c1b3fb96 GS: Add double operations to GSVector/GSNewCodeGenerator 2022-05-26 03:51:39 -05:00
TellowKrinkle 82de13d95a GS: Better cxpr GSVector init 2022-05-26 03:51:39 -05:00
TellowKrinkle 92dd6fb575 GHActions: Improve macOS artifact name for tagged builds 2022-05-26 03:26:12 -05:00
TellowKrinkle ced58a047d CMake: Set fp-contract=fast
Clang defaults to off, everyone else defaults to on or fast.  Allows multiplies and adds to be merged into fma
2022-05-25 21:56:21 -05:00
TellowKrinkle bd3e1299a3 GS:MTL: Disable blending when color isn't written
Can come up in two-pass alpha, and Metal doesn't like it if blending uses SRC1 and your shader doesn't output it
2022-05-09 17:43:47 +01:00
TellowKrinkle 3a97688804 GS: Fix TextureMinMax when coordinates are completely outside of min/max 2022-05-09 17:43:47 +01:00
TellowKrinkle 3f027b2698 GS:SW: Clamp Z with unsigned clamp 2022-05-09 17:34:19 +01:00
TellowKrinkle 335633a5e0 CI: Update SDL 2022-05-09 10:28:58 -05:00