Henrik Rydgård
ecd62e7eb2
Lift length limit on Android logging
2022-11-08 00:21:37 +01:00
Henrik Rydgård
4d637342f7
Log source code for failed pipeline creations
2022-11-08 00:21:08 +01:00
Henrik Rydgård
90f67e91f5
Avoid drawing with failed-to-create pipelines
2022-11-08 00:21:08 +01:00
Henrik Rydgård
25547b5fe2
Make Mailbox handle null values. Fixes hang.
2022-11-08 00:21:08 +01:00
Henrik Rydgård
bd40ccda51
Improve VkResult logging
2022-11-08 00:21:07 +01:00
Henrik Rydgård
7b09fc43b0
Warning fix in VR code
2022-11-08 00:21:07 +01:00
Lubos
eec414d331
OpenXR - Allow more extreme camera adjusts
2022-11-07 21:40:25 +01:00
Lubos
47f2afcd55
Merge branch 'master' into cleanup_camera_control
2022-11-07 18:23:07 +01:00
Henrik Rydgård
7beff4da96
Merge pull request #16350 from lvonasek/refactor_openxr_matrices
...
OpenXR - Refactor
2022-11-07 18:18:55 +01:00
Henrik Rydgård
e7b6fcd513
Properly buildfix GL/VR again
2022-11-07 17:36:46 +01:00
Henrik Rydgård
81dd95e16d
Fix sky plane fix (broke in my last VR refactor)
2022-11-07 17:13:14 +01:00
Lubos
cd49dc6627
OpenXR - Camera adjustment using PSP keys
2022-11-07 17:13:08 +01:00
Lubos
90d117ce71
OpenXR - Keep status of PSP keys
2022-11-07 16:46:10 +01:00
Lubos
73ccff9ba0
Restore assert
2022-11-07 16:28:41 +01:00
Henrik Rydgård
c7db9a865d
Disable remaining false positive.
2022-11-07 09:51:11 +01:00
Henrik Rydgård
668904a515
Vulkan: Use the very same view as input attachment and color attachment, not just the same image
...
Fixes most of the new validation errors seen #16351 , though one remains.
I believe that to be a bug in the validation layers, will investigate
later.
2022-11-07 09:14:55 +01:00
Lubos
e96b9b4649
Remove unnecessary assert
2022-11-06 22:38:15 +01:00
Lubos
c58359a3b3
OpenXR - Move configs out of VRRenderer
2022-11-06 22:30:35 +01:00
Lubos
460386e344
OpenXR - Move matrix calculation out of VRRenderer
2022-11-06 22:06:27 +01:00
Lubos
cd54873edb
OpenXR - Simplify projection matrix creation
2022-11-06 21:48:55 +01:00
Lubos
520b92aa94
OpenXR - Matrix indexing fixed
2022-11-06 21:45:47 +01:00
Lubos
5c9e6968a5
OpenXR - Get rid of separate projection matrices
2022-11-06 21:21:13 +01:00
Lubos
637bb57bc6
OpenXR - Get rid of ovrMatrix4f structure
2022-11-06 20:42:28 +01:00
Henrik Rydgård
09c0ebd3ca
Windows ARM/ARM64 buildfix
2022-11-06 17:40:41 +01:00
Henrik Rydgård
44106ff2e7
Linking fix for normal Android devices
2022-11-06 15:58:07 +01:00
Henrik Rydgård
162290147f
UWP build fix. Had to reshuffle some stuff and compile some Vulkan files.
2022-11-06 15:54:00 +01:00
Henrik Rydgård
0ef39d11d8
Add a dynamic loader for OpenXR so the VR code can link. Make it all build on Windows.
2022-11-06 15:37:58 +01:00
Henrik Rydgård
c44afcf462
Typo fix
2022-11-06 14:37:56 +01:00
Henrik Rydgård
b4507cd5cc
Make a lot more code VR build for all platforms
2022-11-06 14:36:51 +01:00
Henrik Rydgård
5d3ec6c8ff
Fix type of predictedDisplayTime
2022-11-06 14:35:28 +01:00
Henrik Rydgård
8398b779fb
6dof fix
2022-11-06 11:51:28 +01:00
Henrik Rydgård
ef3b0607ef
Rename 6DOF_PRECISE to HAS_UNIT_SCALE
2022-11-06 11:39:41 +01:00
Henrik Rydgård
9b619b8c0b
Remove ugly float conversion hacks from VR config
2022-11-06 11:37:52 +01:00
Henrik Rydgård
8bb2313f5d
Finish previous buildfix...
2022-11-06 11:34:27 +01:00
Henrik Rydgård
4d81506046
Upgrade gradle, specify NDK version in android/build.gradle
...
Also fix a warning.
2022-11-06 09:44:06 +01:00
Unknown W. Brackets
15fdb54a59
Merge pull request #16337 from hrydgard/renderpass-type-bitfield
...
Vulkan: Switch RenderPassType to be a "proper" bitfield enum.
2022-11-05 16:28:48 -07:00
Henrik Rydgård
439b38f705
Comment fixes (feedback)
2022-11-06 00:11:04 +01:00
Henrik Rydgård
675a046759
Fix parsing ampersands in server listings for streaming
...
Fixes #16263 , or so I hope - haven't actually tested it, but seems
straightforward enough.
2022-11-05 23:31:30 +01:00
Henrik Rydgård
7742fbdeb6
Switch RenderPassType to be a "proper" bitfield enum.
2022-11-05 22:06:53 +01:00
Henrik Rydgård
10c6232b9b
Merge pull request #16310 from lvonasek/feature_openxr_motion
...
OpenXR - Map controller gestures
2022-11-05 18:18:57 +01:00
Lubos
a52afe9fd8
Merge branch 'master' into cleanup_openxr_core
2022-11-05 10:51:29 +01:00
Lubos
14abd91861
Merge branch 'master' into feature_openxr_motion
2022-11-05 10:49:11 +01:00
Lubos
22980c8b9f
Code formatting fixed
2022-11-05 10:16:24 +01:00
Lubos
aacbe4f4a3
OpenXR - Get platform flags in runtime
2022-11-04 14:53:07 +01:00
Lubos
aafa17fa73
OpenXR - Introduce platform flags
2022-11-04 14:22:42 +01:00
Lubos
f8d29e0d19
OpenXR - Fix ifdef ANDROID
2022-11-04 13:52:32 +01:00
Lubos
1d452a2e01
OpenXR - Add an option to disable 72Hz update
2022-11-03 21:33:46 +01:00
Lubos
c6b83dd9d8
OpenXR - Enable camera movement and stereo in flatscreen mode
2022-11-03 20:00:30 +01:00
Lubos
823bfae5ea
Memory initialization fixed
2022-10-31 15:00:09 +01:00
Lubos
3c87e71177
OpenXR - Let users set the movement length
2022-10-31 13:19:06 +01:00
Lubos
0101c464a5
OpenXR - Option to disable controller mapping
2022-10-31 12:17:30 +01:00
Lubos
b740bfbcfb
OpenXR - Map controller motions on keys
2022-10-31 11:59:07 +01:00
Henrik Rydgård
cf27d14131
Merge pull request #16293 from lvonasek/feature_openxr_camera
...
OpenXR - Modify camera parameters in realtime
2022-10-30 09:14:56 +01:00
Unknown W. Brackets
0cc94ceb15
Draw: Correct ambiguous comparison overload.
2022-10-29 12:52:00 -07:00
Lubos
cbf93d586c
typo fixed
2022-10-29 21:39:46 +02:00
Lubos
363f102cc5
OpenXR - Add new virtual key for camera adjust
2022-10-29 20:47:29 +02:00
Lubos
92422160a0
OpenXR - Camera side adjust added
2022-10-29 19:31:57 +02:00
Lubos
b7da6f7e45
OpenXR - Camera height adjust added
2022-10-29 19:19:25 +02:00
Lubos
48f9c98559
OpenXR - Do not process key actions during camera adjust
2022-10-29 18:50:51 +02:00
Unknown W. Brackets
0bc2bb9efb
Vulkan: Log additional queue command.
2022-10-29 09:05:14 -07:00
Henrik Rydgård
c6fe91224a
Vulkan: Fixes validation errors with "null" textures
...
These arise in non-buffered rendering when we don't have a framebuffer
to texture from.
2022-10-28 18:40:55 +02:00
Lubos
96f89f4bd7
OpenXR - Allow updating camera in realtime
2022-10-28 15:50:00 +02:00
Lubos
f4f7dc570f
OpenXR - Make VR camera parameters floating numbers
2022-10-28 14:59:12 +02:00
Henrik Rydgård
ab1cebec51
Actually bind a global uniform buffer, too. Not yet used.
2022-10-28 10:15:36 +02:00
Henrik Rydgård
96a5c52037
Vulkan: Reserve descriptor set 0 for frame-global data, move everything else to set 1
2022-10-28 09:39:56 +02:00
Henrik Rydgård
6d9008dab5
Fix validation issue with clears, remove redundant code
2022-10-27 11:05:59 +02:00
Henrik Rydgård
763afd4a8e
Improve compatibility checks for stereo rendering.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
31fd928a5c
Name more image views. Very useful with a little patch to the Vulkan debug layers.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
cd203291ba
Fix rendering in non-stereo mode
2022-10-27 11:05:59 +02:00
Henrik Rydgård
15d4495f76
Pass shadergen tests
2022-10-27 11:05:59 +02:00
Henrik Rydgård
2a1526c352
Address feedback
2022-10-27 11:05:59 +02:00
Henrik Rydgård
390a136cb5
Stereo now works through shader depal too
2022-10-27 11:05:59 +02:00
Henrik Rydgård
8413473fa4
Fix more cases, GTA works now.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
524e92374f
Use arrays more consistently.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
91259aaad7
Always use array textures for framebuffers in Vulkan for simplicity.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
2bea495981
wip
2022-10-27 11:05:58 +02:00
Henrik Rydgård
f1b515caaf
Minor shaderwriter refactor
2022-10-27 11:05:58 +02:00
Henrik Rydgård
0de12f5ca9
Some refactoring of framebuffer views, layer issues, more work.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
2e87f0bc0b
More work. Things are starting to work now.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
c668736924
Add a couple of stereo display shaders, add infrastructure, compile stereo pipelines
2022-10-27 11:05:58 +02:00
Henrik Rydgård
3ce8133656
Non-stereo bugfix
2022-10-27 11:05:58 +02:00
Henrik Rydgård
fb250c4b29
More multiview work
2022-10-27 11:05:58 +02:00
Henrik Rydgård
d3804ec2e5
Misc multiview hackery
2022-10-27 11:05:58 +02:00
Henrik Rydgård
7a620962aa
thin3d: Replace hint at future MRT support with basic multi layer support
2022-10-27 11:05:58 +02:00
Henrik Rydgård
80e1db07a7
Minor ShaderWriter refactor, prep for later changes
2022-10-24 17:45:18 +02:00
Henrik Rydgård
1d8ab38ce5
Vulkan: Use v2 feature checks, and add check for multiview features.
...
Extracted from the multiview PR, and renamed some stuff.
2022-10-24 00:21:28 +02:00
Henrik Rydgård
e77ff0281f
Testfix
2022-10-24 00:20:45 +02:00
Henrik Rydgård
ecf2797173
Minor refactor of ShaderWriter flags. Extracted from the stereo PR
2022-10-23 21:57:01 +02:00
Unknown W. Brackets
813bfded92
x86jit: Correct vh2f NAN handling ( #16275 )
...
* x86jit: Correct vh2f NAN handling.
Allows another test to pass.
* x86jit: Reuse MAccessibleDisp().
2022-10-23 10:09:29 +02:00
Henrik Rydgård
3af86ec6f7
Make it possible to specify extensions for Vulkan in the ShaderWriter
2022-10-22 17:46:57 +02:00
Luboš Vonásek
df04280c34
OpenXR - Wrong condition removed ( #16271 )
2022-10-22 14:45:57 +00:00
Henrik Rydgård
cafce7365b
Vulkan: Fix frame ordering issue with postprocessing shaders
...
Requested an init command buffer outside the frame, which is dangerous
and caused validation problems with command pool resets.
Would like to assert on insideFrame in GetInitCmd, but we use it from
some init code where it does work correctly. Might clean that up at some
point.
2022-10-21 12:52:21 +02:00
Lubos
2fd6438c0e
OpenXR - Camera distance adjust added
2022-10-20 21:23:27 +02:00
Henrik Rydgård
90d395a10d
Remove "attachment" parameter from BindFramebufferAsTexture everywhere.
...
Not actually useful since our framebuffer objects don't support multiple
color images, and probably won't ever need to.
2022-10-20 10:15:19 +02:00
Henrik Rydgård
8cd602a9c6
Merge pull request #16257 from unknownbrackets/error-cleanup
...
Kernel: Fix reported StopThread error
2022-10-19 08:06:30 +02:00
Unknown W. Brackets
a42064eb48
Vulkan: Correct some enum switch warnings.
...
Nice to log debug annotations anyway.
2022-10-18 21:52:38 -07:00
Lubos
fbb1e7eda0
OpenXR - Use only the first projection matrix in frame for mirroing detection
2022-10-18 12:39:42 +02:00
Henrik Rydgård
269eb55c17
Build/warning fix
2022-10-18 10:48:16 +02:00
Henrik Rydgård
feb4f9477a
Remove newly added dependencies on PPSSPP
2022-10-18 10:35:42 +02:00
Henrik Rydgård
0251f33ec3
Don't use PPSSPP-specific stuff in Common/VR for now.
2022-10-17 23:13:43 +02:00
Henrik Rydgård
0a222345c1
Buildfixes
2022-10-17 20:43:58 +02:00
Henrik Rydgård
70488be450
Make as much as possible of the VR code build on all platforms
2022-10-17 20:12:48 +02:00
Henrik Rydgård
aa51bfd1ef
Use GPU "use" flags to replace IsVRBuild in the renderer. It remains elsewhere.
2022-10-17 19:57:11 +02:00
Lubos
be2613d495
OpenXR - Move VR passes count calculation
2022-10-17 19:07:27 +02:00
Lubos
8ed105ff83
OpenXR - Simplify projection matrix analyze
2022-10-17 18:57:47 +02:00
Lubos
468a193d6d
OpenXR - Get rid of VR tweaks
2022-10-17 18:52:03 +02:00
Lubos
d5c9d15ec3
OpenXR - Move matrix composing out of VR tweaks
2022-10-17 18:31:01 +02:00
Henrik Rydgård
eb18a87eee
Merge pull request #16186 from lvonasek/feature_openxr_vulkan
...
OpenXR - Initial work to support multiple render APIs
2022-10-17 14:47:47 +02:00
Lubos
e90a7de3e4
OpenXR - Add VR mode for stereo flat screen rendering
2022-10-16 20:28:45 +02:00
Henrik Rydgård
cd0cef7aa1
Merge pull request #16219 from catsout/fix-vulkan-wayland
...
Vulkan: fix wayland swapchain size 1x1
2022-10-15 22:51:48 +02:00
Unknown W. Brackets
8156f6fe28
D3D9: Correct scissor state cache in Draw.
...
Gets reset when updating the render target. This fixes UI scissors.
2022-10-15 12:50:27 -07:00
catsout
b0ceeede79
Vulkan: fix wayland swapchain size 1x1
...
From Vulkan spec,
surfaceCapabilities.currentExtent can be 0xFFFFFFFF(-1)
Define a callback to get drawsize from window creator
relate:
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkSurfaceCapabilitiesKHR.html
https://github.com/KhronosGroup/Vulkan-Docs/issues/590#issuecomment-347932321
2022-10-15 19:02:42 +08:00
Lubos
de41650318
OpenXR - Disable VUlkan for now
2022-10-14 16:47:54 +02:00
Henrik Rydgård
f269137c78
Revert "Vulkan: Create depth/stencil buffers on demand"
...
This reverts commit be37de106c
.
2022-10-13 22:39:47 +02:00
Henrik Rydgård
4d1da5859c
Add simple way to add debug annotation in the middle of the command stream. Vulkan-only.
2022-10-13 22:39:44 +02:00
Lubos
d0431e494a
OpenXR - Create VR framebuffer for Vulkan
2022-10-12 19:16:17 +02:00
Lubos
ade606bc3c
OpenXR - Hookup VR API into Vulkan
2022-10-12 16:21:54 +02:00
Henrik Rydgård
e0e29a1556
Merge pull request #16197 from hrydgard/more-uniform-optimization
...
More uniform optimization, fixes
2022-10-12 01:00:27 +02:00
Henrik Rydgård
b0cf97cf4d
Touchpad/mousewheel scrolling acted very weirdly on Mac due to 0 deltas. Make it work better.
...
Ignoring the 0 deltas helps a lot for the feel, even though it still isn't that smooth feel yet.
2022-10-11 14:00:46 +02:00
Henrik Rydgård
901f698a10
Merge pull request #16201 from unknownbrackets/gedebugger
...
GE Debugger: Normalize framebuffer texture preview
2022-10-11 11:33:19 +02:00
Henrik Rydgård
804220afb1
Merge pull request #16198 from unknownbrackets/gles-stencil
...
Readback stencil buffer for debugger on GLES
2022-10-11 10:55:38 +02:00
Unknown W. Brackets
999055791d
D3D9: Remove block transfer code overrides.
...
We can just use Draw now. Keep depth, though, since it applies scale.
2022-10-10 21:48:38 -07:00
Henrik Rydgård
8b2e7d6e2f
Merge pull request #16200 from unknownbrackets/vulkan-depth
...
Vulkan: Fix initial depth copy w/o existing depth
2022-10-11 06:45:21 +02:00
Unknown W. Brackets
c89cf1cde7
D3D9: Implement CopyFramebufferToMemorySync().
...
This works like other backends, including D3D11. This allows us to get
rid of the old implementation and reuse more code.
2022-10-10 21:28:14 -07:00
Unknown W. Brackets
26fd063cd1
Vulkan: Fix initial depth copy w/o existing depth.
2022-10-10 19:14:34 -07:00
Unknown W. Brackets
fc68cd9457
GLES: Add debug readback of stencil data.
...
This allows the existing gpu.buffer.renderStencil to snapshot the state.
2022-10-10 17:09:14 -07:00
Unknown W. Brackets
b991a84b91
GLES: Allow stencil texturing if supported.
2022-10-10 16:43:19 -07:00
Henrik Rydgård
6f703128ec
Experimentally revert "Delete some misguided FPU control code, that we definitely don't want"
...
This reverts commit d52d383c22
.
2022-10-10 18:35:29 +02:00
Henrik Rydgård
69bc7b060f
glslang: Set a missing resource limit. Avoids spurious errors in shader unit test
2022-10-10 17:17:17 +02:00
Henrik Rydgård
d56bdcb81e
Merge pull request #16196 from hrydgard/improved-render-stats
...
Improved stats in the Vulkan GPU profiler
2022-10-10 15:40:17 +02:00
Henrik Rydgård
d4bfe9299d
Track min and max GPU time, init time, render CPU time.
...
Mainly wanted to see if init time is a factor, there are optimizations
we can do there.
2022-10-10 10:53:27 +02:00
Henrik Rydgård
d52d383c22
Delete some misguided FPU control code, that we definitely don't want
2022-10-10 10:46:51 +02:00
Henrik Rydgård
32699da6df
Vulkan (trivial): Fix numDraws stat when merging render passes. Shorten a name.
2022-10-10 10:06:30 +02:00
Unknown W. Brackets
179c1e4a3b
GLES: Enable EXT_depth_clamp where supported.
...
Seems like Freedreno may support this.
2022-10-10 00:54:29 -07:00
Henrik Rydgård
dd389ade8f
Merge pull request #16192 from unknownbrackets/depth-download
...
D3D11: Correct depth readback
2022-10-10 09:48:18 +02:00
Unknown W. Brackets
bad4a93d3c
D3D11: Correct depth readback.
2022-10-09 15:50:50 -07:00
Unknown W. Brackets
8c1acc30e4
Savedata: Combine file info and dir listing calls.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
7b8350f8a8
Android: Differentiate empty dir from failure.
2022-10-09 14:42:31 -07:00
Henrik Rydgård
be37de106c
Vulkan: Create depth/stencil buffers on demand
2022-10-09 20:28:32 +02:00
Lubos
43f848a2aa
Merge branch 'master' into feature_openxr_vulkan
2022-10-09 17:49:17 +02:00
Lubos
7c6cff5ae9
Merge branch 'master' into feature_openxr_vulkan
2022-10-09 17:48:23 +02:00
Henrik Rydgård
49de375bff
Merge pull request #16183 from unknownbrackets/depth-usage
...
GPU: Ignore depth when masked and ALWAYS
2022-10-09 10:41:40 +02:00
Henrik Rydgård
10fedf19bd
Merge pull request #16182 from unknownbrackets/gles-indexed
...
GLES: Use GL_LUMINANCE on GLES for indexed tex
2022-10-09 10:19:26 +02:00
Henrik Rydgård
76be009b41
Merge pull request #16181 from unknownbrackets/d3d9-clut
...
Add rendered CLUT handling to D3D9
2022-10-09 10:17:17 +02:00
Unknown W. Brackets
bc84d6345b
Vulkan: Disable geometry shaders for Mali <= 18.
...
These drivers apparently have some weird behavior.
2022-10-09 00:57:10 -07:00
Unknown W. Brackets
ce79649c02
GLES: Use GL_LUMINANCE on GLES for indexed tex.
...
See #16176 , used for rendered CLUTs.
2022-10-08 17:32:11 -07:00
Unknown W. Brackets
81cf76a619
D3D9: Correct sampler states for binding 1+.
2022-10-08 15:34:00 -07:00
Lubos
bf14ca84d3
OpenXR - Revision of VR rendering
2022-10-08 14:38:49 +02:00
Henrik Rydgård
131c1ca79e
Typo fix, thanks iota97
2022-10-06 20:46:57 +02:00
Henrik Rydgård
bf25f4b283
Shader uniforms (VK/D3D11): Fix issue where we could overwrite the fourth component padding.
2022-10-06 10:52:58 +02:00