Commit Graph
100 Commits
Author SHA1 Message Date
Henrik Rydgård d4237fd542 Split the atlas into three, well two, but two different cases for the fonts.
Platforms that can use OS fonts don't need font_atlas.zim but they do
need ascii font for debug, so does use asciifont_atlas.zim.
2021-12-10 23:22:08 +01:00
Henrik Rydgård b85a7e9a46 Name uniform buffers, add more asserts. Used this to track down the bug fixed in the previous commit. 2021-12-10 21:01:01 +01:00
Henrik Rydgård e10b53def3 Fix an ordering issue causing us to hit some asserts 2021-12-10 21:00:45 +01:00
Henrik Rydgård 7b07a1385a Merge pull request #15220 from unknownbrackets/vulkan-exit
Vulkan: Fix use-after-free on shutdown
2021-12-10 10:37:43 +01:00
Henrik Rydgård 97f3b477ab Merge pull request #15219 from unknownbrackets/vulkan-2d
Vulkan: Avoid desc set error in tests
2021-12-10 10:37:19 +01:00
Henrik Rydgård 51dce175a3 Merge pull request #15218 from unknownbrackets/softjit-sampler
samplerjit: Fix DXT1/DXT5 register releasing
2021-12-09 22:13:48 +01:00
Henrik Rydgård 3e5ba249bf Merge pull request #15217 from hrydgard/scissor-auto-clamp
Vulkan is strict about scissor rect, so let's clamp centrally.
2021-12-08 22:55:12 +01:00
Henrik Rydgård aa8ef54d4d Merge pull request #15216 from hrydgard/curframebuffer-sync
FramebufferManagerCommon: Fix some issues where currentRenderVfb_ could get out of sync.
2021-12-08 22:47:16 +01:00
Henrik Rydgård 45308a16c0 Vulkan is strict about scissor rect, so let's clamp centrally.
Better than spreading the logic all over.

Fixes #15207
2021-12-08 22:38:01 +01:00
Henrik Rydgård 44dc3555ad FramebufferManagerCommon: Fix some issues where currentRenderVfb_ could get out of sync.
It would get out of sync with draw_->GetCurrentFramebuffer(), which led
to checks for self-texturing not working, hitting an assert.

This caused problems when turning off "slow effects", and who knows what
else.

