Commit graph

6149 commits

Author SHA1 Message Date
Luke Usher
97b13c35fa
Merge pull request #1770 from PatrickvL/fix_memleak_pointsprite_textures
Avoid memory leak in point-sprite texture swaps
2019-11-07 15:41:30 +00:00
PatrickvL
9aea68534e Merge pull request #1763 from PatrickvL/variable_renaming
Small code-cleanup
2019-11-07 16:20:02 +01:00
PatrickvL
d1d0700504 Introduce host CPU idle wait function.
Introduce host GPU flushing functionality.
Put Xbox callbacks into a queue instead of keeping around only one.
Use host GPU query events to emulate callback events at roughly the same time when the NV2A Xbox GPU would.
All this can be (programmatically) disabled by a g_bHack_DisableHostGPUQueries boolean (later, this could be made configurable).
2019-11-05 15:29:03 +01:00
PatrickvL
b36286a237 Move Xbox callback insertion and handling into separate functions, and call them where appropriate. 2019-11-05 15:25:05 +01:00
x1nixmzeng
cd183128d6 Fixed CMake designer settings for debugger gui 2019-11-04 20:46:46 +00:00
Luke Usher
d50cc9c5bb
Merge pull request #1763 from PatrickvL/variable_renaming
Small code-cleanup
2019-11-03 10:25:45 +00:00
patrickvl
364499cda0 Reordered Direct3D global variables 2019-11-02 17:03:06 +01:00
patrickvl
54bd0e2a18 Change NULL into nullptr or xbnullptr or xbnull, depending the situation 2019-11-02 16:24:37 +01:00
patrickvl
e41d684cfa Renamed global variables (taken from Vsh_unpatching), removed (or commented-out) unused variables, and additional comments 2019-11-02 16:24:36 +01:00
Fred Hallock
8ae612fdb7 Add support for relative Xbe paths (#1766)
* Fixed an issue where the Xbe path needs to be absolute. I added a call to std::filesystem::absolute to resolve the path to absolute at the earliest that it is accessed from __argv so that there is no chance for it to cause a problem.
2019-11-02 09:41:13 +00:00
Luke Usher
93e342e414
Merge pull request #1765 from ergo720/sdl_ctrl_fix_binding
Fix sdl controller input bindings
2019-11-02 09:37:08 +00:00
ergo720
1256b3ee59 Fix sdl controller input bindings 2019-11-01 19:04:15 +01:00
Luke Usher
ff5e0d3441
Merge pull request #1757 from PatrickvL/indexed_quads
Speed up drawing indexed quads
2019-10-30 10:48:08 +00:00
PatrickvL
7508ec190e Comment-only change : Make "test-case" comment mentions consistent 2019-10-28 09:40:03 +01:00
patrickvl
fa76ffe140 Finally fixed Indiana Jones regressions (BaseVertexIndex mustn't be enlarged when drawing indexed quads through a converted index buffer).
Also some renaming
2019-10-28 09:31:43 +01:00
patrickvl
91575822a8 Corrected arguments for indexed quad draws 2019-10-28 09:31:42 +01:00
patrickvl
4591e40712 Potential fix for Indiana Jones regression? 2019-10-28 09:31:42 +01:00
patrickvl
ec25283551 Addressed code review remarks, by adding explanations in comments and renaming a few arguments 2019-10-28 09:31:41 +01:00
patrickvl
eb9f610780 Move LowIndex and HighIndex values into DrawContext, GetVerticesInBuffer doesn't need to determine HighIndex again. Because of this, GetVerticesInBuffer has been removed, and the determination was inlined into CxbxVertexBufferConverter::Apply() 2019-10-28 09:31:41 +01:00
patrickvl
29ab156d44 Fix GetVerticesInBuffer for indexed draws, this might actually fix missing geometry.
Draw closing line (for a line loop) through vertex copies (to avoid a potential performance penalty when the old, index-based approach spanned over many indices).

Renamed a few variables to make their contents and purpose more clear
2019-10-28 09:31:40 +01:00
patrickvl
2504de39c8 Turned ConvertedIndexBuffer into a class that in it's destructor releases the host index buffer.
With that, added poor-mans IndexBuffer cache eviction.
Moved our way of calling CreateIndexBuffer into it's own function.
Condensed generation of quad-to-triangle index data into one function.
Renamed a bunch of variables, and added a few comments.
2019-10-28 09:31:40 +01:00
patrickvl
3d58eba6b8 Cleanup, additional testcases and one fix for a corner-case (closing line-loops should take BaseVertexIndex into account) 2019-10-28 09:31:40 +01:00
patrickvl
fce300d25a Small fixes, but not for the regression, yet. 2019-10-28 09:31:39 +01:00
patrickvl
fedd9fbf67 Cleaned up and expanded upon commented test-case 2019-10-28 09:31:38 +01:00
patrickvl
a26560a8ee Documented a few more known test-cases 2019-10-28 09:31:07 +01:00
patrickvl
14091b03a4 Speed up drawing indexed quads, by converting the indices (from ABCD quads to ABC+CDA triangles), and doing one call with those indices (instead of drawing each quad separately) 2019-10-28 09:30:29 +01:00
Luke Usher
67b3924946
Merge pull request #1755 from PatrickvL/vsh_dump_separately
Dump vertex declaration separately from conversion
2019-10-27 22:06:20 +00:00
PatrickvL
bd5c995a89
Merge pull request #1761 from ergo720/disable_lle_gpu
Disable LLE GPU option in the gui
2019-10-27 17:55:02 +01:00
ergo720
f67eeeb00b Disable LLE GPU option in the gui 2019-10-27 16:59:57 +01:00
patrickvl
af35d9b161 Dumping of vertex declaration now also shows the number of streams (like before it was extracted into it's own function).
Also commented on vertex shader temporary register counts and r12+oPos behavior
2019-10-19 15:57:20 +02:00
patrickvl
0366e647a5 Dump vertex shader separately from conversion 2019-10-19 14:55:20 +02:00
Luke Usher
c0cdb011b6
Merge pull request #1754 from literalmente-game/patch-1
Add missing dcl statement
2019-10-17 08:52:19 +01:00
literalmente-game
f8e660aa40
Add missing dcl statement
Fixes blank shader compilation
2019-10-17 03:44:54 -03:00
Luke Usher
3c497362e4
Merge pull request #1746 from PatrickvL/fix_vertex_decl_skip_token
Fix vertex conversion when skip tokens are present in the Xbox vertex declaration
2019-10-16 13:01:38 +01:00
PatrickvL
12880255f0
Merge pull request #1750 from LukeUsher/restore-fog-hack
Restore fog hack: Fixes Silent Hill 2
2019-10-14 17:44:07 +02:00
Luke Usher
1914e17078 Typo 2019-10-14 16:29:18 +01:00
patrickvl
6ef5b21144 Fix vertex conversion when skip tokens are present in the Xbox vertex declaration. 2019-10-14 14:56:32 +02:00
Luke Usher
4646c14c29 Restore fog hack: Fixes Silent Hill 2 2019-10-14 08:01:15 +01:00
PatrickvL
e5dc2e5e13
Merge pull request #1747 from LukeUsher/fix-bad-pixel-shader-fog-color
Fix an issue with reading FOGCOLOR in a pixel shader
2019-10-13 20:30:58 +02:00
Luke Usher
dae0d84f9b Fix an issue with reading FOGCOLOR in a pixel shader 2019-10-12 19:21:24 +01:00
PatrickvL
17411fa19e
Merge pull request #1742 from LukeUsher/renderstate-texture-state-unpatch
Remove move RenderState/TextureState Patches
2019-10-12 15:35:40 +02:00
Luke Usher
b0ace63021 Fix smashing drive intro 2019-10-12 13:48:34 +01:00
Luke Usher
f2235ab522 Fix missing fog in DolphinClassic 2019-10-11 08:42:03 +01:00
Luke Usher
c79b11109f Fix crash in pixel shaders caused undefined behavior in LTCG handler 2019-10-08 16:24:47 +01:00
Luke Usher
9537158007 Fix nasty bug with LTCG D3DDevice_SetPixelShader_0 2019-10-07 17:03:54 +01:00
Luke Usher
58e0416a96 another typo 2019-10-07 15:58:27 +01:00
Luke Usher
de2b891d60 Typo 2019-10-06 21:13:34 +01:00
Luke Usher
fdbd9fb2ab Add removed patches to unused-patches file. 2019-10-06 17:21:16 +01:00
Luke Usher
94c79876d2 Fix broken pixel shaders (Rallisport Challenge, etc) 2019-10-06 17:21:00 +01:00
Luke Usher
5d0b44303c Fix a regression with XDK 4432 (Buffy and others) 2019-10-05 14:50:50 +01:00