Commit Graph

2943 Commits

Author SHA1 Message Date
Henrik Rydgård
e30e45fa26 Minor cleanup in TinySet 2022-09-25 23:23:53 +02:00
Henrik Rydgård
b1afeeaf43
Merge pull request #16100 from unknownbrackets/d3d9-debugger
D3D9: Allow INTZ depth buffers more correctly
2022-09-25 17:37:56 +02:00
Unknown W. Brackets
e6db0bef2d
Merge pull request #16099 from hrydgard/vulkan-dont-always-alloc-depth
Vulkan: Avoid allocating depth images for stuff like temp copies, depal buffers etc.
2022-09-25 08:05:50 -07:00
Henrik Rydgård
70c5ca62e6 Remove debug log. Add some new debug log though, unrelated to this PR, for fb clut + fb texture. Plus a couple asserts. 2022-09-25 09:56:39 +02:00
Lubos
355bd37e17 OpenXR - Pico specific code refactor 2022-09-25 09:25:37 +02:00
Unknown W. Brackets
81e8336985 D3D9: Allow INTZ depth buffers more correctly.
The FBO check was wrong and just always failed.
2022-09-24 15:17:18 -07:00
Henrik Rydgård
753fd13494 Vulkan: Avoid allocating depth images for stuff like temp copies, depal buffers etc.
Pretty small impact, but good to do.

An interesting extension of this would upconvert framebuffers in the
FramebufferManager to have a depth buffer the first time depth is used on them,
but this doesn't do that yet.
2022-09-24 23:21:48 +02:00
Henrik Rydgård
9f3dfe7ebe Vulkan: Don't compile pipeline variants that don't make sense given their flags.
Ran into this with cache files from previous version of my change.

Also bumping the shader cache ID again to avoid this in other ways, but
good to be robust here.
2022-09-24 22:39:22 +02:00
Lubos
60871eeac5 OpenXR - Initialize Pico subsystems 2022-09-24 22:39:07 +02:00
Lubos
05b4ff154a OpenXR - Disable performance extension on Pico 2022-09-24 22:13:19 +02:00
Henrik Rydgård
c3b4caa30b
Merge pull request #15984 from lvonasek/compat_openxr_gta
OpenXR - Sky fix for GTA games
2022-09-24 17:16:28 +02:00
Lubos
5b334a7945 OpenXR - PreprocessStep function implemented 2022-09-24 16:32:55 +02:00
Lubos
09bf5f507b OpenXR - Simplify skyplane detection in GTA 2022-09-24 11:35:51 +02:00
Lubos
84b7485798 OpenXR - Get rid of an ugly if condition 2022-09-24 11:14:20 +02:00
Unknown W. Brackets
7b1ec28c30 Vulkan: Avoid crash on two backbuffer steps.
Happens when resuming from stepping, sometimes: first
EmuScreen_BackBuffer, which is done so UI is functional during stepping,
and then the actual blit.