Fixes #15208
2021-12-08 22:01:23 +01:00
Henrik Rydgård dbfa4e6830 Merge pull request #15213 from ANR2ME/adhoc
[Adhoc] Updated PdpCreate, PdpSend, PdpRecv, GetPdpStat, GetPtpStat
2021-12-08 21:38:23 +01:00
Henrik Rydgård b352f61078 Merge pull request #15215 from ANR2ME/adhocctl
[Adhocctl] Fix Tekken 5 Dark Resurrection Multiplayer
2021-12-08 08:50:13 +01:00
Henrik Rydgård be79161058 Merge pull request #15214 from unknownbrackets/threads-atomic
ThreadManager: Check for exchange failure
2021-12-08 08:46:23 +01:00
Henrik Rydgård 5907897c36 Merge pull request #15211 from hrydgard/vulkan-fixes
Vulkan: Specify Vulkan version, fix mip level generation calculation
2021-12-07 23:04:34 +01:00
Henrik Rydgård a2f9f68565 Vulkan: More scissor dimension checks. See #15207 2021-12-07 21:46:10 +01:00
Henrik Rydgård 1f21796ddc Merge pull request #15174 from iota97/ctr-anim
Make CRT animation speed configurable
2021-12-07 21:38:35 +01:00
Henrik Rydgård 05429fc34f Vulkan: Correct the max level to generate mipmap calculation 2021-12-07 21:28:58 +01:00
Henrik Rydgård 0179cb1811 Very minor logging improvement 2021-12-07 21:28:39 +01:00
Henrik Rydgård 466a731ece Detect and specify the max available Vulkan version, up to 1.2. 2021-12-07 21:26:14 +01:00
Henrik Rydgård f1a4abfad2 Merge pull request #15210 from jdgleaver/libretro-dup-frames
(libretro) Force enable g_Config.bRenderDuplicateFrames + minor audio buffer tweaks
2021-12-07 19:38:23 +01:00
Henrik Rydgård d3d87894b0 Merge pull request #15201 from CarterLi/master
Use system headers when building with system miniupnpc
2021-12-07 09:08:42 +01:00
Henrik Rydgård 3e5511b609 Merge pull request #15204 from unknownbrackets/softgpu-texfunc
Correct accuracy of texture functions in software rendering
2021-12-06 09:14:16 +01:00
Henrik Rydgård 196e2ca9fb Merge pull request #15205 from unknownbrackets/android-content-hang
ThreadManager: Use separate pool for IO blocking
2021-12-06 09:12:46 +01:00
Henrik Rydgård 197897979a Merge pull request #15202 from twinaphex/master
(Libretro) Reimplement audio -
2021-12-05 18:34:31 +01:00
Henrik Rydgård 0afddcc38d Merge pull request #15200 from unknownbrackets/softjit-sampler
Use vectorcall and regcache in samplerjit (software renderer)
2021-12-05 09:34:15 +01:00
Henrik Rydgård 897aa81933 Merge pull request #15199 from unknownbrackets/symbolmap
Debugger: Speed up GetFunctionSize()
2021-12-05 09:31:41 +01:00
Henrik Rydgård e34f82627f Merge pull request #15194 from unknownbrackets/psmf-validate
Psmf: Check for invalid stream/EP map entry counts
2021-12-03 08:56:57 +01:00
Henrik Rydgård 984dac562f Merge pull request #15193 from unknownbrackets/vulkan-pipeline
Vulkan: Cleanup pipeline var shadowing
2021-12-03 08:56:36 +01:00
Henrik Rydgård 676ed6c15d Merge pull request #15190 from unknownbrackets/softjit-cleanup
Minor cleanup to software renderer jit
2021-12-02 09:02:55 +01:00
Henrik Rydgård bfe31d8b62 Update Tagalog (tg_PH) with new translations by Gamemulatorer. Fixes #15189 2021-12-01 20:26:05 +01:00
Henrik Rydgård 434fa0f072 Merge pull request #15183 from orbea/spirv-cross-build
ext/SPIRV-Cross-build: Update cmake version
2021-11-30 18:03:29 +01:00
Henrik Rydgård 0ab207adb1 Display the graphics API on logoscreen on more platforms 2021-11-30 10:11:18 +01:00
Henrik Rydgård cfe2716d49 Merge pull request #15178 from unknownbrackets/threads-atomic
Tweaks to thread manager enqueue and shutdown
2021-11-30 09:26:13 +01:00
Henrik Rydgård f825b2cf51 Merge pull request #15184 from orbea/cmake
cmake: Generate git-version.cpp in the build dir
2021-11-30 09:06:00 +01:00
Henrik Rydgård 0ffc4286c7 Merge pull request #15185 from CarterLi/master
CMake: Allow use system miniUPnPc and ( on macOS ) system glew
2021-11-30 09:04:40 +01:00
Henrik Rydgård bed1b5a823 Merge pull request #15181 from unknownbrackets/softjit-args
softjit: Centralize argument register allocation
2021-11-30 09:03:55 +01:00
Henrik Rydgård d45c6bcd75 Merge pull request #15186 from CarterLi/vulkan
ext: Update vulkan headers & binaries
2021-11-30 09:02:57 +01:00
Henrik Rydgård 2a9300698e Merge pull request #15180 from unknownbrackets/softjit-args
Refactor software renderer jit cache to be shared
2021-11-28 22:12:29 +01:00
Henrik Rydgård dbb711bf1d Merge pull request #15175 from unknownbrackets/mips-shutdown
jit: More atomically update pointer
2021-11-28 21:57:04 +01:00
Henrik Rydgård aa12c9b391 Merge pull request #15163 from unknownbrackets/softjit
Implement a jit for drawing pixels in the software renderer
2021-11-28 08:26:05 +01:00
Henrik Rydgård cf6e11e1d1 Merge pull request #15176 from unknownbrackets/sdl-inflight
SDL: Respect inflight frames setting in GL
2021-11-27 23:06:05 +01:00
Henrik Rydgård daae09b4ab Merge pull request #15171 from unknownbrackets/softgpu-cleanup
Correct some alpha/stencil/blend issues in softgpu
2021-11-26 09:04:09 +01:00
Henrik Rydgård 65d3f96f08 Merge pull request #15172 from unknownbrackets/vertexjit-minor
vertexjit: Optimize 5551 read a bit on x86/x64
2021-11-26 08:55:56 +01:00
Henrik Rydgård fb755bac13 Merge pull request #15166 from stuken/libretro_fix_vma_assert
Fix vma assert on libretro content close
2021-11-24 19:03:26 +01:00
Henrik Rydgård c7bba9bf72 Merge pull request #15162 from hrydgard/integrate-vma
Integrate VMA (Vulkan Memory Allocator)
2021-11-23 09:19:26 +01:00
Henrik Rydgård f991f6a789 Remove the old allocator visualizer. Keep the setting but hide it. Other feedback 2021-11-23 08:55:12 +01:00
Henrik Rydgård 8f29d9542c Buildfixes 2021-11-22 19:53:00 +01:00
Henrik Rydgård 2cbadefb29 Fix bugs in deletion. Delete redundant functions. 2021-11-22 19:02:08 +01:00
Henrik Rydgård a7591d7826 Switch framebuffers to use VMA for allocation as well 2021-11-22 18:54:09 +01:00
Henrik Rydgård 8d5247ddf3 Convert the PushBuffer to use VMA. 2021-11-22 18:54:09 +01:00
Henrik Rydgård 0cbb7ab027 Change the PushBuffer API a bit to not take explicit memory types. 2021-11-22 18:54:09 +01:00
Henrik Rydgård c2f594cc73 Remove the VulkanDeviceAllocator 2021-11-22 18:54:09 +01:00
Henrik Rydgård 1b1e585a35 More integration, use VMA in VulkanTexture 2021-11-22 18:54:09 +01:00
Henrik Rydgård 8f9ce03a8d Start integrating VMA 2021-11-22 18:54:08 +01:00
Henrik Rydgård eceb691f92 Add VMA to ext/ (AMD's Vulkan Memory Allocator) 2021-11-22 18:54:08 +01:00
Henrik Rydgård 712b87ae57 Merge pull request #12108 from hrydgard/vulkan-async-pipeline-creation
Vulkan async pipeline creation
2021-11-21 22:33:43 +01:00
Henrik Rydgård 81fba1f4a4 Minor refactor 2021-11-21 22:08:53 +01:00
Henrik Rydgård 29f54befbd Comment improvement, restore accidental deletion 2021-11-21 21:34:05 +01:00
Henrik Rydgård f1cd1d535b Add a hidden setting to turn off the shader cache, for shader compile performance work 2021-11-21 21:25:56 +01:00
Henrik Rydgård b3bd068051 Merge pull request #15158 from unknownbrackets/softjit
softgpu: Fix PixelFuncID size
2021-11-21 19:05:13 +01:00
Henrik Rydgård dda425b068 Vulkan: Add a single background thread for pipeline creation
Add proper waits for compile-done

Don't rely on non-standard struct initialization of classes

Attempt to drain the pipeline compile queue before destroying the PipelineManager.

Vulkan: Bump the cache version for testing
2021-11-21 18:36:00 +01:00
Henrik Rydgård 62f4875e24 VulkanRenderManager: Add deferred pipeline creation (to get it off the CPU thread) 2021-11-21 18:36:00 +01:00
Henrik Rydgård be152acf7b Merge pull request #15157 from unknownbrackets/softjit
Refactor draw pixel and hardcode another path
2021-11-21 17:49:06 +01:00
Henrik Rydgård 938e6d83cb Merge pull request #15156 from unknownbrackets/vulkan
Vulkan: Fix crash on shutdown after device lost
2021-11-21 14:57:47 +01:00
Henrik Rydgård 824805ec1e Merge pull request #15154 from unknownbrackets/softjit
Use a pixel func ID in software rendering
2021-11-21 10:50:06 +01:00
Henrik Rydgård 7c4c352659 Merge pull request #15155 from unknownbrackets/softgpu-fog
softgpu: Clamp and round fog by mantissa bits
2021-11-21 10:49:08 +01:00
Henrik Rydgård b6f376fa6d Merge pull request #15153 from hrydgard/depointerify-promise
Threading: Remove a level of indirection from Promise<T> and Mailbox<T>
2021-11-20 23:19:27 +01:00
Henrik Rydgård 4f85b8b2ef Threading: Remove a level of indirection from Promise and Mailbox.
Makes using small copyable or POD objects in these more efficient, and if you want
to you can just put a pointer or smart pointer in there, which will
effectively do the same thing as the old setup.
2021-11-20 22:40:10 +01:00
Henrik Rydgård 20c3c8f291 Merge pull request #14848 from iota97/dpad-size-fix
Fix DPAD size calculation
2021-11-20 15:58:56 +01:00
Henrik Rydgård 420fde98ee Merge pull request #15147 from stuken/libretro_content_close_crash_fix
Fix libretro crash on close content after cached GPU pointer cleanup.
2021-11-20 15:52:52 +01:00
Henrik Rydgård 25034fdc55 Merge pull request #15151 from iota97/chat-touch
Prevent chat menu touch to fall throght
2021-11-20 15:48:43 +01:00
Henrik Rydgård 98cd023cf9 On desktop, change an empty current directory to "/" on startup.
Just avoids some confusion.
2021-11-20 14:48:51 +01:00
Henrik Rydgård b6e7fe1aaf Merge pull request #15143 from unknownbrackets/ui-font-atlas
UI: Switch to font texture for debug stats
2021-11-15 16:44:34 +01:00
Henrik Rydgård 4c1fbaf00e Merge pull request #15142 from unknownbrackets/gpu-cleanup
Cleanup some cached pointers in GPU classes
2021-11-15 09:17:33 +01:00
Henrik Rydgård 87d2e16b11 Merge pull request #15138 from hrydgard/delay-load-dialogs
Windows debugger: Load the dialogs on demand.
2021-11-14 00:15:07 +01:00
Henrik Rydgård 42bc9066ee Add shortcut for content_uri and native paths in CleanRecent. Saves 150ms. 2021-11-13 22:47:29 +01:00
Henrik Rydgård fc26beca4b Also delay-load the VFPU dialog, just because 2021-11-13 22:24:30 +01:00
Henrik Rydgård c004e9ca9d Windows debugger: Load the dialogs on demand.
I think this is especially good for the Ge dialog since we now can avoid
initializing that extra GL context unless you open the dialog.
2021-11-13 22:10:37 +01:00
Henrik Rydgård a783f49948 Merge pull request #15135 from hrydgard/use-set-thread-description
Use the "new" API SetThreadDescription to set thread names on Windows.
2021-11-13 22:10:09 +01:00
Henrik Rydgård 9f1c9b9963 Buildfix 2021-11-13 18:12:09 +01:00
Henrik Rydgård 6e1455fd55 Use the "new" API SetThreadDescription to set thread names on Windows.
Mainly useful in debugging and profiling tools. Using the new function helps
modern debugging/profiling tools like Superluminal which don't support the
old exception method.

(Is there any old tool left that might be a reason we'd want to do both?)
2021-11-13 18:02:36 +01:00
Henrik Rydgård a25d768d5d Merge pull request #15134 from PutuDesca/patch-3
Last update (id_ID.ini)
2021-11-13 17:34:27 +01:00
Henrik Rydgård 3b77d29b9b Merge pull request #15132 from LightVR0/patch-4
Retraducción
2021-11-13 11:54:48 +01:00
Henrik Rydgård bf1aa22fce Merge pull request #15133 from PutuDesca/patch-2
Update id_ID.ini
2021-11-13 11:54:32 +01:00
Henrik Rydgård 82465cb2e4 Merge pull request #15131 from Narugakuruga/patch-9
Update zh_CN.ini
2021-11-12 14:21:03 +01:00
Henrik Rydgård 5a8b0986fd Merge pull request #15127 from PutuDesca/patch-1
id_ID.ini
2021-11-11 13:15:56 +01:00
Henrik Rydgård eb12c14850 Merge pull request #15124 from unknownbrackets/vblank-mutex
Display: Prevent lock around listener calls
2021-11-11 07:30:20 +01:00
Henrik Rydgård 80933ac4cb Merge pull request #15118 from hrydgard/disable-opengl-fallback-android-11
On Android 11 and later, let's not fallback to OpenGL on init crashes.
2021-11-10 08:48:34 +01:00
Henrik Rydgård 1d323f96d3 Merge pull request #15120 from PutuDesca/patch-3
Update *id_ID.ini*
2021-11-10 08:47:21 +01:00
Henrik Rydgård 161a32b4a2 On Android 11 and later, let's not fallback to OpenGL at all.
Not meaningful since Vulkan is stable and widely used now and we really
don't do anything crazy when drawing the menu.

See #15079
2021-11-09 23:06:10 +01:00
Henrik Rydgård df9be770d6 Add tip to Lazy texture caching button. Replaces #14183 2021-11-09 22:54:47 +01:00
Henrik Rydgård 4161b500ab Merge pull request #15021 from unknownbrackets/ui-font-atlas
UI: Support a second texture for just fonts
2021-11-09 22:51:09 +01:00
Henrik Rydgård 4d38905474 Merge pull request #15100 from vit9696/master
SDL: Read assets from Resources on macOS like on iOS
2021-11-07 23:21:29 +01:00
Henrik Rydgård 9b457f544e Merge pull request #15111 from unknownbrackets/softgpu-scissor
softgpu: Correct scissor for pixel centers
2021-11-07 20:45:11 +01:00
Henrik Rydgård 3f4562c552 Merge pull request #15109 from hrydgard/texture-upscale-rework
Texture upscale shader rework (drastic perf improvement)
2021-11-07 17:33:55 +01:00
Henrik Rydgård b152dc1b5a Remove ARM Mali blacklisting for 4xBRZ, works now 2021-11-07 16:48:56 +01:00
Henrik Rydgård f58e75e462 Remove unused variable 2021-11-07 16:31:28 +01:00
Henrik Rydgård 43dc54bc4a Comment fix, remove assert 2021-11-07 16:30:47 +01:00
Henrik Rydgård c60feef55e Remove support for 16-bit textures from the upscaling shader, to shorten it for benefit of mobile GPUs 2021-11-07 16:08:57 +01:00
Henrik Rydgård 5654d3c9ed Fix edge conditions in 4xXBZR 2021-11-07 15:51:58 +01:00