Commit Graph

23852 Commits

Author SHA1 Message Date
Henrik Rydgård
eb014e8c6b Try to be more consistent when initializing vulkan structs. 2018-02-25 12:15:29 +01:00
Henrik Rydgård
b7b5c5e211 Follow the spec rules about errors when allocating from descriptor pools
See https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateDescriptorSets.html
2018-02-25 12:15:29 +01:00
Henrik Rydgård
8e0e5f9aa6 Extract RecreateDescriptorPool() 2018-02-25 12:15:29 +01:00
Henrik Rydgård
3750327054
Merge pull request #10644 from hrydgard/thin3d-create-header
Separate T3DCreate* into its own header to avoid including Windows.h etc in some cases.
2018-02-25 12:14:39 +01:00
Henrik Rydgård
4b4a2a4096 Buildfixes 2018-02-25 11:25:16 +01:00
Henrik Rydgård
5f8118b82b Separate T3DCreate* into its own header to avoid including Windows.h etc in some cases. 2018-02-25 10:27:59 +01:00
Henrik Rydgård
5d77c63216 Vulkan: Need to count allocated descsets per frame separately from the map, since tess isn't even in-frame cached. 2018-02-24 12:15:22 +01:00
Henrik Rydgård
c2c5b42354
Merge pull request #10642 from hrydgard/dynamic-descriptor-pools
Vulkan: Dynamically grow descriptor pools as needed.
2018-02-24 11:08:42 +01:00
Henrik Rydgård
d1a8514e72 Vulkan: Dynamically grow descriptor pools as needed. Should help #10641 and similar issues. 2018-02-24 10:24:11 +01:00
Henrik Rydgård
2c2b33649f
Merge pull request #10637 from unknownbrackets/gl-aligned
GLES: Fix texture scaling
2018-02-23 23:31:04 +01:00
Unknown W. Brackets
506dfcb916 GLES: Fix texture scaling.
Oops, and I had broken it again.
2018-02-22 19:58:52 -08:00
Henrik Rydgård
898742034e
Merge pull request #10636 from KentuckyCompass/ios-shutdown
iOS: fix hang on exit
2018-02-22 14:04:32 +01:00
Kentucky Compass
149ca17df6 iOS: fix hang on exit 2018-02-22 03:04:32 -08:00
Henrik Rydgård
8d80fe0397
Merge pull request #10630 from unknownbrackets/gl-aligned
GLES: Fix unpack misalignment, remove old Qt texture func
2018-02-19 22:34:24 +01:00
Unknown W. Brackets
4b8d8c875d Qt: Remove old texture debug API.
No one's testing it and it's not the best way.  We have a better
implemented API and should use it instead.
2018-02-19 09:09:35 -08:00
Unknown W. Brackets
ecd1a04e44 GLES: Fix unpack misalignment, Qt debugger freeing.
We no longer use unpack, so we should always decode to w not bufw.
2018-02-19 09:02:22 -08:00
Henrik Rydgård
8fcaa651a5
Merge pull request #10627 from unknownbrackets/gl-aligned
GLES: Properly free when upscaling textures
2018-02-19 10:08:41 +01:00
Unknown W. Brackets
438951f844 GLES: Properly free when upscaling textures.
Oops.  Fixes crash introduced by #10603.
2018-02-18 19:03:31 -08:00
Henrik Rydgård
78449ce675
Merge pull request #10624 from unknownbrackets/texcache
TexCache: Decimate CLUT variants more often
2018-02-18 22:02:18 +01:00
Unknown W. Brackets
e97046da4e TexCache: Decimate aggressively with many variants.
It should be safe to decimate after fewer frames with a threshold like
this.
2018-02-18 12:29:14 -08:00
Unknown W. Brackets
d61fd5f6a6 TexCache: Decimate CLUT variants more often.
When creating a new texture, we determine if it has CLUT variants and
decimate more often.
2018-02-18 12:29:01 -08:00
Unknown W. Brackets
864eb5dcad
Merge pull request #10611 from hrydgard/vulkan-android-task-switch
Fix issue with Vulkan task switching and resolution changes on Android.
2018-02-13 02:05:02 +00:00
Henrik Rydgård
926b3873df Fix issue with Vulkan task switching and resolution changes on Android. 2018-02-12 17:47:31 +01:00
Henrik Rydgård
038d8b7f3e
Merge pull request #10610 from hrydgard/postshader-gl-fixes
GL: Fix issues with switching postprocessing shaders, image cutoff at certain resolution combinations
2018-02-12 14:54:37 +01:00
Henrik Rydgård
7421f2aff6 Postprocessing: Fix bug where scissor cut off the image if render resolution > display resolution 2018-02-12 14:10:54 +01:00
Henrik Rydgård
88e8229159 GL: Need to recompile postshaders on Resized() (which is a bit of a misnomer) 2018-02-12 14:01:52 +01:00
Henrik Rydgård
9e75358cd0 Oops, didn't mean to update the submodules backwards (remains from a bisect) 2018-02-12 11:50:55 +01:00
Henrik Rydgård
1b9c2f26f9 Whitelist mapbuffer usage to NVIDIA only (should maybe add Qualcomm too), it's murder on Mali 2018-02-12 11:46:19 +01:00
Henrik Rydgård
4e5fb6e286
Merge pull request #10606 from unknownbrackets/gl-shutdown
GLES: Fix shutdown while stepping
2018-02-12 00:20:43 +01:00
Unknown W. Brackets
17bcb080f0 GLES: Fix shutdown while stepping. 2018-02-11 15:19:16 -08:00
Henrik Rydgård
39710510ee
Merge pull request #10604 from unknownbrackets/gl-buffers
GLES: Use mapped device memory when possible
2018-02-12 00:16:21 +01:00
Unknown W. Brackets
be0ab58365 GLES: iOS buildfix. 2018-02-11 14:38:36 -08:00
Unknown W. Brackets
5f1cd19687 GLES: Android buildfix. 2018-02-11 13:17:08 -08:00
Unknown W. Brackets
20b532fc71 GLES: Use buffer storage and explicit flush.
This is just as fast as using glMapBufferRange on desktop.
2018-02-11 13:14:28 -08:00
Unknown W. Brackets
7179e408da GLES: Free localMemory later.
It was still in use sometimes as of MapDevice(), so this is safer.
2018-02-11 12:35:33 -08:00
Unknown W. Brackets
edcd2f966a GLES: Use buffer range mapping where appropriate. 2018-02-11 12:35:33 -08:00
Unknown W. Brackets
9eb51a6a36 GLES: Use mapped device memory when possible. 2018-02-11 12:35:32 -08:00
Unknown W. Brackets
adbd8d005c Cheats: Fix a debug assertion. 2018-02-11 12:35:31 -08:00
Henrik Rydgård
4ccf30d0a8
Merge pull request #10605 from unknownbrackets/gl-shutdown
GLES: Wait for queue idle properly
2018-02-11 21:11:20 +01:00
Unknown W. Brackets
df5144b94c iOS: Attempt to fix shutdown race condition.
Not really tested, but should be necessary...
2018-02-11 11:47:15 -08:00
Unknown W. Brackets
cdf378d20c GLES: Prevent race condition on shutdown.
emuThreadState might become STOPPED before the last frame has been run,
which can cause WaitUntilQueueIdle to hang.