Since this is an uncommon case, let's just allow it by reusing the
presentCmd instead of submitting it early.  Otherwise it ends up in a
pending state.
2022-09-23 18:47:51 -07:00
Henrik Rydgård
3393d47e92 Remove ill-formed asserts 2022-09-23 23:14:36 +02:00
Henrik Rydgård
1259283c2e More tweaks, fix crash on exit (double-join thread) 2022-09-23 22:10:29 +02:00
Henrik Rydgård
df1297bccf Small tweak 2022-09-23 20:51:46 +02:00
Henrik Rydgård
c671b3f413 Can't seem to get around this condition variable... Oh well. 2022-09-23 20:45:52 +02:00
Henrik Rydgård
f6c78584f6 Readback fix 2022-09-23 19:45:50 +02:00
Henrik Rydgård
ef7c8844f8 Greatly simplify the thread synchronization. 2022-09-23 19:40:50 +02:00
Henrik Rydgård
f784112814 Flatten the Run function, to make it easier to reorganize. 2022-09-23 19:40:50 +02:00
Henrik Rydgård
5e63cdbcc4 Make functions private that should be private 2022-09-23 19:40:50 +02:00
Lubos
adffbb2ea7 Merge branch 'master' into compat_openxr_gta 2022-09-23 14:16:58 +02:00
Henrik Rydgård
7bef90297c Best practices layer warning: Don't pass in unused clear values. (probably zero impact, heh). 2022-09-23 13:54:14 +02:00
Henrik Rydgård
ac4ca592c3 Handle depth buffer write-after-write hazards in the queue runner 2022-09-23 13:47:11 +02:00
Henrik Rydgård
0acfa906b4 Fix leak of shader modules from thin3d. 2022-09-23 13:31:32 +02:00
Henrik Rydgård
ac7ca963db Make valgrind happy 2022-09-23 12:24:43 +02:00
Henrik Rydgård
ac3eb876a8 Fix memory leak (of Promise objects) in VK pipeline wrappers 2022-09-23 10:56:46 +02:00
Henrik Rydgård
c76d7e844c Fix Vulkan regression of #16075 due to silly typo. 2022-09-22 19:37:46 +02:00
Henrik Rydgård
11b807828f Fix for render pass merge 2022-09-22 10:22:29 +02:00
Henrik Rydgård
6d2f29e7eb If depth or stencil are cleared in a renderpass, set the pipeline flag. 2022-09-22 10:06:05 +02:00
Henrik Rydgård
8e30a7ccfc Vulkan: Don't have renderpasses store/load depth buffers when we don't use them 2022-09-22 10:06:05 +02:00
Henrik Rydgård
4eeeae8a70
Merge pull request #16074 from lvonasek/hotfix_openxr_stereo
OpenXR - Stereo for most games fixed
2022-09-21 18:54:34 +02:00
Lubos
bbc5a7cf4b OpenXR - Stereo mirroring fixed, disable stereo when no world scale defined 2022-09-21 16:44:31 +02:00
Unknown W. Brackets
30454f8dc7 Vulkan: Avoid crash in headless on finish. 2022-09-21 00:09:34 -07:00
Lubos
209b5b3079 OpenXR - Compile fix 2022-09-20 21:53:32 +02:00
Lubos
c4dbd6d045 Merge branch 'master' into compat_openxr_gta 2022-09-20 21:46:33 +02:00
Unknown W. Brackets
cd2fc94c1b
Merge pull request #16061 from hrydgard/vulkan-submit-main-before-acquire
Vulkan: Submit main command buffer before acquiring the swapchain image
2022-09-20 10:43:53 -07:00
Henrik Rydgård
3244e99fd1
Merge pull request #16063 from lvonasek/hotfix_openxr_ipd
OpenXR - Support for all headset's IPDs fixed
2022-09-20 19:43:17 +02:00
Lubos
39fae4cfcb OpenXR - Support for all headset's IPDs fixed 2022-09-20 18:57:58 +02:00
Henrik Rydgård
f6cb6c7695 Submit main command buffer before acquire. Fix sync bug. 2022-09-20 17:52:48 +02:00
Henrik Rydgård
fff080202f When taking screenshots, make sure that the readback command happens on the right cmdbuf. 2022-09-20 17:48:19 +02:00
Unknown W. Brackets
fd232a0e3c
Merge pull request #16060 from hrydgard/vulkan-framedata-refactor
Vulkan FrameData refactor
2022-09-20 08:39:38 -07:00
Henrik Rydgård
c1d1c85116 Minor code cleanups (hasBegun is now redundant, for example) 2022-09-20 17:05:53 +02:00
Henrik Rydgård
b190c33cc7 Rewrite some present logic for slightly more clarity. Fixes bad logic and a minor race condition. 2022-09-20 17:05:53 +02:00
Henrik Rydgård
c7322edf7b Various refactoring 2022-09-20 17:05:45 +02:00
Henrik Rydgård
aa19712fc3 Unify depth texture and framebuffer fetch checks 2022-09-20 10:47:49 +02:00
Henrik Rydgård
09bcf3ec13 Unify range culling detection 2022-09-20 10:15:04 +02:00
Henrik Rydgård
1ae7c0132c Start unifying setting of the GPU feature flags, now that thin3d has feature detection. 2022-09-20 10:07:01 +02:00
Henrik Rydgård
2160882e95 Address feedback 2022-09-19 19:27:50 +02:00
Henrik Rydgård
cfe4e3278d Vulkan: Remove the useThread bool entirely. 2022-09-19 18:17:26 +02:00
Henrik Rydgård
d0016add37 Start moving stuff out to VulkanFrameData.cpp 2022-09-19 18:14:41 +02:00
Unknown W. Brackets
c08c873462 GLES: Support more clip distances.
Will be used later, for now just the enable/disable logic.
2022-09-18 13:16:59 -07:00
Henrik Rydgård
fc84f25818 Quick GE debugger stepping fix, after the recent vulkan swapchain acquire change 2022-09-18 12:10:23 +02:00
Henrik Rydgård
4045de8d56 Consider the Adreno and Mali stencil-discard bugs the same. Use the better check from the Mali bug.
Should fix #11980
2022-09-18 10:34:43 +02:00
Unknown W. Brackets
6576b853e4 UI: Fix some logic dependent on screen tags.
9f38516 changed various tags but not code referencing them.
2022-09-17 13:36:25 -07:00
Henrik Rydgård
48162858d8 Remove assert (this happens when playing framedumps) 2022-09-17 09:30:08 +02:00
Henrik Rydgård
9d9f2c539e Finish the switch to late acquire, moving the swapchain responsibility to the queue runner. 2022-09-17 08:43:13 +02:00
Henrik Rydgård
a369252a29 RunSteps cleanup 2022-09-17 01:41:26 +02:00
Henrik Rydgård
fabd50b178 Move FrameData out of VulkanRenderManager 2022-09-17 01:34:38 +02:00
Henrik Rydgård
415a795b11 Move back buffer rendering to a separate "present" command buffer 2022-09-17 01:11:41 +02:00
Henrik Rydgård
242efba6f7 Remove splitSubmit setting. Now we submit init commands before the acquire. 2022-09-17 01:07:30 +02:00
Henrik Rydgård
262a306b9a Flag shader blending as broken on Adreno for now. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
a0f7a4ee2f Remove logspam 2022-09-16 19:19:42 +02:00
Henrik Rydgård
eadb144cc4 Show render pass types in GPU profiler 2022-09-16 19:19:42 +02:00
Henrik Rydgård
ce82fce8de Use subpass dependencies to implement shader framebuffer read in Vulkan. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
30e3f3b47a Add two more extensions to device extension lookup 2022-09-16 19:19:42 +02:00
Henrik Rydgård
02793375a4
Merge pull request #16032 from hrydgard/more-outrun-water-fixes
Fix the water in Outrun when no logic ops
2022-09-16 13:15:32 +02:00
Henrik Rydgård
ac9677dcc0 Ah, need to enable the Mali workaround for Outrun's water, too. 2022-09-16 13:14:44 +02:00
Henrik Rydgård
0b9d6f9cb0 Log the screen tag when logging scissor errors. 2022-09-16 10:32:09 +02:00
Luboš Vonásek
861af63be9
Merge branch 'hrydgard:master' into compat_openxr_gta 2022-09-16 10:20:11 +02:00
Henrik Rydgård
9f3851678e Add tags to all our UI screens. Useful to debug UI problems. 2022-09-16 10:14:00 +02:00
Henrik Rydgård
ca2962beab
Merge pull request #16014 from hrydgard/shader-depal-clut8-8888
Texture depal using CLUT loaded from framebuffers, and more. Fixes Burnout Dominator lens flare
2022-09-16 08:33:11 +02:00
Sprite
0ed86188b0 Fix const pointer conversion error for RISC-V 2022-09-15 23:53:19 +08:00
Henrik Rydgård
e8aaf22163 D3D9 crashfix (flare doesn't render correctly though) 2022-09-15 17:22:09 +02:00
Luboš Vonásek
6c50fc5b35
Merge branch 'hrydgard:master' into feature_openxr_vulkan 2022-09-15 00:23:36 +02:00
Lubos
f98381fb57 Merge branch 'master' into feature_openxr_vulkan 2022-09-15 00:22:46 +02:00
Lubos
3331fedab7 OpenXR - Better variable/methods naming 2022-09-15 00:03:41 +02:00
Henrik Rydgård
a208afb7b8 OpenGL and D3D11 fixes 2022-09-14 23:35:15 +02:00
Lubos
0c2d47d74d OpenXR - Add code comments 2022-09-14 23:23:28 +02:00
Henrik Rydgård
d6d7a15d25 Get depal-from-dynamic-CLUT working 2022-09-14 22:18:35 +02:00
Henrik Rydgård
f745e94899 Allow binding "native" texture objects to thin3d 2022-09-14 22:18:35 +02:00
Henrik Rydgård
6744fe3da1 OpenGL fix 2022-09-14 22:18:34 +02:00
Henrik Rydgård
a52e62a187 Enable depth uploads on render-to-clut-buffer. Esoteric but needed for #11100. Compat flag for now. 2022-09-14 22:18:34 +02:00
Lubos
57ef2bb0d5 OpenXR - Ensure the head pose is locked during frame rendering 2022-09-14 20:36:33 +02:00
Lubos
d8fbc7ce56 OpenXR - Vulkan support in progress 2022-09-14 19:53:55 +02:00
Lubos
e4f44e680d OpenXR - Move skyplane compat flag into compatvr.ini 2022-09-13 21:16:03 +02:00
Lubos
e406dc4730 Merge branch 'master' into compat_openxr_gta 2022-09-13 21:01:55 +02:00
Unknown W. Brackets
56e30495aa Common: Fix some type compare warnings on 32-bit. 2022-09-12 22:14:48 -07:00
Lubos
fea2ace548 OpenXR - Initial work on Vulkan support 2022-09-13 01:39:44 +02:00
Lubos
b695c1ffb3 Merge branch 'master' into compat_openxr_gta 2022-09-12 23:04:31 +02:00
Lubos
9ede9bd822 OpenXR - Refactor variable name 2022-09-12 23:01:44 +02:00
Lubos
c6ff56d4a3 OpenXR - Crash when using 3D stereo fixed 2022-09-12 22:55:53 +02:00
Lubos
e49ee5c93b Merge branch 'master' into feature_openxr_stereo 2022-09-12 18:49:22 +02:00
Lubos
bdde5f0f7f OpenXR - Use per game stereo separation file 2022-09-12 18:47:13 +02:00
Henrik Rydgård
75efcd9dfd
Merge pull request #16000 from unknownbrackets/gedebugger
Cleanup some crashes in GE debugger or with large textures
2022-09-11 19:41:11 +02:00
Henrik Rydgård
3e7f6b57aa Shadergen issues found by the test 2022-09-11 16:52:33 +02:00
Henrik Rydgård
9bd8b11bf8 Implement shader depal for D3D11. 2022-09-11 13:41:17 +02:00
Unknown W. Brackets
6c6d817ce7 Vulkan: Avoid crash if large texture attempted.
Doesn't do the clamp/wrap thing, but at least this won't crash.
2022-09-10 20:14:37 -07:00
Unknown W. Brackets
54fe342f4b Vulkan: Wake compile thread when enqueued.
Previously was being woken up every frame unconditionally, causing some
logspam.
2022-09-10 08:30:09 -07:00
Henrik Rydgård
e5d1bb5552 Warning fix 2022-09-09 11:34:11 +02:00
Lubos
214a5572c3 OpenXR - Compile fix 2022-09-08 19:00:41 +02:00
Luboš Vonásek
5be9455bf5
Merge branch 'hrydgard:master' into compat_openxr_gta 2022-09-08 18:39:11 +02:00
Lubos
c9f08a85c6 OpenXR - Do not mashup Common/GPU 2022-09-08 18:25:10 +02:00
Lubos
64857ce5c7 Merge branch 'compat_openxr_gta' of github.com:lvonasek/ppsspp into compat_openxr_gta 2022-09-08 18:17:09 +02:00
Lubos
6e4849b910 OpenXR - Refactor 2022-09-08 18:05:12 +02:00
Henrik Rydgård
974cd38b1f Some more debug names to vulkan objects 2022-09-08 09:16:40 +02:00
Henrik Rydgård
58a7f0cf21 Assorted cleanup 2022-09-08 01:26:01 +02:00
Henrik Rydgård
68dd329d95 Fix for desc struct 2022-09-08 01:24:04 +02:00
Henrik Rydgård
347f7c4e5a Vulkan: Improve tagging of pipelines for debugging purposes 2022-09-08 00:47:22 +02:00
Henrik Rydgård
cddc612f6d Extend lifetime of ShaderModule objects since we might need to recreate pipelines for different render passes 2022-09-08 00:38:32 +02:00
Henrik Rydgård
14b5a1a7cd Fix pipeline lifetime issue, misc. 2022-09-08 00:38:32 +02:00
Henrik Rydgård
caff2ea573 Correct merging of render passes. However, we have lifetime issues. 2022-09-08 00:38:32 +02:00
Henrik Rydgård
77819c6f80 Lifetime fixes, cleanups 2022-09-08 00:38:32 +02:00
Henrik Rydgård
befcfb470c Fix shader caching. 2022-09-08 00:38:32 +02:00
Henrik Rydgård
7ab7440475 Also create renderpass variants on demand 2022-09-08 00:38:32 +02:00
Henrik Rydgård
80ca822bf2 Create framebuffer variants on demand 2022-09-08 00:38:28 +02:00
Henrik Rydgård
e828df9f25 Split each renderpass/framebuffer into multiple "compatibility classes" (RenderPassType). 2022-09-08 00:32:03 +02:00
Luboš Vonásek
8906abebba
Merge branch 'hrydgard:master' into compat_openxr_gta 2022-09-07 22:28:18 +02:00
Lubos
52af230210 OpenXR - Use fog color to replace the sky 2022-09-07 19:57:26 +02:00
Lubos
4b129bb9c3 OpenXR - Refactor VR compat integration 2022-09-07 15:52:50 +02:00
Lubos
4ff3e496c5 Merge branch 'master' into compat_openxr_gta 2022-09-07 14:58:18 +02:00
Henrik Rydgård
ae23c3c266
Merge pull request #15974 from unknownbrackets/debugger-gecond
Add breakpoint conditions to GE debugger
2022-09-06 23:39:26 +02:00
Henrik Rydgård
759c9695e5
Merge pull request #15901 from lvonasek/feature_openxr_stereo
OpenXR - Stereoscopic rendering
2022-09-06 11:52:32 +02:00
Unknown W. Brackets
f595299fe5 GE Debugger: Allow expressions for goto address. 2022-09-05 17:33:54 -07:00
Henrik Rydgård
16212cae73 NFS speed effect: Improve framebuffer choice logging, tighten up stride checks. 2022-09-05 23:31:30 +02:00
Lubos
93202e47f4 OpenXR - Config for stereo separation added 2022-09-05 22:10:20 +02:00
Lubos
08226d8396 OpenXR - Stereo matrices fixed 2022-09-05 20:49:25 +02:00
Henrik Rydgård
06e9995ab6 Remove reference to non-existent file from Common.vcxproj 2022-09-05 19:13:14 +02:00
Lubos
3a0e6c7232 Merge branch 'master' into feature_openxr_stereo 2022-09-05 19:11:52 +02:00
Lubos
0e4f93d200 OpenXR - Fixing FOV better 2022-09-05 18:15:31 +02:00
Henrik Rydgård
a7074cda44 Fix for ARM 32-bit. 2022-09-05 17:58:26 +02:00
Henrik Rydgård
ed8c4e8758 Remove the assembly implementation of 4x4 matrix mul, in favor of intrinsics. 2022-09-05 10:33:05 +02:00
Unknown W. Brackets
3c9f63e297 Vulkan: Update to latest VMA. 2022-09-04 23:54:15 -07:00
Lubos
4ce0579f70 OpenXR - Split projection matrix for color and depth buffer 2022-09-04 21:12:18 +02:00
Lubos
93a2817062 Merge branch 'feature_openxr_stereo' into compat_openxr_gta 2022-09-04 16:33:33 +02:00
Lubos
2195f4b2e7 OpenXR - Mismatched call order fixed 2022-09-04 14:08:03 +02:00
Lubos
fb875b94de OpenXR - Multipass rendering fixed 2022-09-04 14:01:17 +02:00
Lubos
5be6665df8 Merge branch 'master' into feature_openxr_stereo 2022-09-04 12:37:41 +02:00
Lubos
1df1d79b9e OpenXR - Stereo without multiview added 2022-09-04 12:36:52 +02:00
Henrik Rydgård
d6b953bddd Fix GLES check 2022-09-04 00:10:56 +02:00
Henrik Rydgård
5f1ffeae70 Correct LogicOp API support detection 2022-09-04 00:08:40 +02:00
Henrik Rydgård
d3309dd8e9 Minor refactor with pipelines in QueueRunner (makes more information available for easier debugging) 2022-09-03 23:08:02 +02:00
Henrik Rydgård
fb3f417e77 Fix lying comment, log level reduction 2022-09-03 16:15:46 +02:00
Henrik Rydgård
76bd2395bf Promise: Add SpawnEmpty (couldn't come up with a better name), fix bug with multiple waiters 2022-09-03 15:21:08 +02:00
Henrik Rydgård
c06cf8efaa Switch Vulkan pipelines to use promises for synchronization
Slightly more expensive I guess but shouldn't be much of a bottleneck.
2022-09-03 15:21:08 +02:00
Henrik Rydgård
ebe2d1b30f More buildfixing 2022-09-03 15:21:07 +02:00
Henrik Rydgård
210233ede0 Buildfix 2022-09-03 15:21:07 +02:00
Henrik Rydgård
e701037267 Buildfix 2022-09-03 15:21:07 +02:00
Henrik Rydgård
8775837c11 Work towards finding the leak 2022-09-03 15:21:07 +02:00
Henrik Rydgård
93422f6dea Don't block on shader creation until it's time to create the pipeline. 2022-09-03 15:21:07 +02:00
Henrik Rydgård
ec0586ba50 Use promises to hold shader modules, for later asyncification 2022-09-03 15:21:07 +02:00
Lubos
5e2ecb5ebb OpenXR - FBO intialization better 2022-09-02 12:40:41 +02:00
Lubos
bda42e5772 compile fix 2022-09-01 19:56:38 +02:00
Lubos
22db37d128 OpenXR - Viewport init better 2022-09-01 19:43:43 +02:00
Lubos
00aaf9e1a6 Merge branch 'master' into feature_openxr_stereo 2022-09-01 18:09:21 +02:00
Lubos
044d9a416b OpenXR - Emulate mouse cursor 2022-09-01 18:08:08 +02:00
Henrik Rydgård
f2e0f7611c Display paths with backslashes on Windows. Show texture path when saving. 2022-09-01 15:04:59 +02:00
Henrik Rydgård
9097fdaae6 Shrink VkRenderData from 88 to 64 bytes. 2022-09-01 14:21:34 +02:00
Henrik Rydgård
ecb84987ef Remove allocation from the heaviest MemBlockInfo path (BlockTransfer). Required some refactoring. 2022-09-01 11:59:35 +02:00
Henrik Rydgård
24d674d2bc Shrink the TransitionRequest struct, use TinySet 2022-09-01 10:59:27 +02:00
Henrik Rydgård
bd71d8044b TinySet bugfix, add "append" 2022-09-01 10:59:24 +02:00
Henrik Rydgård
a8a9fb4206 Much faster framebuffer matching (no more ToString every time there's more than 1 candidate, etc). 2022-08-31 14:23:56 +02:00
Lubos
30a3cb622a Force clearing framebuffer for GTA games 2022-08-30 21:09:12 +02:00
Henrik Rydgård
4da2ca0935 Implement shader blending for D3D9
This was easy, dunno why I never got around to it before..
I guess I didn't know about VPOS.

This does raise our minimum shader model requirement to ps_3_0.
2022-08-30 12:19:56 +02:00
Henrik Rydgård
44d822be3b Address feedback 2022-08-30 06:41:37 +02:00
Henrik Rydgård
670c31e746 Add support for reading depth buffers to the PackFramebufferSync function.
Also adds D16 conversion code (though, could probably get away with just
creating a 16-bit depth buffer on the GPU and blit to it, where depth
blit is available).

Not yet used, just getting it in separately.
2022-08-30 00:00:59 +02:00
Lubos
462174f548 OpenXR - Multiview refactor to make it optional 2022-08-29 22:06:59 +02:00
Lubos
94968c3075 Merge branch 'master' into feature_openxr_stereo 2022-08-29 21:32:59 +02:00
Henrik Rydgård
34ed960a72 Use better pattern for enum switches 2022-08-28 23:57:01 +02:00
Henrik Rydgård
b447092742 Some Vulkan renderpass load/store optimizations. 2022-08-28 23:16:48 +02:00
Lubos
6adabd8779 OpenXR - Compile fix 2022-08-28 21:55:56 +02:00
Lubos
2adc7269a3 Merge branch 'master' into feature_openxr_stereo 2022-08-28 21:55:15 +02:00
Lubos
aa150a830a OpenXR - Swapchain acquiring fixed 2022-08-28 21:09:02 +02:00
Unknown W. Brackets
da53ab8ef9 UI: Validate UI scissor inside bounds. 2022-08-28 09:01:35 -07:00
Henrik Rydgård
5247ffa0af
Merge pull request #15910 from unknownbrackets/riscv-emitter
Add LI and compressed instructions for RISC-V
2022-08-28 15:57:03 +02:00
Lubos
4bd5a28604 OpenXR - Flag to easily disable multiview shaders added 2022-08-28 14:49:27 +02:00
Lubos
2d0e426fa9 OpenXR - Keep using GLES2 headers for now 2022-08-28 14:26:50 +02:00
Lubos
ca92f80bd8 Merge branch 'master' into feature_openxr_stereo 2022-08-28 14:22:18 +02:00
Unknown W. Brackets
08d82ec15b riscv: Emit compressed instructions.
Includes automatically using compressed, optionally.
2022-08-27 15:44:19 -07:00
Unknown W. Brackets
946080206d riscv: Improve sign reduce/immediate readability. 2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c807d459f6 riscv: Emit ADD/SUB/etc. for ADDW/SUBW/etc. on R32.
No need to complicate code, we can just write ADDW() and expect it to work
on R32 (if ever motivated to support it.)
2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c81d887a86 riscv: Include an LI helper in the emitter.
Can be used for integers and floats.
2022-08-27 15:44:18 -07:00
Henrik Rydgård
322f29ce80 Comments and fixes 2022-08-27 23:37:02 +02:00
Lubos
9e208207b8 OpenXR - Dummy integration compile fix 2022-08-27 17:46:16 +02:00
Lubos
c2c0561be2 OpenXR - OPENXR ifdef removal 2022-08-27 17:33:37 +02:00
Luboš Vonásek
5e434bccdb
Merge branch 'hrydgard:master' into feature_openxr_stereo 2022-08-27 12:23:38 +02:00
Lubos
723d641771 OpenXR - Enable performance mode 2022-08-27 12:23:03 +02:00
Henrik Rydgård
3c5ec25f61 Initial implementation of 32/16-bit color reinterpret blits. 2022-08-26 15:51:25 +02:00
Henrik Rydgård
31bd16a042
Merge pull request #15905 from unknownbrackets/riscv-emitter
Add a RISC-V emitter
2022-08-26 09:41:20 +02:00
Unknown W. Brackets
4a93647acb riscv: Emit CSR manipulation instructions. 2022-08-25 21:20:49 -07:00
Unknown W. Brackets
b5755b6cf7 riscv: Validate FixupBranch usage better.
Also avoid FixupBranch alignment issues.
2022-08-25 21:20:49 -07:00
Unknown W. Brackets
591de6be1d riscv: Emit float instructions. 2022-08-25 21:19:28 -07:00
Unknown W. Brackets
53693072d2 riscv: Emit atomic operations. 2022-08-25 21:19:28 -07:00
Unknown W. Brackets
c66d02d4db riscv: Emit mul/div instructions. 2022-08-25 21:19:28 -07:00
Unknown W. Brackets
00280ab2ad riscv: Emit fence and 64-bit instructions. 2022-08-25 21:19:28 -07:00
Unknown W. Brackets
49ec8a207d riscv: Emit 32-bit 3-op instructions, validate GPR. 2022-08-25 21:19:27 -07:00
Unknown W. Brackets
1c35cfb325 riscv: Emit 32-bit load/store and imm ops. 2022-08-25 21:19:27 -07:00
Unknown W. Brackets
1dab9d1875 riscv: Emit standard B/U/J type ops. 2022-08-25 21:19:27 -07:00
Unknown W. Brackets
9fcad83940 riscv: Add initial emitter shell. 2022-08-25 21:17:11 -07:00
Luboš Vonásek
ce55449d03
Assert removed 2022-08-24 23:38:57 +02:00
Luboš Vonásek
11a6318509
Merge branch 'hrydgard:master' into feature_openxr_stereo 2022-08-24 19:50:45 +02:00
Henrik Rydgård
416d8b403b
Merge pull request #15768 from lvonasek/feature_openxr_6dof
OpenXR - 6DoF support
2022-08-24 18:49:41 +02:00
Henrik Rydgård
d459eac891 Fix checks for depth texture support, GLES syntax errors 2022-08-24 11:26:07 +02:00
Henrik Rydgård
bd674c47b6 OpenGL: Fix regular depal (shader depal still worked) that broke recently 2022-08-24 11:01:57 +02:00
Henrik Rydgård
8b3ef19450 Fix wrong width/height values being stored in thin3d textures 2022-08-24 10:23:37 +02:00
Henrik Rydgård
eb2f12e64a Drive-by texture slot management cleanup 2022-08-24 10:22:58 +02:00
Luboš Vonásek
c5cb45b1f7
Merge branch 'hrydgard:master' into feature_openxr_6dof 2022-08-24 06:55:31 +02:00
Henrik Rydgård
fc81b76b98 Vulkan: Very minor chnages after checking Best Practices with new validation layer 2022-08-23 23:55:53 +02:00
Henrik Rydgård
5084743bbb Use Draw2D for depal shaders (except the actual blit, for now) 2022-08-23 11:21:40 +02:00
Unknown W. Brackets
c13f57e64f Vulkan: Cleanup minor logging. 2022-08-21 19:40:02 -07:00
Henrik Rydgård
ca24f1b9aa Fixes for D3D11 2022-08-21 09:58:58 +02:00
Lubos
af011c2cc9 OpenXR - Step closer to identify multiview FBO issue 2022-08-19 21:19:59 +02:00
Lubos
98f726af3b OpenXR - Use OpenGL ES 3 and ensure FBO pair calls 2022-08-19 16:59:39 +02:00
Lubos
4603ccdd92 OpenXR - Initialization errors fixed 2022-08-19 15:17:42 +02:00
Lubos
c508f66df1 OpenXR - Multiview in progress 2022-08-18 19:59:01 +02:00
Lubos
4026d49104 OpenXR - Multiview uniforms working 2022-08-17 19:14:36 +02:00
Lubos
d570a194dd Merge branch 'feature_openxr_6dof' into feature_openxr_stereo 2022-08-17 17:08:12 +02:00
Henrik Rydgård
bd6f79e473 Fix the raster depth blit again, which I recently broke. 2022-08-17 16:52:49 +02:00
Lubos
1e479fa192 Merge branch 'master' into feature_openxr_6dof 2022-08-17 16:48:05 +02:00
Unknown W. Brackets
f7e4efdbc2
Merge pull request #15852 from hrydgard/more-code-cleanup
Remove DX9 namespace, other code cleanup
2022-08-16 20:16:53 -07:00
Henrik Rydgård
d0cdb360fd Remove the DX9 namespace, for consistency with the other backends 2022-08-16 21:49:16 +02:00
Lubos
22e7f87e33 OpenXR - Disable multiview for now 2022-08-16 21:32:11 +02:00
fp64
5b6a14edeb Add a newline to "Leaving main" message.
Also implement SYSPROP_DISPLAY_XRES/SYSPROP_DISPLAY_YRES for SDL.
Also fix couple of warnings.
2022-08-16 18:29:14 -04:00
Lubos
71df50a354 OpenXR - GL and OXR logging added 2022-08-16 17:39:54 +02:00
Lubos
e4a65c5881 Merge branch 'feature_openxr_6dof' into feature_openxr_stereo 2022-08-16 16:47:57 +02:00
Lubos
92d631966f OpenXR - Resuming renderer fixed, haptics support added 2022-08-16 16:47:31 +02:00
Henrik Rydgård
1e57a358b8 thin3d: Properly AddRef and Release shader modules from the pipeline in backends that need it 2022-08-16 15:10:48 +02:00
Henrik Rydgård
3a0d43ae1e Remove deprecated function (mostly) 2022-08-16 11:47:38 +02:00
Henrik Rydgård
31fe0fc39e Remove some unnecessary bool returns. 2022-08-16 11:23:34 +02:00
Lubos
4a530543b4 Merge branch 'feature_openxr_6dof' into feature_openxr_stereo 2022-08-15 20:18:55 +02:00
Lubos
382df469c1 OpenXR - Recenter changes pitch of the 2D screens 2022-08-15 19:55:09 +02:00
Lubos
f8e68a45b6 Merge branch 'feature_openxr_6dof' into feature_openxr_stereo 2022-08-15 17:41:27 +02:00
Lubos
d34d1e4af9 OpenXR - Ensure PSP aspect ratio for 2D content 2022-08-15 17:41:04 +02:00
Lubos
43bd9b9086 Merge branch 'feature_openxr_6dof' into feature_openxr_stereo 2022-08-15 17:23:57 +02:00
Lubos
70c4781feb OpenXR - Option to set canvas distance added 2022-08-15 17:19:42 +02:00
Lubos
428145c4b9 OpenXR - 2D mode hack mappable (using screen keycode) 2022-08-15 16:53:00 +02:00
Lubos
ab6c91c203 OpenXR - Integrate multiview into system 2022-08-14 18:51:45 +02:00
Lubos
47349b2c0d Merge branch 'master' into feature_openxr_stereo 2022-08-14 16:51:09 +02:00
Lubos
e76a68666a OpenXR - Config for stereoscopic vision added 2022-08-14 12:02:51 +02:00
Lubos
c71ecd7756 OpenXR - Unused parameter removed 2022-08-14 11:47:33 +02:00
Lubos
caac01216c OpenXR - VR renderer adjustments 2022-08-14 11:45:52 +02:00
Lubos
c7410d41df OpenXR - Framebuffer multiview used 2022-08-14 11:37:22 +02:00
Unknown W. Brackets
a6804c96bd GLES: Correct some variable shadowing.
Potentially fixes an issue with 3D textures?
2022-08-13 12:43:14 -07:00
Unknown W. Brackets
cf030c3bce Global: Cleanup some unreferenced warnings. 2022-08-13 12:43:14 -07:00
Lubos
017f263d04 OpenXR - Support for multiple projection matrices in the scene 2022-08-13 16:52:48 +02:00
Lubos
059520331c OpenXR - Rotation mirroring fixed in a few games 2022-08-13 15:39:41 +02:00
Lubos
f81779b0de Merge branch 'master' into feature_openxr_6dof 2022-08-13 14:27:29 +02:00
Unknown W. Brackets
df2634d4e7 x86jit: Avoid an instruction form Valgrind hates. 2022-08-12 23:22:32 -07:00