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
Unknown W. Brackets
e6b4495e22
GPU: Make NotifyConfigChanged() calls consistent.
...
They're generally centralized in Common.
2022-09-07 23:41:00 -07: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
5d50d02227
Merge pull request #15894 from unknownbrackets/debugger
...
GE Debugger: Record only one flip if display framebuf not changed, step on vsync
2022-08-24 06:27:31 +02:00
Unknown W. Brackets
c581a83896
GPU: Centralize SetDisplayFramebuffer().
2022-08-23 19:29:06 -07:00
Henrik Rydgård
5084743bbb
Use Draw2D for depal shaders (except the actual blit, for now)
2022-08-23 11:21:40 +02:00
Henrik Rydgård
b39b74e602
More renaming. Fix shader view for Vulkan
2022-08-22 12:30:51 +02:00
Henrik Rydgård
cdb4124bc1
More removing redundant stuff
2022-08-16 21:38:09 +02:00
Henrik Rydgård
6f1f482432
Make GLQueueRunner/RenderManager aware of device caps, use it to check for NPOT and some other stuff
2022-08-07 11:15:23 +02:00
Henrik Rydgård
81c36578ca
Feature detection fixes
2022-08-06 18:27:03 +02:00
Henrik Rydgård
45def772ee
Move the depal cache instance ownership to TextureCacheCommon
2022-08-06 18:27:03 +02:00
Henrik Rydgård
8aebf0dca4
Port the OpenGL depal path to thin3d
2022-08-06 18:27:02 +02:00
Henrik Rydgård
19931c003f
Clean up blit/copy feature detection. Don't need fast GPU flags for these.
2022-08-02 09:53:46 +02: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
Unknown W. Brackets
5557950a4b
GPU: Allow range cull on Mali/etc.
...
Previously had been disabled when cullDistance/clipDistance were
unsupported, but it's still helpful without those. See #15049 .
2021-10-23 08:43:14 -07:00
Unknown W. Brackets
d804d35dcb
GPU: Enable new guardband culling again.
2021-10-21 15:29:51 -07:00
Unknown W. Brackets
c72d045170
Compat: Ignore DisableRangeCulling with clip/cull.
...
As long as we support these things and the NAN issue isn't there, we
should be able to safely enable regardless.
2021-10-21 13:23:13 -07:00
Unknown W. Brackets
33598f2e75
GPU: Support clip and cull distances separately.
...
Older GL devices, and it seems Apple devices, may not support cull.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
5e6f54033e
GPU: Split clip and cull caps.
...
GL_ARB_cull_distance is needed, sometimes available on older GL.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
046a5c548b
GLES: Check clip/cull distance support.
...
Pretty limited on GLES3+. Also D3D11.
Seems like doing it on D3D9 might be a bit tricky.
2021-10-12 20:34:42 -07:00
Henrik Rydgård
4c9b5ada0f
Address feedback
2021-07-09 21:09:44 +02:00
Henrik Rydgård
4e8ffae024
Implement basic depth texturing for OpenGL, requires depth clamp for now.
...
Need to figure out what to do about other Z mappings.
Helps #6411 for OpenGL on desktop primarily, and certain other games affected by #13256
are likely working too like the fog in Harry Potter.
2021-07-09 21:09:44 +02:00
Henrik Rydgård
df6abe83a3
Support depth clamping in OpenGL where available.
...
Should make support for depth texturing quite easy.
Unfortunately, this extension does not exist on OpenGL ES. There we'll
have to use ugly tricks with gl_FragDepth if we want this.
2021-07-09 21:09:44 +02:00
Henrik Rydgård
025bcb1673
Introduce Path, start using it all over the place.
...
Still lots left to convert!
Convert GetSysDirectory to return Path.
More buildfixing
Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
de46b0998a
GPU: Correctly initialize HW tessellation support.
...
Oops, shouldn't call a virtual in a constructor.
2021-05-08 09:10:23 -07:00
Unknown W. Brackets
e85a8b0f5b
Global: Cleanup class init order warnings.
2021-02-15 11:59:45 -08:00
Henrik Rydgård
16f629df3e
Split the DepthRangeHack compat setting into itself and DisableRangeCulling
...
Most of our uses of DepthRangeHack was just to get DisableRangeCulling anyway -
and we don't want that on when not needed.
Also disables range culling for Splinter Cell Essentials (see #13035 )
We really need to understand range culling better. This is a "ship hack" for 1.11.
2020-12-26 19:56:49 +01:00
Henrik Rydgård
559ccd9f33
Minor cleanups
2020-12-14 20:06:06 +01:00
Henrik Rydgård
32c9728c0c
Some cleanups in GL feature and shader language detection.
...
Gets rid of many wrong or bad checks for IsCoreContext.
2020-12-14 19:46:11 +01:00
Henrik Rydgård
2384b7a17d
Remove support for NV_shader_framebuffer_fetch extension, very old and rare.
...
Minor refactor.
2020-11-09 13:31:39 +01:00
Henrik Rydgård
d9ee06a60d
Reorganize the DeviceLost code a little. FramebufferManagerCommon now sees it.
2020-11-07 10:51:54 +01:00
Henrik Rydgård
7b2236778b
Remove remnants of an old, no longer applicable readback optimization
2020-11-05 14:38:20 +01:00
Henrik Rydgård
43ce4e7493
Remove an unmotivated ifdef. Additional cleanup
2020-10-22 00:10:21 +02:00
Henrik Rydgård
495fd9a13c
Fix OpenGL crash introduced in #13536
2020-10-11 22:34:37 +02:00
Henrik Rydgård
4f43cff5ca
Move fileutil, net, image loaders, ui to Common. ( #13506 )
...
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing
Let's also move net while we're at it.
Move the ZIM/PNG loaders over to Common.
Move the UI framework into Common
iOS buildfix
* Buildfix
* Buildfixes
* Apple buildfix
* This typo again..
* UWP buildfix
* Fix build of PPSSPPQt, such as it is (it's not in good condition...)
* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård
821817e6d4
Move the profiler to Common
2020-10-04 11:42:16 +02:00
Henrik Rydgård
ff8148dd92
Move native/util, native/data and native/i18 to Common/Data.
...
Also move colorutil.cpp/h
linking build fix experiment
Delete a bunch of unused CMakeLists.txt files
CMakeLists.txt linking fix
Don't include NativeApp.h from any headers.
Android.mk buildfix
Half of the UWP fix
Buildfix
Minor project file cleanup
Buildfixes
Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård
3093b9c7bf
Share GPUS stats formatting code between the backends (easier to add new stats)
2020-09-20 22:09:25 +02:00
Henrik Rydgård
d0f7b1e30f
Make the implementations of CopyFramebufferDepth more similar.
...
Also avoid matching framebuffers with bad z for copies.
2020-09-17 20:52:45 +02:00
Henrik Rydgård
181ddd842a
Unify some GPU_SUPPORT* bits
2020-09-17 20:52:32 +02:00
Henrik Rydgård
f6db1c2b01
Show how many times we evaluate framebuffers per frame in debug statistics.
2020-09-12 15:37:03 +02:00
Henrik Rydgård
c41f875df4
Remove base/logging.h in a whole lot more places.
2020-08-15 19:09:00 +02:00
Henrik Rydgård
b43698a13d
Remove most instances of base/logging.h from Common, Core, GPU, more
2020-08-15 19:08:44 +02:00
Unknown W. Brackets
b8342fb8ec
SaveState: Rename ChunkFile files to Serialize.
...
Makes more sense and less weird than ChunkFileDoMap, etc.
2020-08-10 08:04:05 +00:00
Unknown W. Brackets
1dc5ee424b
SaveState: Split out Do types to reduce headers.
2020-08-10 08:03:44 +00:00
Henrik Rydgård
d57edfbdac
Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency
2020-08-03 23:17:22 +02:00
Henrik Rydgård
bb6219e402
Merge pull request #12921 from unknownbrackets/postshader
...
Use less FBOs for chained post-processing shaders
2020-07-13 18:52:53 +02:00
Unknown W. Brackets
9ef521d945
GPU: Avoid immediate postshader FBO recreate.
...
Before, we created things at the wrong size, then recreated at the right.
Now we just start at the correct size once.
2020-06-12 12:35:35 -07:00