Commit Graph

3944 Commits

Author SHA1 Message Date
Luke Usher 9c98a76f0a Reduce the number of calls to GetVertexBufferSize 2018-03-15 10:39:26 +00:00
Luke Usher cdd7ed973c Make GetCachedVertexBufferObject return if a new buffer was creadted (and therefore invalidated) 2018-03-15 10:39:26 +00:00
Luke Usher d4232df766 Cache Vertex Buffer Objects, but not their content.
This gives a performance boost by avoiding the need to constantly
Allocate and Free vertex buffers every single usage.
2018-03-15 10:39:25 +00:00
Luke Usher 9ff8df52b3 Attempt to fix DirectSoundGetSampleTime (Counts at 48Khz) 2018-03-15 10:39:25 +00:00
Luke Usher a418cda776 Disable Verex Cache: Fixes missing polygons in JSRF but kills performance.. investigating better solution 2018-03-15 10:39:25 +00:00
Luke Usher 4ecbd306b7 Use unordered_map in EmuD3D: This is faster, and we don't require caches to be ordered 2018-03-15 10:39:25 +00:00
Luke Usher e31167e4a5 Simplfy Deriving of D3DRS_CULLMODE 2018-03-15 10:39:25 +00:00
Luke Usher 116d189594
Merge pull request #989 from PatrickvL/IVB_fixes
IVB fixes
2018-03-15 10:38:23 +00:00
patrickvl 7a43686214 IVB : Only apply D3DFVF_POSITION_MASK after potential fixups 2018-03-14 00:43:50 +01:00
PatrickvL 7c0831e009 IVB : Fix illegal FVF before converting g_InlineVertexBuffer_Table to host FVF format.
This might fix the "EmuFlushIVB uses wrong stride" sanity check failure.
2018-03-13 18:24:00 +01:00
PatrickvL 25a597bd7f IVB : Cleanup after rebase 2018-03-13 18:06:38 +01:00
PatrickvL b6677ba090 IVB : Working on further IVB improvements 2018-03-13 17:53:43 +01:00
Luke Usher 090663d7cc
Merge pull request #983 from PatrickvL/InlineVertexBuffer
IVB : Renames and refactorings, copied over from WIP_LessVertexPatching.
2018-03-13 12:32:55 +00:00
PatrickvL 3df4a18619 IVB : Select FVF position mask once without overwriting the other FVF bits 2018-03-13 12:38:43 +01:00
PatrickvL f35ba8dd1f IVB : Renames and refactorings, copied over from WIP_LessVertexPatching.
This stops the inline vertex buffer from overflowing, and improves the support for flexible vertex formats.
2018-03-13 12:38:43 +01:00
Luke Usher 93cf2ab789
Merge pull request #984 from PatrickvL/YUY2
D3D : Added YUY2 and UYVY conversions, derived from libyuv.
2018-03-12 19:57:28 +00:00
PatrickvL 1117180233 D3D : Added YUY2 and UYVY conversions, derived from libyuv. Also, added a fallback to ARGB when a first CreateTexture attempt doesn't work 2018-03-12 18:05:41 +01:00
Luke Usher b8c5808a23
Merge pull request #980 from LukeUsher/master
Fix a regression where some FMVs stopped rendering after D3D8to9 was introduced
2018-03-10 21:55:58 +00:00
Luke Usher 72cd6fb135 Fix a regression where some FMVs stopped rendering after D3D8to9 was introduced. (Test case: xonlinedash 4920) 2018-03-10 21:54:54 +00:00
PatrickvL 72143392e7
Merge pull request #979 from PatrickvL/ps_version
Pixel shader updates
2018-03-10 08:51:12 +01:00
PatrickvL baa84898fb PixelShader : Comments 2018-03-09 17:53:32 +01:00
PatrickvL 6a54601693 PixelShader : Fixed a few mistakes (ifndef was converted into the opposite check , insertion of texture modes must not precede ps opcode) and some cleanup 2018-03-09 17:45:20 +01:00
PatrickvL c3065d0bb1 PixelShader : Avoided ZeroMemory, introduce and use PO_XPS and convert it to PO_PS, rename arguments to unique symbols (some conflicted with members), started using D3DPS_VERSION() macro, show more errors 2018-03-09 16:32:05 +01:00
PatrickvL 158b717f2e PixelShader : Working towards support for a configurable shader model 2018-03-08 18:59:56 +01:00
Luke Usher 2dbc1ff702
Merge pull request #976 from LukeUsher/d3d8to9-experimental
D3d8to9 experimental
2018-03-08 09:25:51 +00:00
Luke Usher 18839d868b Attempt to fix PushBuffer non-FVF issue 2018-03-08 08:56:10 +00:00
Luke Usher 29d7b38a83 Fix a crash when logging failed shades 2018-03-08 08:30:26 +00:00
Luke Usher 0afc623b49 Revert to original Pixel Shader model.
It's good to know the option to update is available, but to work
properly, it needs significant changes to the shader converter.
2018-03-07 16:12:01 +00:00
Luke Usher f02aaec009 Use PixelShader Model 3.0, now available thanks to d3d8to9 2018-03-07 14:23:10 +00:00
Luke Usher 1f4f32414a Use D3D8to9 as a wrapper for D3D9 support 2018-03-07 14:22:53 +00:00
Luke Usher 830e82a730
Merge pull request #975 from LukeUsher/d3d-bug-fixes
Fix some d3d issues that can cause crashes or missing graphics under certain configurations
2018-03-07 14:00:20 +00:00
Luke Usher 1ee7fb3e78 Fix some d3d issues that can cause crashes or missing graphics under some configurations. 2018-03-07 13:58:46 +00:00
Luke Usher 97b7a2e9c8
Merge pull request #973 from LukeUsher/xbox-framerate-cap
Prevent frame-rate dependant games from running too fast
2018-03-06 09:25:51 +00:00
Luke Usher 65dfda6e2e Prevent frame-rate dependant games from running too fast 2018-03-06 09:15:04 +00:00
PatrickvL 779be6c823
Merge pull request #971 from DiscoStarslayer/default-force-vsync
Force VSync on by default
2018-03-06 07:36:52 +01:00
Darren Thompson cfe9c4094a Force VSync on by default 2018-03-05 21:14:30 -05:00
Luke Usher 3c201d74e7
Merge pull request #970 from LukeUsher/QueryPerformanceCounter
Improve accuracy of QueryPerformanceCounter
2018-03-05 20:52:49 +00:00
Luke Usher d590ecc89b Improve accuracy of QueryPerformanceCounter 2018-03-05 20:42:57 +00:00
Luke Usher 641a86f627
Merge pull request #969 from PatrickvL/TextureConversionWork
Texture conversion cleanup and preparations for more...
2018-03-05 19:50:00 +00:00
Luke Usher bf0e2fe8f0
Merge pull request #968 from Voxel9/fps-counter-move
Move FPS Counter next to LED
2018-03-05 18:10:25 +00:00
Voxel 7a8446b542 Move FPS Counter next to LED 2018-03-05 17:52:31 +00:00
PatrickvL 76c5cdc4c3 D3D : Introduced D3DDevice_DrawTriPatch patch.
Also, call CxbxUpdateNativeD3DResources from D3DDevice_DrawRectPatch too.
2018-03-05 18:40:00 +01:00
PatrickvL 5c11a402ec D3D : Check IsValidCurrentShader before applying and restoring vertex patches 2018-03-05 18:07:38 +01:00
PatrickvL 65b3e8d801 D3D : Reordered and renamed VertexPatchDesc members : PrimitiveType into XboxPrimitiveType, pVertexStreamZeroData into pXboxVertexStreamZeroData, uiVertexStreamZeroStride into uiXboxVertexStreamZeroStride, dwOffset into dwStartVertex, dwPrimitiveCount into dwHostPrimitiveCount 2018-03-05 17:55:42 +01:00
PatrickvL 5a4596642e D3D : Introduced and used EmuD3DValidVertexCount 2018-03-05 17:36:42 +01:00
PatrickvL 361ca5a540 D3D : Moved all unused EmuNewD3D* functions aside 2018-03-05 17:26:19 +01:00
PatrickvL 8077cd6fd1 D3D : Use IsResourceTypeGPUReadable in GetDataFromXboxResource 2018-03-05 17:20:19 +01:00
PatrickvL 3945f36b66 Removed a temporary buffer from texture-conversion 2018-03-05 16:42:22 +01:00
PatrickvL 9a19173812 Removed all traces of OLD_COLOR_CONVERSION 2018-03-05 16:32:02 +01:00
PatrickvL 4b887b63e0
Merge pull request #967 from PatrickvL/pixelshader_corrections
PixelShader : Copied over all corrections (translation-errors) from my PixelShader branch
2018-03-05 15:37:10 +01:00