Commit Graph

4011 Commits

Author SHA1 Message Date
Joshua Ashton 78d22cc7a5 [d3d9] Avoid depth degenerate viewports 2021-08-11 11:44:09 +00:00
Joshua Ashton 5f4f4d57df
[d3d9] Fix initial mapping of images written by GPU 2021-08-11 12:14:17 +01:00
Joshua Ashton 679d703efc [d3d9] Fix upload race with default image mapping
Fixes a Wine test
2021-08-11 11:53:17 +02:00
Robin Kertels 60a7047550 [d3d9] Fix D3DLOCK_READONLY handling with evictManagedOnUnlock 2021-08-11 07:35:39 +00:00
Joshua Ashton 2c8099adf1
[d3d9] Use Texture2D for CommonTexture resolution
Using the generic texture type was a nice idea in theory, but some compilers did not give it a vtable as it was abstract, resulting in a crash here.
2021-08-11 04:25:29 +01:00
Joshua Ashton ab7fc42f2f
[d3d9] Fix stateblock refcounting 2021-08-11 01:38:50 +01:00
Joshua Ashton a1f0bb99ee
[d3d9] Cleanup D3D9DeviceEx members 2021-08-11 01:38:34 +01:00
Joshua Ashton 5e48035e99
[d3d9] Only bind textures if they are used by the shader 2021-08-11 01:08:13 +01:00
Joshua Ashton c0c1565cba [d3d9, dxso] Alias color and depth samplers and improve tracking
Takes me from 340 -> 460fps in A Hat in Time's main menu when CPU bound.
2021-08-10 23:46:03 +00:00
Joshua Ashton 3f78bde928 [d3d9] Optimize GetCommonTexture 2021-08-10 23:46:03 +00:00
Joshua Ashton 85468a5526 [d3d9] Add extra brackets to fetch4 filter check 2021-08-09 22:54:19 +00:00
Joshua Ashton 674f008e23 [d3d9] Use m_activeTexture mask for SRGB check 2021-08-09 22:54:19 +00:00
Joshua Ashton 1823a098a1 [d3d9] Clean up SetStateSamplerState 2021-08-09 22:54:19 +00:00
Joshua Ashton ea4aa87336 [d3d9] Add unlikelies to rare vendor hacks 2021-08-09 22:54:19 +00:00
Georg Lehmann 1ea79cf136 [d3d9] Only respect relevant bits of D3DRS_STENCILREF 2021-08-09 22:54:06 +00:00
Joshua Ashton 79cf2e875f [dxvk] Avoid needless refcount in updateFramebuffer
Avoids a needless refcount
2021-08-09 15:23:59 +02:00
Joshua Ashton a35f2af5e5 [dxvk] Remove needless refcount in updateTransformFeedbackBuffers 2021-08-09 15:23:59 +02:00
Joshua Ashton 4edaade185 [dxvk] Avoid needless refcount in copyImageFb 2021-08-09 15:23:59 +02:00
Georg Lehmann 8844dc2091 [dxgi] Downgrade format fall back warnings to info 2021-08-09 13:17:43 +02:00
Georg Lehmann b55784acc6 [dxvk] Downgrade missing OpenVR warning to info 2021-08-09 13:17:43 +02:00
Georg Lehmann 152a08191c [d3d9] Downgrade format fall back warnings to info 2021-08-09 13:17:43 +02:00
Joshua Ashton abba425ed0 [d3d9] Optimize MarkTextureBindingDirty with tzcnt loop of m_activeTextures 2021-08-09 09:54:12 +00:00
Joshua Ashton 242b7b6d9c [d3d9, dxso] Remove AlphaTestEnable spec constant
Go based on the func we already have. Avoids wasting a spec const.
2021-08-09 09:52:07 +00:00
Georg Lehmann ada463badc [d3d9] Mark mips as dirty on Clear if needed 2021-08-08 10:27:43 +00:00
Georg Lehmann 92deba0310 [d3d9] Implement D3DTOP_BLENDTEXTUREALPHAPM 2021-08-08 10:12:40 +00:00
Georg Lehmann 9162aa5fdf [d3d9] Captured NULL vertex declarations are not applied 2021-08-08 08:50:00 +00:00
Georg Lehmann 28a07ef445 [d3d9] Validate vertex declaration on draws 2021-08-08 08:50:00 +00:00
Georg Lehmann 8c0003552c [d3d9] Reject depth stencil StrechRect during an active scene 2021-08-08 08:50:00 +00:00
Georg Lehmann 09e5939502 [d3d9] Reject 2 BeginScene + EndScene without Begin 2021-08-08 08:50:00 +00:00
Georg Lehmann 6071e998fd [d3d9] Handle invalid modes in Device::Reset 2021-08-08 08:50:00 +00:00
Georg Lehmann 64c4eea922 [d3d9] Mark texture dirty on SetLod 2021-08-08 02:28:44 +00:00
Georg Lehmann 26516dc904 [d3d9] Fix ColorFill with OffscreenPlainSurface 2021-08-08 02:15:06 +00:00
Joshua Ashton fd50eae5c2 [d3d9] Optimize framebuffer binding with RT mask 2021-08-08 02:14:11 +00:00
Joshua Ashton 2f22c1b53d [d3d9] Optimize clears with rt mask and better ref tracking 2021-08-08 02:14:11 +00:00
Joshua Ashton 072d3a039e [d3d9] Track bound RTs
This also improves active RT hazard tracking by also accounting for NULL
2021-08-08 02:14:11 +00:00
Joshua Ashton e0f9ebf695 [d3d9] Common buffer header cleanups and docs 2021-08-08 02:14:11 +00:00
Joshua Ashton ee11e1af58 [d3d9] Minor buffer code-style cleanups 2021-08-08 02:14:11 +00:00
Joshua Ashton b1b1524737 [d3d9] Adapter cleanups 2021-08-08 02:14:11 +00:00
Joshua Ashton da411c8a48 [d3d9] Move m_lod after m_subresources 2021-08-08 02:14:11 +00:00
Joshua Ashton 4a569918c0 [d3d9] Track NULL state per-subresource 2021-08-08 02:14:11 +00:00
Joshua Ashton d6bc355782 [d3d9] Fix code-style of D3D9Subresource and inline 2021-08-08 02:14:11 +00:00
Joshua Ashton f4ce795fe7 [d3d9] Do a little packing of subresource members 2021-08-08 02:14:11 +00:00
Joshua Ashton d922e261e8 [d3d9] Make D3D9_COMMON_TEXTURE_DESC smaller 2021-08-08 02:14:11 +00:00
Joshua Ashton 3592d7b48f [d3d9] Return const buffer references in D3D9CommonBuffer
Avoids some needless refcounting
2021-08-08 02:14:11 +00:00
Joshua Ashton fb7035f16a [d3d9] Remove D3D9CommonBuffer::GetDesc
We already have ::Desc()
2021-08-08 02:14:11 +00:00
Joshua Ashton 750639d3b6 [d3d9] Return const view references in D3D9Subresource 2021-08-08 02:14:11 +00:00
Joshua Ashton 3cbac8923f [d3d9] Return const refs for image/buffers + format mapping in CommonTexture
Avoids needless Rc ref counts and copies of that fairly large structure.
2021-08-08 02:14:11 +00:00
Georg Lehmann 23873cbb57 [d3d9] Disable primitive restart 2021-08-08 02:05:27 +00:00
Georg Lehmann fdc2e2e78f [d3d9] Fix NEVER alpha testing 2021-08-07 21:54:30 +00:00
Georg Lehmann be3c248c8b [d3d9] Don't mark mips as dirty when the texture doesn't have automatic mips 2021-08-07 21:53:34 +00:00