Henrik Rydgård
a11e7e167b
More D3D9 work on depth textures. Something still missing.
2022-08-21 09:58:58 +02:00
Henrik Rydgård
d0cdb360fd
Remove the DX9 namespace, for consistency with the other backends
2022-08-16 21:49:16 +02:00
Henrik Rydgård
cdb4124bc1
More removing redundant stuff
2022-08-16 21:38:09 +02:00
Henrik Rydgård
cbe6a9161a
Remove some unused code in FramebufferManagerD3D11.cpp/h
2022-08-16 12:15:40 +02:00
Henrik Rydgård
ded8ba8806
More cleanup, fixes.
2022-08-06 18:27:04 +02:00
Henrik Rydgård
e758506bdb
Remove unnecessary complexity from the D3D9 state cache
2022-07-24 21:26:40 +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
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
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
0e3a84b4a8
Move most GPU things to Common.
...
It works after the move, on Windows and Android at least.
Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
Henrik Rydgård
f01ba6dc84
Move NativeApp.h to Common/System, split into NativeApp.h and System.h
...
Buildfix
2020-10-04 11:42:16 +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
f6db1c2b01
Show how many times we evaluate framebuffers per frame in debug statistics.
2020-09-12 15:37:03 +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
Henrik Rydgård
cb568b8f5e
Rename FramebufferDX9.cpp/h to FramebufferManagerDX9.cpp/h
2020-08-03 23:24:50 +02:00
Henrik Rydgård
d57edfbdac
Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency
2020-08-03 23:17:22 +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
Henrik Rydgård
370678c498
Do a similar thing for D3D (let the backend handle the dirtying).
2020-05-24 20:57:59 +02:00
Unknown W. Brackets
22e46b51c2
GPU: Centralize DestroyAllFBOs().
...
This cleans up the postshader update code.
2020-05-13 18:15:04 -07:00
Unknown W. Brackets
4ea5d165f5
D3D11: Always use accurate depth.
...
The Direct3D APIs use a "min" and "max" value, and it's required that min
must be less than or equal to max. If this requirement is not met, the
viewport parameters are not updated.
We forced accurate depth on for NVIDIA and AMD, but this just meant Intel
was still broken and less people were reporting bugs about it.
Although the PSP GE has depth viewport transform, this is not used for
clipping and is not actually the depth range. The minz and maxz GE
registers are the depth range, and minz must be less than or equal to maxz
for drawing to occur.
2020-04-18 22:34:33 -07:00
Unknown W. Brackets
ac60e2ecd4
GPU: Track HW tess at start of frame too.
...
This also makes it so we don't force the setting off when you change
backends, and just ignore it if unsupported.
2020-04-04 11:52:32 -07:00
Unknown W. Brackets
ad98609819
GPU: Use consistent buffered rendering state.
...
The setting can be changed in Qt and Windows between frames, so let's
track the current setting in most places. This is everywhere fbman is
easily accessible.
2020-04-04 10:51:47 -07:00
Unknown W. Brackets
cebcfb1bbd
GPU: Use old frame when presenting a skip.
...
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets
3c1e8abcfe
GPU: Centralize vsync interval logic.
...
We already do unthrottle checking here.
2020-02-29 22:27:00 -08:00
Unknown W. Brackets
5009698cc0
Core: Use a shared_ptr for i18n categories.
...
This does not make them thread safe, but it reduces the chances of a crash
a bit (see #12594.)
2020-02-09 07:35:16 -08:00
Henrik Rydgård
8e7da3fef4
Disable vertex range culling when the depthrange hack is enabled. Temporary workaround for #11576 .
2019-02-26 16:07:11 +01:00
Henrik Rydgård
8af523596f
Disable vertex range culling on old NVIDIA. Should help #11638
2019-02-06 22:44:02 +01:00
Unknown W. Brackets
1f594f3fb5
GPU: Track draw in shader manager.
...
With device restore etc. everywhere.
2018-12-23 12:55:37 -08:00
Henrik Rydgård
fa40bcff8d
Disable triangle range culling on D3D9 on Intel. Should fix #11477
2018-10-21 09:36:15 +02:00
Unknown W. Brackets
a4c0640f01
GE Debugger: Factor out host calls some.
...
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
Unknown W. Brackets
95f270778e
Core: Allow toggle between 2 custom speeds.
...
In addition to virtual keys for each speed separately.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets
b4496f1975
Core: Move config enums to separate file.
...
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik Rydgård
36fd2711d6
Revert "Remove further remains of hardware skinning."
...
This reverts commit 40db61a680
.
2018-04-10 12:22:41 +02:00
Henrik Rydgård
40db61a680
Remove further remains of hardware skinning. Fixes #10661
2018-03-05 00:03:47 +01:00
Henrik Rydgård
c7dcb7c365
D3D9/D3D11: Fix GPU feature detection. Enforce accurate depth on nVidia as well, they no longer seem to support reverse depth so it's needed as a workaround. Fixes #10655
2018-03-01 09:38:06 +01:00
Henrik Rydgård
64ec46e705
Unify FramebufferDirty()/FramebufferReallyDirty() for the hw backends
2018-02-26 11:58:17 +01:00
Henrik Rydgård
78467d6092
Unify FastRunLoop for the hardware backends.
2018-02-26 11:52:16 +01:00
Henrik Rydgård
6a2f45c2e1
Unify UpdateCmdInfo
2018-02-26 11:48:56 +01:00
Henrik Rydgård
8cef1f0f8d
GPU: Unify command table (cmdInfo_)
2018-02-26 11:44:02 +01:00
Henrik Rydgård
967018b7f8
Unify Execute_LoadClut
2018-02-26 11:32:02 +01:00
Henrik Rydgård
c7f8f4c5ca
Unify Execute_Prim
2018-02-26 11:22:27 +01:00
Unknown W. Brackets
0151c5e649
GPU: Track stats on uploads.
...
A lot can lead to slowdown, so it's useful when logging frame drops.
2017-12-28 19:27:45 -08:00
Unknown W. Brackets
f9750dd137
Display: Avoid limiting FPS without a clear.
...
A bit of a dirty heuristic to avoid the slowdown in #8538 .
2017-12-26 19:37:40 -08:00
Henrik Rydgård
fb74c9dfeb
Clean up a small inconsistency
2017-12-07 21:09:09 +01:00
Henrik Rydgård
e6be86ce74
ARM buildfix
2017-11-22 11:01:42 +01:00