Commit Graph

27841 Commits

Author SHA1 Message Date
44951a4cbc use fmt as static library instead of headers
reportedly improves compile time
2022-04-26 16:32:29 -07:00
01d4a2e9cc TextureCacheBase: Don't log error while measuring state size. 2022-04-26 21:26:42 +02:00
c0488de482 Merge pull request #10251 from Pokechu22/negative-scissor
Rework scissor handling
2022-04-24 15:00:42 -04:00
8e7c848425 Merge pull request #10601 from Pokechu22/vulkan-shader-compile-error
Vulkan: Improve shader compile error handling
2022-04-24 11:43:10 -07:00
c42392c565 Merge pull request #10290 from OatmealDome/m1-earlyz-bug
DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs
2022-04-24 13:30:04 -04:00
61edcf7e4f Merge pull request #10606 from AdmiralCurtiss/memory-widget-refactoring-1
Qt/MemoryWidget: Light refactoring and quality of life features.
2022-04-24 18:02:19 +02:00
787e3efeb8 Qt/MemoryViewWidget: Detect row breakpoint cell by cell data instead of cell position. 2022-04-24 16:22:36 +02:00
6920a24f1d Qt/MemoryViewWidget: Add option to copy the actually displayed cell value to clipboard. 2022-04-24 16:22:36 +02:00
54ec0bd0d0 Qt/MemoryViewWidget: Don't use a member variable to hold information about the current mouse click. 2022-04-24 16:14:42 +02:00
6abf367676 Merge pull request #10588 from JosJuice/jitarm64-psq-stxx-q0
JitArm64: Always lock Q0 in psq_stXX
2022-04-24 10:37:45 +02:00
26f9c8b847 Qt/MemoryWidget: Don't force a fixed size for the sidebar. 2022-04-24 05:24:20 +02:00
4c080b8451 Merge pull request #10578 from TryTwo/PR_MemoryWidget_Dual_Views
Debugger MemoryWidget: Add dual views
2022-04-23 22:23:31 +02:00
e0afcb3b94 Merge pull request #10540 from nyanpasu64/fix-gcadapter-atomics
Remove atomic usage and fix mutex locking in GCAdapter code
2022-04-23 22:04:10 +02:00
8b5a61b8fd Merge pull request #10599 from shuffle2/libusb
Libusb fixups
2022-04-23 20:32:47 +02:00
a7111e3910 Dual View any size. 2022-04-23 02:46:25 -07:00
14f9ffeb02 JitArm64: Add documentation comment for EmitBackpatchRoutine 2022-04-23 11:37:52 +02:00
784079853d VideoCommon: Add comment explaining why only the first normal gets normalized
Co-authored-by: Scott Mansell <phiren@gmail.com>
2022-04-22 16:54:38 -07:00
2a5c77f43f VideoCommon: Handle emboss texgen with only a single normal
Fixes a large number of effects in Rogue Squadron 2 and 3.
2022-04-22 16:54:38 -07:00
39b2854b98 VertexLoader: Convert count register to remaining register
This more accurately represents what's going on, and also ends at 0 instead of 1, making some indexing operations easier.  This also changes it so that position_matrix_index_cache actually starts from index 0 instead of index 1.
2022-04-22 16:54:38 -07:00
97d0ff58c8 Convert vertex loader position cache to std::array 2022-04-22 16:54:38 -07:00
f722bdf7f1 VertexLoaderX64: Refactor so that zfreeze is only in one place
(Specifically, the copy for VertexLoaderManager::position_cache.  The position matrix index happens elsewhere, and the float path still has special logic to copy to scratch3.)
2022-04-22 16:54:38 -07:00
6f1350ae51 VertexLoaderARM64: Fix z-freeze position matrix index
Before, it would always write to index 0 (which is unused).  Now it writes to the correct index.
2022-04-22 16:54:38 -07:00
04fdadd9d5 VideoCommon: Rename norm0/norm1/norm2 to normal/tangent/binormal 2022-04-22 16:54:36 -07:00
88134a6786 VertexShaderGen: Simplify normal calculation
This is a readability change; there should be no functional or performance differences.
2022-04-22 16:51:58 -07:00
0f92ab380e Vulkan: Include the info log in the shader compile error panic alert
The other backends do this, and it is helpful for quickly identifying errors during development.
2022-04-22 16:38:35 -07:00
7ae71e643e Vulkan: Close the output stream on shader compile error before showing the panic alert
This fixes the file showing up as 0 bytes in Windows Explorer (although the file would still display properly when opened).
2022-04-22 16:37:43 -07:00
12cd81bdb3 GCAdapter: don't call libusb_detach_kernel_driver on apple 2022-04-22 09:56:47 -07:00
5cd3cf9072 GCAdapter: fix retval check of libusb_detach_kernel_driver 2022-04-22 09:56:47 -07:00
978c90845b GCAdapter: move libusb context teardown last 2022-04-22 09:56:47 -07:00
1c9dfb7bb6 GCAdapter: some macro cleanup 2022-04-22 09:56:47 -07:00
f52d94832e GCAdapter: set read/write thread names 2022-04-22 07:12:09 -07:00
259a5fc7c0 DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs 2022-04-20 14:56:34 -04:00
e7f5e5172c DriverDetails: Introduce new VENDOR_APPLE for Apple GPUs 2022-04-19 10:55:27 -04:00
80dfefb32e UberShaderPixel: Add support for non-dual source shader blending 2022-04-19 10:55:26 -04:00
c1d87db6fa PixelShaderGen: Add support for non-dual source shader blending 2022-04-19 10:55:26 -04:00
bad0283ff7 VKPipeline: Add shader blending support 2022-04-19 10:55:26 -04:00
ef760ee012 Common/PointerWrap: Prevent reads/writes past the end of the buffer. 2022-04-18 23:48:00 +02:00
853cf4f818 Common/PointerWrap: Hide internals. 2022-04-18 03:41:14 +02:00
cc22f1a558 MemoryWidget add dual views for two separate column types. Force first column to be Hex32. 2022-04-17 00:15:44 -07:00
f3eff70e2f Implement ImGui window for scissor rectangles
This is mainly for debugging, and is only exposed by manually editing the configuration.
2022-04-16 12:35:00 -07:00
4d1e1db3c5 Software: Fix scissor rectangle always being block-aligned 2022-04-16 12:35:00 -07:00
8745d84949 Software: Disable clipping based on xfmem
This fixes https://bugs.dolphin-emu.org/issues/12562, and is also needed for a hardware test of mine.
2022-04-16 12:35:00 -07:00
925ceab82f Software: Use new scissor logic
Unlike the hardware backends, the software renderer can use multiple scissor rectangles (though this will result in extra rasterization).
2022-04-16 12:34:58 -07:00
076392a0f6 VideoCommon: Rework scissor handling
This increases accuracy, fixing the white rendering in Major Minor's Majestic March.  However, the hardware backends can only have one viewport and scissor rectangle at a time, while sometimes multiple are needed to accurately emulate what is happening.  If possible, this will need to be fixed later.
2022-04-16 10:26:11 -07:00
4595b89ad8 VideoCommon: Remove bSupportsOversizedViewports
I think this is a relic of D3D9.  D3D11 and D3D12 seem to work fine without it.  Plus, ViewportCorrectionMatrix just didn't work correctly (at least with the viewports being generated by the new scissor code).
2022-04-16 10:26:11 -07:00
b85b35d5ea VideoCommon: Create dedicated structs for scissor pos/offset 2022-04-16 10:26:10 -07:00
0ec3f3a6ae Merge pull request #10563 from TryTwo/PR_MemoryWidget_Display_Types
Debugger MemoryWidget: More display types, use combo box for options
2022-04-16 14:35:29 +02:00
2ef2d4778d JitArm64: Always lock Q0 in psq_stXX
Q0 is used as a scratch register by EmitBackpatchRoutine.

Fixes a vertex explosion in Spider-Man 2 that was uncovered by 20b2300.
2022-04-16 13:22:36 +02:00
a2aecc3794 Debugger MemoryWidget: More display types, use combo box for display options. Add alignment and riw length options. 2022-04-15 22:00:51 -07:00
0a4805c0b9 Merge pull request #10582 from AdmiralCurtiss/fmt-float
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-16 03:42:55 +02:00