It's simpler just to wait until StopThread() is called, since it now is.
This will line up properly with run_.
2018-02-11 11:40:11 -08:00
Unknown W. Brackets
fcc2b59c57 GLES: Wait for queue idle properly.
Need to wait for anything ready for run.  Not everything will have been
submitted.
2018-02-11 11:30:38 -08:00
Henrik Rydgård
c6a9c884bf
Merge pull request #10603 from unknownbrackets/gl-render-manager
Fix OpenGL on Windows XP
2018-02-11 17:39:27 +01:00
Unknown W. Brackets
0474ff5c23 GLES: Use aligned memory for textures.
We use SSE on them, and they used to be aligned, and must be aligned in
PSP RAM, so keep them aligned.

This only really affects 32-bit, since allocs will typically be aligned on
64-bit anyway.

Fixes #10601.
2018-02-11 08:13:57 -08:00
Unknown W. Brackets
0e2a586c1b Global: Fix some type comparison/shadow warnings. 2018-02-11 07:03:23 -08:00
Henrik Rydgård
813c376aed Tiny change to work around internal compiler error (!) in 32-bit builds with latest MSVC update 2018-02-11 13:39:04 +01:00
Henrik Rydgård
030de0ad0b
Merge pull request #10599 from unknownbrackets/gl-render-manager
Fix yet more shutdown shenanigans
2018-02-11 09:07:40 +01:00
Unknown W. Brackets
9a40a5971b GLES: Prevent crash on screenshot without buffers.
It still fails for some reason, but that's better than a segfault.
2018-02-10 16:55:53 -08:00
Unknown W. Brackets
d496b4da9a Windows: Allow GL thread on graphics restart.
Unfortunately, it no longer works to go Vulkan -> OpenGL, and used to...
2018-02-10 16:55:52 -08:00
Unknown W. Brackets
586e35ad23 Windows: Prevent shutdown lag for non-GL.
For Vulkan/D3D, it was taking an extra second to quit.
2018-02-10 16:55:51 -08:00