Commit Graph

2335 Commits

Author SHA1 Message Date
Triang3l 12a907bfa5 [GPU] Shaders to common, xb buildshaders instead of buildhlsl 2021-06-05 18:53:53 +03:00
Triang3l 3c20a83972 [Base] Float clamping cleanup 2021-06-05 14:55:55 +03:00
Triang3l 538aa91015 [GPU] Primitive processor with Vulkan 1.0 base cases, 24-bit indices and clamping 2021-06-04 23:57:46 +03:00
Joel Linn 806a33d625 [GPU] Use `le<>` type for depth sample counts 2021-06-02 22:28:43 -05:00
Joel Linn 6dfa36d1b8 [GPU] Misc GCC build fixes 2021-06-02 22:28:43 -05:00
Joel Linn a86d7173e1 Refactor FourCC magic uses
- Use new fourcc_t type
- Improves compiler compatibility by removing multi chars
2021-06-02 22:28:43 -05:00
Gliniak 1a2282894a [GPU] Improve fake occlusion query compatibility
- Older D3D implementation used different flags
2021-05-17 19:27:23 +03:00
Triang3l 3a5752fcb6 [D3D12] Split the tessellation VS into indexed and adaptive 2021-05-16 18:27:41 +03:00
Triang3l 9f8a432479 [DXBC] Cleanup: kSysConst_*_Vec/Comp > LoadSystemConstant 2021-05-16 17:43:18 +03:00
Triang3l f39020700a [GPU] Cleanup: XEPACKED -> static_assert_size/alignas 2021-05-16 14:03:36 +03:00
Triang3l dd5ea87213 [GPU] Linear mip tail exact extent estimation 2021-05-15 18:19:26 +03:00
Triang3l 4eca2326c3 [GPU/D3D12] Support texture pitch, more precise texture extent/stride calculations 2021-05-13 23:02:11 +03:00
Triang3l 8a70ae5389 [GPU] Fix RT EDRAM range clamping when using both 32bpp and 64bpp 2021-05-12 20:17:12 +03:00
Triang3l 8f1f849a06 [D3D12] unordered_map instead of multimap in TextureCache 2021-05-05 21:40:00 +03:00
Triang3l 40ca4abc0b [GPU] Small ring buffer setup function cleanup 2021-05-04 23:13:55 +03:00
Triang3l 330beaf552 [GPU] Screen scissor alongside window scissor 2021-05-04 22:54:05 +03:00
Triang3l fb01ccaac6 [GPU] Viewport/clipping cleanup, don't clamp oDepth 2021-05-04 21:39:34 +03:00
Joel Linn 48bd08a11b [GPU] Fix shader compiler build on Linux 2021-05-03 22:50:44 -05:00
Triang3l bb55bb3e70 [D3D12] Make ROV the default RT path on Intel due to stencil 2021-04-28 20:53:07 +03:00
Triang3l 71fbfdb63e [D3D12] Fix non-ROV clearing always giving 'failed in backend' 2021-04-28 17:27:57 +03:00
Triang3l 51c2c9e5f2 [D3D12] Fix render target reference leak 2021-04-27 19:55:29 +03:00
Triang3l ec41dfc995 [D3D12] Fix bindless root signatures, ensure shaders are pre-translated 2021-04-27 18:29:23 +03:00
Triang3l 913e1e949c [GPU] Ownership-transfer-based RT cache, 3x3 resolution scaling
The ROV path is also disabled by default because of lower performance
2021-04-26 22:12:09 +03:00
Triang3l 99024aec32
[Vulkan] Fix primary_queue_mutex usage in vulkan_graphics_system.cc 2021-03-04 18:32:27 +03:00
Triang3l 5ae6c7eaf8
[Vulkan] Fix primary queue mutex locking in texture_cache.cc 2021-03-04 18:14:07 +03:00
Triang3l 87442b106c
[D3D12] Fix signed-only texture descriptor creation 2021-02-13 23:22:03 +03:00
Triang3l 9a74df491f [DXBC] dxbc.h with non-translator-specific parts 2021-01-04 16:15:50 +03:00
Triang3l e7cd2ffffa [GPU] Clamp scissor to surface_pitch 2020-12-29 11:15:05 +03:00
Triang3l 56d802c323 [GPU] Slightly better shader_compiler_main variable name 2020-12-28 22:09:28 +03:00
Joel Linn 7943702618 Fix rvalue being passed as a reference. 2020-12-28 22:07:00 +03:00
Triang3l 9009cba90a [GPU] Refactor shader dumps - bin and txt files for both ucode and host 2020-12-25 21:46:07 +03:00
Triang3l 2bc0113dae [GPU] Add missing override specifier to SPIR-V shader translator 2020-12-25 21:11:43 +03:00
Triang3l dcde08a493 [GPU] PS and rasterization disabling cleanup 2020-12-24 23:40:38 +03:00
Triang3l 733efa5ff8 [GPU] Add a missing default label to GatherAluResultInformation 2020-12-22 22:29:00 +03:00
Triang3l c7fbe0e6d5 [GPU] Scale gradients by SSAA factor 2020-12-20 16:35:15 +03:00
Triang3l e6fa0ad139 [GPU] Dynamic r# count via shader modifications + refactoring 2020-12-19 16:14:54 +03:00
Triang3l 4617dc5569 Merge branch 'master' into vulkan 2020-12-13 20:04:12 +03:00
Triang3l b106aa88e6 [GPU] Complete some register bitfield declarations 2020-12-12 20:01:41 +03:00
Triang3l da60649202 [D3D12] Fix texture_cache.cc formatting 2020-12-11 21:21:26 +03:00
Triang3l 040661f366 [D3D12] Fix a lint error in pipeline desc 2020-12-10 21:23:13 +03:00
Triang3l 34c5fc9c2f [DXBC] ROV: Update a todo comment about early Z 2020-12-10 12:41:29 +03:00
Triang3l 8bcfcf6452 [GPU] Update v_mad_legacy_f32 comment 2020-12-10 12:39:02 +03:00
Triang3l bc0c2040e2 [DXBC] ROV: Force late Z write with kill instructions 2020-12-10 12:36:37 +03:00
Triang3l 9349cf4ff4 [D3D12] Fix custom sample position reset 2020-12-08 22:43:15 +03:00
Triang3l b7216f91f7 [D3D12] Re-add forgotten RenderTargetCache::EndFrame call 2020-12-08 22:36:47 +03:00
Triang3l 36a0bcec8b [GPU] XXH3 hash instead of XXH64 2020-12-08 22:31:09 +03:00
Triang3l 9a4643d0f2 [GPU] Non-ROV f24 trunc/round, host shader modifications, cache dir 2020-12-07 22:31:46 +03:00
Triang3l cadc31c93f
[GPU] Fix uninitialized viewport_top when drawing without a viewport 2020-12-06 15:55:28 +03:00
Triang3l ce51ee076d Merge branch 'master' into vulkan 2020-11-26 23:07:12 +03:00
Triang3l e3a82e1930 [D3D12] Remove leftovers of old resolve code 2020-11-26 23:06:46 +03:00
Triang3l 6288bced48 Merge branch 'master' into vulkan 2020-11-21 22:03:50 +03:00
Joel Linn 923678dad7 [GPU] Add performance counter registers.
v3: Document registers referenced by D3D in `gpu.md`.
2020-11-21 21:55:52 +03:00
Joel Linn f6dc9ad517 [GPU] Skip viz-query geometry (if marked).
Document research about viz queries.

v2: Remove viz status unions and move comments to register definitions.
    Add contributors to TODOs.

v3: Comment out unused variables.
    Add TODO for correctly dropping draw calls with memexport.
    Register comment formatting.
2020-11-21 21:55:52 +03:00
Triang3l b06138b464 [GPU] Disable faceness for rectangles temporarily 2020-11-21 21:52:17 +03:00
Triang3l 6584a2421c [Vulkan] Faceness-related rasterization state 2020-11-20 23:47:19 +03:00
Triang3l 8b4a52aeed Merge branch 'master' into vulkan 2020-11-20 23:16:38 +03:00
Triang3l 00a7d1a067 [D3D12] Cleanup rasterizer state 2020-11-20 23:12:12 +03:00
Triang3l 4fab2cc4d3 Merge branch 'master' into vulkan 2020-11-19 23:56:08 +03:00
Triang3l 44a3f200c3 [GPU] Rename PrimitiveTwoFaced to PrimitivePolygonal, add rects to it and ignore fill modes for non-polygons 2020-11-19 23:55:49 +03:00
Triang3l 1e818dca4b [Vulkan] Include Vulkan Android header and fix some warnings 2020-11-19 11:38:20 +03:00
Triang3l a94301d967 [Vulkan] Viewport from draw_util and vtx_fmt 2020-11-18 12:48:12 +03:00
Triang3l c0550bafe9 Merge branch 'master' into vulkan 2020-11-18 12:28:38 +03:00
Triang3l 99bb82fd1c [GPU] Separate GetHostViewportInfo X and Y bounds 2020-11-18 12:27:36 +03:00
Triang3l 44e4849e1a Merge branch 'master' into vulkan 2020-11-16 23:17:50 +03:00
Triang3l 10d7bcde93 [GPU] Viewport in draw_util with host API flexibility 2020-11-16 23:03:42 +03:00
Sandy Carter 382dd8860f [threading] Change thread names to suit pthread
Shorten names to 16.
Rename Win32 to Windowing.
Shorten GraphicsSystem thread names due to 16 length limit of pthread.
Without this change, both show up as GraphicsSystem.
Remove redundant "Worker" and "Thread" from names.
Remove redundant thread handle from thread name.
2020-11-15 11:12:05 -06:00
Triang3l c2e8d23139 [Vulkan] Scissor from draw_util 2020-11-15 17:26:41 +03:00
Triang3l 791326ff9b Merge branch 'master' into vulkan 2020-11-15 16:34:53 +03:00
Triang3l 56a07c1773 [GPU] Scissor in draw_util 2020-11-15 16:34:23 +03:00
Triang3l 715d614f5e [Vulkan] Float controls properties 2020-11-15 15:08:50 +03:00
Triang3l 8febf02a39 Merge branch 'master' into vulkan 2020-11-15 14:06:15 +03:00
Joel Linn 8b1ebe1130 Premake: Reorder links to speed up building.
- Re-enable LTO on clang.
- Set AR on travis so it builds with LTO.
2020-11-14 13:30:06 -06:00
Triang3l fe9b5b4a8f [D3D12] Cleanup: remove inline 2020-11-14 17:02:09 +03:00
Triang3l 6b988d43c7 [D3D12] Cleanup: pipeline state -> pipeline, other things 2020-11-14 16:43:18 +03:00
Triang3l 0ec215a8a0 Merge branch 'master' into vulkan 2020-11-14 14:17:54 +03:00
Triang3l 65c8d2b28e [Vulkan] Basic draw call architecture + [D3D12] Some cleanup 2020-11-14 14:16:04 +03:00
Gliniak 87a3c5fac2 [GPU] Added Stub for Packet: PM4_WAIT_FOR_IDLE 2020-11-10 22:48:00 +03:00
Triang3l 93f6a00201 [Vulkan] Transient descriptor pool + other cleanup for future drawing 2020-11-07 23:18:28 +03:00
Triang3l afe304b328 [Vulkan] Shared memory descriptor set 2020-11-07 20:43:45 +03:00
Triang3l d7341f9873 [Vulkan] Internal descriptor set layouts 2020-11-07 14:03:31 +03:00
Triang3l 8ef538a68f Merge branch 'master' into vulkan 2020-11-06 13:00:56 +03:00
Triang3l 6ac4d3e0c9 [DXBC] Fix texture binding reference use-after-grow 2020-11-06 13:00:22 +03:00
Triang3l d926e37f95 [SPIR-V] vfetch: packed formats 2020-11-05 23:49:39 +03:00
Triang3l 45d3dc4806 [SPIR-V] vfetch: 16-bit float 2020-11-05 21:49:36 +03:00
Triang3l a82b85a8ac [SPIR-V] vfetch: 32_* and 32_*_FLOAT formats 2020-11-04 23:56:12 +03:00
Triang3l 533bdf2114 [SPIR-V] Shared memory SSBOs 2020-11-04 18:57:08 +03:00
Triang3l 8665fa7517 [SPIR-V] Vertex index writing to r0.x 2020-11-03 23:31:52 +03:00
Triang3l 6030a4cf72 [SPIR-V] Add missing EnsureBuildPointAvailable in ALU 2020-11-02 12:17:47 +03:00
Triang3l de8b0a85ac [SPIR-V] Remaining scalar ALU instructions 2020-11-01 22:30:05 +03:00
Triang3l cb35aaf13b [SPIR-V] Scalar kill instructions 2020-11-01 22:22:34 +03:00
Triang3l 7512560416 [SPIR-V] SALU address and predicate 2020-11-01 22:17:12 +03:00
Triang3l 0f6aff6f74 [SPIR-V] Unary math functions 2020-11-01 21:48:14 +03:00
Triang3l d466ebbbe1 [SPIR-V] Scalar ALU comparison and simple unary 2020-11-01 21:12:09 +03:00
Triang3l 06b47d1df0 [SPIR-V] Scalar addition and multiplication 2020-11-01 20:42:59 +03:00
Triang3l fd4ba5622a [SPIR-V] Cube: multiply the major axis by 2 2020-11-01 15:56:51 +03:00
Triang3l c173ecc4ef [SPIR-V] Remaining VALU instructions 2020-11-01 15:45:26 +03:00
Triang3l d9f57c1ad8 [SPIR-V] Max4 2020-11-01 13:12:31 +03:00
Triang3l b32ca5fb4f [SPIR-V] Cube vector instruction 2020-10-31 21:42:51 +03:00
Triang3l 0949fac826 [SPIR-V] Dot product 2020-10-31 20:15:01 +03:00
Triang3l 06502d80d9 [SPIR-V] Vector max/min, comparison, unary 2020-10-31 19:15:00 +03:00
Triang3l 1acc5eff05 [SPIR-V] Vector mul, mad 2020-10-31 17:56:46 +03:00
Triang3l 52a8ed8e6d [SPIR-V] Version, float controls 2020-10-31 16:22:15 +03:00
Triang3l cacf702948 Merge branch 'master' into vulkan 2020-10-30 22:58:55 +03:00
Triang3l ae3b68c7b6 [DXBC] Fast mul path only for fully identical components because neg is post-abs 2020-10-30 22:31:30 +03:00
Triang3l feb8258a5e [DXBC] Multiplication signed zero handling 2020-10-30 22:14:38 +03:00
Triang3l 738cb0b847 [SPIR-V] Result storing 2020-10-29 22:07:02 +03:00
Triang3l 4dba2d8d89 [SPIR-V] Operand loading 2020-10-27 22:48:47 +03:00
Triang3l de059f3d57 Merge branch 'master' into vulkan 2020-10-27 21:03:40 +03:00
Triang3l 9bbe4365d1 [GPU] Fix adaptive quad tessellation inside factors 2020-10-27 21:01:55 +03:00
Triang3l 1c83c8dcfa [SPIR-V] Instruction predication 2020-10-26 22:12:01 +03:00
Triang3l 556c8de2ab [SPIR-V] Loops 2020-10-25 20:24:48 +03:00
Triang3l a5410ada01 Merge branch 'master' into vulkan 2020-10-25 19:50:52 +03:00
Triang3l 445d78452f [DXBC] Pop aL on loop end 2020-10-25 19:50:24 +03:00
Triang3l fdbed73463 [Vulkan/SPIR-V] Some pipeline layout parts + exec conditionals 2020-10-25 15:09:39 +03:00
Triang3l 972d66d835 Merge branch 'master' into vulkan 2020-10-19 23:03:57 +03:00
Triang3l ca9086f3ba [GPU] Add a comment about non-positive tessellation factors 2020-10-19 23:02:20 +03:00
Triang3l 21726436b9 Merge branch 'master' into vulkan 2020-10-18 22:14:23 +03:00
Triang3l 9081046e7b [D3D12] Remove SRV[unbounded] and UAV overlap in bindless root sig 2020-10-18 22:09:08 +03:00
Triang3l 7846245b66 [SPIR-V] Main program counter switch 2020-10-18 15:36:02 +03:00
Triang3l 1de144938c [SPIR-V] Main loop blocks, validation 2020-10-16 19:55:41 +03:00
Triang3l ae7d5a1b05 Merge branch 'master' into vulkan 2020-10-14 21:23:29 +03:00
Triang3l fd18a97f3a [GPU] Shaders: Make label_addresses accessible to translators 2020-10-14 21:19:33 +03:00
Triang3l b3339d7e46 [SPIR-V] Some initial bits of the translator 2020-10-11 20:22:15 +03:00
Triang3l 9d77d2131a Merge branch 'master' into vulkan 2020-10-08 23:09:12 +03:00
Triang3l 7e9e37bd09 [DXBC] Remove dxbc_source_map cvar export 2020-10-08 23:08:40 +03:00
Triang3l d572e878af [Vulkan] Remove FinalizeTrace 2020-10-08 23:06:02 +03:00
Triang3l 4862075976 [Vulkan] Cleanup and update SPIR-V dependencies 2020-10-08 23:05:30 +03:00
Triang3l 2782fc927d Merge branch 'master' into vulkan 2020-10-08 21:38:41 +03:00
Triang3l 81bc33523a [GPU] Remove unused FinalizeTrace 2020-10-08 21:37:29 +03:00
Triang3l 89ac9294bf [Vulkan] Shared memory trace download 2020-10-07 23:19:30 +03:00
Triang3l afcd01def5 Merge branch 'master' into vulkan 2020-10-07 23:18:08 +03:00
Triang3l 603150af64 [D3D12] Minor shared memory cleanup 2020-10-07 23:16:15 +03:00
Triang3l 4d59f556a9 [Vulkan] Sparse shared memory 2020-10-07 21:03:50 +03:00
Triang3l fee2189d39 Merge branch 'master' into vulkan 2020-10-06 22:36:16 +03:00
Triang3l b91c24870b [D3D12] Remove await result check in trace init - unsafe too, but not leaking 2020-10-06 22:35:43 +03:00
Triang3l e15c891656 Merge branch 'master' into vulkan 2020-10-06 21:54:52 +03:00
Triang3l 19121130a3 [GPU] SharedMemory: common sparse memory allocation 2020-10-06 21:32:44 +03:00
Triang3l 2c50c670d8 [Vulkan] Basic shared memory uploading 2020-10-04 22:08:30 +03:00
Triang3l 1fd0d48066 Merge branch 'master' into vulkan 2020-10-04 21:54:32 +03:00
Triang3l 75bf2d3c7d [D3D12] Minor deferred command list refactoring 2020-10-04 21:53:52 +03:00
Triang3l 81ee7b4c39 [D3D12] Minor FINE_GRAINED_DRAW_SCOPES refactoring 2020-10-04 21:49:10 +03:00
Triang3l c02534e5cf Merge branch 'master' into vulkan 2020-10-03 16:16:05 +03:00
Triang3l e0916be5cd [D3D12] Remove SHM EnsureTilesResident declaration 2020-10-03 16:15:25 +03:00
Triang3l 9f404090d3 [GPU] Split SharedMemory into common and D3D12 2020-10-03 16:13:17 +03:00
Triang3l 2acf2ce041 Merge branch 'master' into vulkan 2020-10-03 14:15:11 +03:00
Triang3l 6cb8f0aab4 [D3D12] Nicer DeferredCommandList uintmax_t alignment 2020-10-03 14:12:30 +03:00
Triang3l 865f77bae2 [Vulkan] Submissions 2020-10-01 21:17:10 +03:00
Triang3l 0fcf322565 Merge branch 'master' into vulkan 2020-09-29 21:18:10 +03:00
Triang3l 1014458783 [D3D12] Only await submission fence in one place 2020-09-29 21:17:20 +03:00
Triang3l 9d4e50c5d2 Merge branch 'master' into vulkan 2020-09-28 21:09:49 +03:00
Triang3l 0156d3ef26 [D3D12] Await UpdateTileMappings when syncing with the GPU 2020-09-28 12:16:09 +03:00
Triang3l 886129cefa [Vulkan] Immediate drawer textures 2020-09-26 22:10:02 +03:00
Triang3l 53adafa156 Merge branch 'master' into vulkan 2020-09-26 22:08:02 +03:00
Triang3l dfeeb959c3 [D3D12] Swap R/B in Capture 2020-09-21 21:56:30 +03:00
Triang3l 6cb33c1073 Merge branch 'master' into vulkan 2020-09-20 15:18:23 +03:00
Triang3l 183c7eee2b [D3D12] Various refactoring mostly on the immediate drawer side, cache immdraw scissor, force stretch alpha to 1 2020-09-20 15:15:08 +03:00
Triang3l 229eb49b54 [Vulkan] Untextured ImmediateDrawer, [D3D12] Small refactoring 2020-09-19 18:05:54 +03:00
Triang3l 1ebd0067f0 [Vulkan Old] Fix build error caused by constexpr countof 2020-09-17 21:51:44 +03:00
Triang3l 1a2462efc2 Merge branch 'master' into vulkan 2020-09-17 21:41:45 +03:00
Triang3l 189a38826f [UI] UploadBufferPool common code 2020-09-17 21:37:44 +03:00
Triang3l 26b01e9c31 Merge branch 'master' into vulkan 2020-09-15 23:22:17 +03:00
Triang3l 2cebd3cabe [D3D12] Unify UploadBufferPool page size (2 MB), add alignment parameter 2020-09-15 22:13:53 +03:00
Triang3l dfa181a529 [Vulkan] Provider init, Android platform defines 2020-09-06 22:08:36 +03:00
Triang3l fed33be62b [D3D12] Non-zeroed heaps on 2004 2020-09-06 22:08:36 +03:00
Triang3l 46cd281cd3 [GPU] Rename present_stretch to present_rescale 2020-09-06 22:08:36 +03:00
Triang3l 3daa899feb [DXBC] ROV: Fix depth being overwritten if stencil failed 2020-09-06 22:08:36 +03:00
Triang3l 524201eca4 [GPU/D3D12] Letterboxing cropping to action-safe area 2020-09-06 22:08:36 +03:00
Triang3l 38e0cc4941 [D3D12] Non-zeroed heaps on 2004 2020-09-06 00:52:30 +03:00
Triang3l b3f84f4a9c [GPU] Rename present_stretch to present_rescale 2020-09-05 19:34:36 +03:00
Triang3l 74804ae710 [DXBC] ROV: Fix depth being overwritten if stencil failed 2020-09-05 19:23:45 +03:00
Triang3l 0be0eb2b38 [GPU/D3D12] Letterboxing cropping to action-safe area 2020-09-05 17:47:32 +03:00
Triang3l 7b93670dbd [Vulkan] Remove old Vulkan code, change shaders directory, create empty Vulkan backend 2020-08-31 21:44:29 +03:00
Triang3l 1e9ee8f43b [D3D12] Change most subsystem pointers to references 2020-08-30 22:07:35 +03:00
Triang3l 1b3db70a07 [GPU] Fix negative shift build error 2020-08-29 00:22:15 +03:00
Triang3l 210c30aef9 [D3D12] Fix resolve not syncing with CPU memory and memory extent calculation 2020-08-28 23:49:23 +03:00
Triang3l a1d33615b0 [DXBC] Inline depth/stencil test 2020-08-27 23:46:41 +03:00
Triang3l dffdf92e39 [Vulkan] Remove stillborn vk project 2020-08-22 23:31:52 +03:00
Triang3l 82ca0a7eec [D3D12] Slightly cleanup DXC object initialization 2020-08-22 23:21:00 +03:00
Triang3l 0c13b239fd [D3D12] DXILConv disassembly dumping option 2020-08-22 23:15:50 +03:00
Triang3l 6dc94d9154 [DXBC] ROV: Inline color ROP 2020-08-16 17:10:07 +03:00
Triang3l 36501be9f8 [D3D12] Remove now-unused d3d12_resolution_scale_resolve_edge_clamp cvar 2020-08-09 21:36:09 +03:00
Triang3l bd5f77bc3b [GPU] Common resolve code based on compute shaders, swap MSAA samples 1 and 2, change ROV write rounding, random refactoring 2020-08-09 21:33:10 +03:00
Triang3l 9418f3f2c5 [D3D12] Fix a storing typo in the DXT3 decompression shader 2020-07-14 17:45:41 +03:00
Triang3l b84239d507 [GPU] xenos.h: max texture size, interpolators 2020-07-11 18:56:56 +03:00
Triang3l 79413345af [C++17] static constexpr variables are implicitly inline now 2020-07-11 16:44:57 +03:00
Triang3l f8320d53d7 [D3D12] Fix bitfield lint errors 2020-07-11 16:31:16 +03:00
Triang3l 4bb0ca0e09 [GPU] Move all xenos.h to gpu::xenos, disambiguate Dimension/TextureDimension 2020-07-11 15:54:22 +03:00
Triang3l 39490f3c3a [GPU] Centroid interpolation usage comment 2020-07-09 12:22:45 +03:00
Triang3l 1547b9df41 [D3D12] Interpolation at centroid 2020-07-08 23:20:36 +03:00
Triang3l 829c6ee2b0 [D3D12] Dithered alpha to coverage 2020-07-07 23:09:53 +03:00
Triang3l 0fbf0eec9d [DXBC] ROV: Inline 24-bit depth conversion 2020-07-05 22:50:24 +03:00
Triang3l 713f26b5c8 [D3D12] Use typed buffers for texture untiling, calculate guest address once per thread 2020-07-03 20:03:53 +03:00
Triang3l 1d35ba9ee7 [D3D12] Fix bindless sampler offset 2020-06-23 23:51:59 +03:00
Triang3l d26f84b36b [D3D12] Untile whole mip tail to make alignment assumptions later, other mip fixes 2020-06-23 23:49:42 +03:00
Triang3l bd1a1e2de3 [D3D12] Lint root_parameters_bindless 2020-06-20 12:30:07 +03:00
Triang3l dbc7794399
[D3D12] Enable bindless resources by default 2020-06-20 01:27:31 +03:00
Triang3l 40e335e2a9 [D3D12] Bindless textures/samplers 2020-06-19 23:52:33 +03:00
Triang3l 9f789e01b6 [DXBC] Fix and cleanup depth-only PS register usage 2020-06-07 15:21:31 +03:00
Triang3l 8a64861ec0 [DXBC] New tfetch: pre-swizzle signs, additive LOD + refactoring 2020-06-06 19:12:34 +03:00
Joel Linn 68dd818029 [GPU] Add workaround for occlusion queries. 2020-06-01 22:40:55 -05:00
Triang3l aa73d652ba [DXBC] OpenGL snorm vfetch because why not 2020-05-24 19:25:35 +03:00
Triang3l 04ca28c902 [DXBC] Unbreak signed integer vfetch + don't multiply by 1 in normalization 2020-05-23 19:04:42 +03:00
Triang3l 7f2d9ca929 [D3D12] Revert half-pixel offset through viewport because of SSAA issues 2020-05-23 18:37:28 +03:00
Triang3l 3879ff29b3 [DXBC/GPU] vfetch to new codegen, signed vfetch offset, fix AND with system flags 2020-05-23 17:15:11 +03:00
Triang3l 3d2b04333e [D3D12] RT Cache: Fix typos (in something broken anyway) 2020-05-17 16:05:22 +03:00
Triang3l 581646cff2
[GPU] Lint xe_gpu_texture_fetch_t 2020-05-17 01:38:15 +03:00
Triang3l b7a5c24bb1 [D3D12] d3d12_break_on_error + fix PerformSwap descriptor heap wrap 2020-05-17 00:26:04 +03:00
Triang3l 8341a48210 [D3D12] Fix state of textures bound to both VS and PS 2020-05-16 19:33:22 +03:00
Triang3l fdd97fc831 [D3D12] Reword clamp FIXME because WONTFIX 2020-05-16 00:19:18 +03:00
Triang3l 8c2f607793 [GPU] Notes about tiled offset patterns 2020-05-14 23:42:54 +03:00
Triang3l 35abd8e2e8 [D3D12] Actually properly select tessellation mode 2020-05-11 22:47:07 +03:00
Triang3l 0d14ae01bb [D3D12] Allow non-adaptive tessellation for patch primitive types, and all triangle and quad tessellation modes 2020-05-11 22:40:52 +03:00
Triang3l 4631b2b16c [D3D12] Apply half pixel offset through viewport, remove some 2560 references 2020-05-11 20:37:02 +03:00
Triang3l 6d0e4787fb [DXBC] Use div for vtx_fmt w0 instead of rcp 2020-05-11 16:51:48 +03:00
Triang3l a3b4c77fdb [GPU] Add texture_util::SwizzleSigns for later 2020-05-11 16:30:09 +03:00
Triang3l b256005b7a [GPU] Fix GatherInstructionInformation enum values not handled warning 2020-05-11 00:28:26 +03:00
Triang3l 814990f686 [DXBC] ALU scalar ops to new codegen 2020-05-10 20:57:33 +03:00
Triang3l ef37cbb955 [DXBC] Fix an outdated comment about cube operands 2020-05-10 16:35:40 +03:00
Triang3l b79ba69548 [DXBC] ALU vector ops to new codegen 2020-05-10 16:33:39 +03:00
Triang3l 3aa0ce3096 [GPU] Shader translator refactoring (mostly ALU), fixes for disassembly round trip and write masks 2020-05-08 23:57:51 +03:00
Triang3l f7ad631057 [GPU] ucode doc: revert one accidentally changed character 2020-04-26 17:01:01 +03:00
Triang3l 07e4f84c2b [GPU] ucode doc: A2xx ALU names, DX9 rules, cube 2020-04-26 16:53:13 +03:00
Triang3l 96a61bc623 [DXBC] All prologues and epilogues to new DXBC code 2020-04-26 13:51:25 +03:00
Triang3l 1799585e92 [DXBC] Control flow to new DXBC code 2020-04-25 19:30:01 +03:00
Triang3l fb39bac2a1 [Vulkan] Make the title message more clear to users 2020-04-25 14:33:16 +03:00
Triang3l d65cbc160d [D3D12] Treat non-ROV truly as fallback in the title bar 2020-04-25 13:59:47 +03:00
Triang3l 64a83af137 [DXBC] Cleanup StartPixelShader, always_reads_mask, and ps_param_gen overall 2020-04-25 00:20:27 +03:00
Triang3l f83809f7a1 [D3D12] Non-adaptive quad tessellation 2020-04-19 23:12:39 +03:00
Triang3l 58c104e0cc [DXBC] SRV binding enum 2020-04-15 23:53:37 +03:00
Triang3l 630a538af3 [D3D12] Reword shader storage error messages 2020-04-14 13:46:18 +03:00
gibbed aa1c69d7b6 [D3D12] Properly setup shareable shader storage.
[D3D12] Properly setup shareable shader storage.

- Properly create shareable shader storage directory.
- Log errors when failing to create shareable shader storage directory
  or shareable shader files.
2020-04-14 00:58:30 -05:00
Triang3l 5795d25afe [D3D12] Remove runtime check of cvars::d3d12_edram_rov 2020-04-12 20:48:35 +03:00
Triang3l 0f0ed0eb21 [DXBC] RDEF enums, ISGN/PCSG/OSGN structs and enums 2020-04-11 20:25:37 +03:00
Triang3l f365ab5e6d [D3D12] Fix wrong comment about adaptive tessellation 2020-04-09 22:26:47 +03:00
gibbed ed04d96e67 Avoid using '#' format spec for X hex numbers.
Avoid using '#' format spec for X (uppercase) hex numbers, as it
results in output like "0XABCDEF" instead of "0xABCDEF".
2020-04-09 11:25:08 -05:00
Sandy Carter e605eef781 filesystem: remove unused includes of header 2020-04-09 09:44:48 -05:00
Sandy Carter 69bcf59c79 filesystem: use std for CreateFolder
Remove custom platform implementation of `CreateFolder` and replace uses
with `std::filesystem::create_directories` which creates paths
recursively.
2020-04-09 09:44:48 -05:00
Triang3l acb3778819 [D3D12] Adaptive quad tessellation, remove d3d12_tessellation_adaptive cvar 2020-04-09 00:00:11 +03:00
gibbed c51cba080b Fix some bad string formats. 2020-04-08 13:05:37 -05:00
Triang3l 7e27427c4a [D3D12] SV_Position is not necessary in VS if it's in DS/GS 2020-04-08 12:54:35 +03:00
Triang3l 7cf3a75ab1 [D3D12] Fix and enable triangle adaptive tessellation 2020-04-08 00:26:49 +03:00
gibbed a48bb71c2f Overhaul logging. 2020-04-07 16:09:41 -05:00
gibbed 5bf0b34445 C++17ification.
C++17ification!

- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
  std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.
2020-04-07 16:09:41 -05:00
Triang3l b47948b7cf [DXBC] Fix another copy-paste kVSDS typo 2020-04-07 19:19:08 +03:00
Triang3l 306f2947ec [DXBC] Fix a copy-paste kDSVS typo 2020-04-07 19:18:21 +03:00
Triang3l 9d36c257b0 [D3D12] Non-adaptive triangle tessellation 2020-04-07 18:55:43 +03:00
Triang3l b00baadf53 [D3D12] Fix a lint issue in comments 2020-04-06 12:41:35 +03:00
Triang3l 283c3ab59b [D3D12/DXBC] Fix a couple of tessellation-related comments 2020-04-06 00:19:29 +03:00
Triang3l c4f47039eb [GPU] Fix a typo in the tessellation patch types comment 2020-04-06 00:08:05 +03:00
Triang3l 4b9f63cdf1 [GPU] Shader::HostVertexShaderType enum for domain shader types 2020-04-06 00:03:23 +03:00
Triang3l 8da8044771 [DXBC] Move cvars from D3D12 to GPU 2020-04-05 17:23:38 +03:00
Triang3l e82d05c687 [D3D12] Pass adaptive tessellation factors via index buffer like on the guest 2020-04-05 17:22:49 +03:00
Triang3l 5d6fe38e6f [DXBC] Vertex shader prologue and gamma to new DXBC code 2020-04-05 13:13:55 +03:00
Triang3l 5f5e281e8c [DXBC] Rewrite a comment in memexport that may be outdated 2020-03-29 19:14:25 +03:00
Triang3l 05f6b444a0 [DXBC] Move memexport to the new DXBC code and make it more straightforward 2020-03-29 19:09:58 +03:00
Triang3l 7bdf59a8c7 [DXBC] Fix totally broken instruction when memexport is used in PS 2020-03-28 00:23:02 +03:00
Triang3l a10bd2a5c1 [DXBC] Unbreak MRT in RTV output path 2020-03-27 23:18:15 +03:00
Triang3l 316f996d50 [DXBC] D3D11.3 Functional Specification lies 2020-03-27 21:31:00 +03:00
Triang3l a4ffcd5175 [D3D12] Update DXBC contribution notes 2020-03-23 00:13:54 +03:00
Triang3l cde092ece1 [D3D12] Persistent shader and PSO storage 2020-03-21 19:22:19 +03:00
Triang3l b12554c5af [GPU] Add VGT_DRAW_INITIATOR to registers.cc 2020-02-25 08:05:47 +03:00
Triang3l 90b772a330 [GPU] Set VGT_DRAW_INITIATOR and use major mode from it 2020-02-24 23:27:25 +03:00
Triang3l 95475d5f78 [D3D12] SharedMemory::ClearCache invalidating pages, destroying watches 2020-02-23 15:55:41 +03:00
gibbed a6e6f0f7bf Lint cleanup. 2020-02-22 13:29:07 -06:00
Triang3l 1336316139 [D3D12] Vertex kill and multipass vertex exports 2020-02-20 08:56:16 +03:00
Triang3l 47eee5e1c3 [GPU] Unified function for mip level bounds, BaseMap mip filter, small refactoring 2020-02-18 23:31:48 +03:00
Triang3l 710d225d0a [GPU] --gpu_allow_invalid_fetch_constants to bypass invalid fetch constant type errors 2020-02-16 19:35:26 +03:00
Triang3l d18e63e6e2 [D3D12] Always write original shader source in DXBC if PIX is attached 2020-02-16 18:09:22 +03:00
Triang3l 8ec813de82 [Memory, D3D12] Various refactoring from data provider development 2020-02-15 21:35:24 +03:00
Triang3l b59ae30ec3 [D3D12] DXBC: Fix two uninitialized register usages in ROV code, better comments 2020-02-13 08:31:01 +03:00
Triang3l 014d03193e [D3D12] Convert dxbc_shader_translator_om.cc to new DXBC emission code 2020-02-10 23:50:26 +03:00
Silent f392347673 [GPU] Remove MAX_PATH limit from Shader::Dump 2020-02-09 14:02:37 -06:00
Triang3l 85fb028faa [D3D12] Cleaner DXBC emission code, port ROV prologue to it 2020-02-07 09:42:43 +03:00
Triang3l 211e30d791 [GPU] Remove repeated word in a comment 2020-02-02 21:07:51 +03:00
Triang3l 4061445087 [GPU] Remove unused kConstantInt/Bool shader operands 2020-02-02 21:05:00 +03:00
Triang3l c43ccc073d [D3D12] Submit command lists on primary buffer end 2019-12-04 21:42:26 +03:00
Triang3l 6a3a56b3b9 [D3D12] Workaround for texture flickering on Nvidia - don't use sampler 2047 2019-12-01 21:39:48 +03:00
Joel Linn 03d5455a2f [imgui] Fixes to work with new api.
- Font atlas is now owned by context.
- Switch from deprecated io.RenderDrawListsFn callback to dedicated call in window.cc.
- Replaced deprecated ImGuiCol_ModalWindowDarkening with ImGuiCol_ModalWindowDimBg.
- Replaced deprecated SetScrollHere() with SetScrollHereY().
- Replaced deprecated GetContentRegionAvailWidth() with GetContentRegionAvail().x.
- Replaced deprecated ShowTestWindow() with ShowDemoWindow().
- Replaced deprecated ImGuiCol_ChildWindowBg with ImGuiCol_ChildBg.
- Replaced deprecated SetNextTreeNodeOpen() with SetNextItemOpen().
2019-11-20 08:05:40 -06:00
Joel Linn 1985169924 [imgui] Make code compile with new imgui. 2019-11-20 08:05:40 -06:00
Triang3l 26e1a67036 [GPU] Separate dxbc and dxbctext shader compiler targets 2019-11-09 00:13:23 +03:00
Triang3l e5b8f0cb27
[Vulkan] Remove an obsolete comment about GLSL 2019-11-08 23:16:37 +03:00
Margen67 09e1028154 Remove (hopefully) last OpenGL leftovers & crunch
Crunch is unused.
2019-11-08 09:10:51 -08:00
Triang3l d4a5a57867 [D3D12] Remove command_list.h inclusion 2019-11-06 08:08:49 +03:00
Triang3l c8f3c93802 [D3D12] Don't create multiple command lists as they're just encoders 2019-11-06 08:06:12 +03:00
Triang3l 00116fad2d [D3D12] Don't assume there's a null D3D descriptor handle 2019-11-04 21:10:32 +03:00
Triang3l c499229455 [GPU] Store an EDRAM snapshot in traces 2019-11-04 17:30:20 +03:00
Triang3l 9deb710607 [D3D12] CP: Framework for multiple command lists per frame 2019-10-31 23:33:11 +03:00
Triang3l 6e5a0ebf7b [D3D12] CP: Separate guest frame and non-frame submissions 2019-10-28 22:00:59 +03:00
Triang3l d3b6f71ae1 [D3D12] Don't use D3D12Context for command processor fence 2019-10-28 10:49:32 +03:00
Triang3l b4af63fe31 [D3D12] Detach UploadBufferPool and DescriptorHeapPool from D3D12Context 2019-10-27 20:53:53 +03:00
Triang3l f23ba862f6 [D3D12] Trace viewer entry point 2019-10-27 00:37:33 +03:00
Triang3l 36f4158f09 [GPU] Trace dump: Do PIX/RenderDoc capture if attached 2019-10-25 21:32:17 +03:00
Triang3l f75d927cc5 [D3D12] Resolve fetch memory read tracing 2019-10-25 09:17:08 +03:00
Triang3l c057b5a032 [D3D12] Make trace dump partially work 2019-10-25 08:38:06 +03:00
Triang3l b622e894d6 [D3D12] Replicate the last texture component into non-existent ones 2019-10-23 23:47:17 +03:00
Triang3l 4623b41023 [D3D12] Trace guest memory operations 2019-10-23 23:33:50 +03:00
Triang3l 1005651855 [D3D12] Fix DXN swizzle and cleanup texture swizzles 2019-10-21 21:16:29 +03:00
Triang3l a9ed73bdd1 [GPU] Remove most hardcoded register/instruction layouts from common and D3D12 code 2019-10-20 19:40:37 +03:00
Triang3l f83269cf8c [GPU] Refactor: Register structs in D3D12CommandProcessor and some other places 2019-10-19 23:32:38 +03:00
Triang3l 84a8dc91e4 [D3D12] Filtering between array texture layers 2019-09-03 10:14:25 +03:00
gibbed 3e6c2bb47c Fix up handling of positional options in cvar handling.
- Fix up handling of positional options in cvar handling so that executables
  other than app can handle them properly.
- Fix command-line arguments for xenia-vfs-dump.
2019-08-24 07:41:55 -05:00
Triang3l 4731ae026b [D3D12] 3D/stacked texture layer addressing 2019-08-19 23:24:58 +03:00
Triang3l 2334e475de [Vulkan v2] Physical device, [D3D12] Small cleanup 2019-08-08 00:08:20 +03:00
Triang3l 40471dff32 [D3D12] Remove gflags from premake5.lua 2019-08-06 23:16:51 +03:00
Triang3l 68017eadea [Vulkan] Add missing line to mark a texture as watched 2019-08-04 18:29:20 +03:00
gibbed 848e2a4088 [App] Rework graphics system creation. 2019-08-03 16:42:38 -05:00
Triang3l 890a32bd98 [App] Only start D3D12 if DLL exists 2019-08-03 22:33:09 +03:00
Triang3l d20c2fa9da [Memory/Vulkan] Move old memory watches to the Vulkan backend 2019-08-03 21:06:59 +03:00
Triang3l 0370f8bbd9 [Memory] Pass exact_range to watch callbacks 2019-08-03 19:16:04 +03:00
Triang3l cc7f26ada8 [GPU] Remove one merge conflict resolution line 2019-08-03 17:15:37 +03:00
Triang3l 352f12f92e [D3D12] Switch from gflags to cvars 2019-08-03 16:53:23 +03:00
Jonathan Goyvaerts 81fe22f1c8 Get rid of gflags alltogether 2019-08-03 02:34:19 +02:00
Jonathan Goyvaerts c1af632562 Replace all gflag implementations with cvar implementations 2019-08-03 02:34:07 +02:00
Triang3l 90c9c24ca5 [D3D12] Add d3d12_readback_resolve gflag 2019-08-01 08:55:47 +03:00
Triang3l 24383b9137 [Memory/D3D12] Unwatch up to 256 KB ranges 2019-07-31 00:18:12 +03:00
Triang3l 4aceeb73c4 [Memory] Move new watches to heap-aware Memory from MMIOHandler 2019-07-30 08:00:20 +03:00
Triang3l 3f968c3760 [D3D12] YUV texture formats 2019-07-21 15:38:25 +03:00
gibbed 23c9341642 Merge remote-tracking branch 'origin/master' into d3d12 2019-07-18 18:39:17 -05:00
gibbed 0bed6e565b [Base/GPU] Fix some usage of xe::find_base_path. 2019-07-18 18:37:47 -05:00
Triang3l 7a88789ebd [D3D12] RB_STENCILREFMASK_BF and stencil constants cleanup 2019-07-14 23:49:30 +03:00
Triang3l f393c621d7 [D3D12] Fix typos in shader_compiler_main 2019-07-14 00:18:37 +03:00
Triang3l 4825e69fda [D3D12] Cleanup primitive types and front/back facing 2019-07-13 22:25:03 +03:00
Triang3l a16a746432 Merge branch 'master' into d3d12 2019-07-13 22:22:42 +03:00
Triang3l 1cc06ea3e7 [GPU] VGT major mode info, swap IsPrimitiveTwoFaced arguments 2019-07-13 22:18:06 +03:00
Triang3l 863217217e Merge branch 'master' into d3d12 2019-07-13 15:33:45 +03:00
Triang3l 244f5d4f1c [GPU] xenos.h: Add IsPrimitiveTwoFaced 2019-07-13 15:30:14 +03:00
Triang3l 929ecfa15c [D3D12] ROV: Fix stencil test result being ignored for depth 2019-07-13 12:27:15 +03:00
Triang3l 35c8b66c93 [D3D12] Add forgotten shader implicit early Z check 2019-07-11 10:15:33 +03:00
Triang3l 6672997108 [D3D12] ROV early Z and full rewrite, shader scalar optimizations 2019-07-11 09:31:58 +03:00
Triang3l 08675ab65e [D3D12] 3D texture resolve 2019-04-25 08:37:55 +03:00
Triang3l 66a9c9d812 [GPU] Store ALU result after both vector and scalar instructions 2019-04-20 20:30:01 +03:00
gibbed c965751911 Merge remote-tracking branch 'origin/master' into d3d12 2019-04-20 02:40:46 -05:00
gibbed 1145d57007 Undo main/wWinMain changes in preparation for new method
of doing a startup AVX check.

This reverts commit 4030cff3ec.
2019-04-20 02:32:45 -05:00
Triang3l 40ffba97d9 Merge branch 'master' into d3d12 2019-04-19 15:32:10 +03:00
gibbed 4030cff3ec - Move main, wWinMain entrypoints to their own file.
- Fix startup AVX checks.
2019-04-18 16:57:42 -05:00
gibbed 827567a21a Merge branch 'master' into d3d12 2019-04-18 11:23:41 -05:00
gibbed 28a7334f5c [Vulkan] Fix missing aes_128 link for trace viewer/dumper. 2019-04-18 10:20:18 -05:00
Triang3l ec92d46480 Merge branch 'master' into d3d12 2019-04-18 17:54:57 +03:00
gibbed ffbc99926b - Update premake build script for VS2017+ build support.
- Update premake (for VS2019 support).
- Update Xenia build script to detect VS2017+ version.
- Update Xenia premake scripts due to updated premake.
- Fix cc override in Xenia build script.
2019-04-18 09:28:31 -05:00
Triang3l 3f22ff3645 [D3D12] DXT3A_AS_1_1_1_1 texture loading 2019-04-17 14:38:41 +03:00
Triang3l 293851d0c9 [D3D12] Re-add accidentally deleted RT update trigger 2019-04-12 20:09:31 +03:00
Triang3l 8f51855c8f Revert "[D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately"
This reverts commit 25cc189e99.
2019-04-12 20:04:50 +03:00
Triang3l 25cc189e99 [D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately 2019-04-12 19:13:03 +03:00
Triang3l ecc056912d [D3D12] Don't drop draw calls with no render targets 2019-04-12 16:59:45 +03:00
Triang3l 93a18a517b [D3D12] Place UAV barriers for the EDRAM ROV when layout changes 2019-04-12 15:59:09 +03:00
Triang3l 45cee3f871 [D3D12] Don't create RT store pipelines with ROV 2019-04-11 12:05:13 +03:00
Triang3l 88c594ca3b [D3D12] Fix RB_COPY_DEST_PITCH handling in ResolveCopy 2019-04-10 22:35:05 +03:00
Triang3l 5e30f3a947 [D3D12] User clip planes and constant/signature refactoring 2019-04-10 16:37:06 +03:00
Triang3l 8c56d5cb98 [D3D12] Fix lint failure in RenderTargetCache::BeginFrame 2019-04-09 23:04:13 +03:00
Triang3l 4e8e75c549 [D3D12] Remove TODO for initial EDRAM clear since Windows clears allocations anyway 2019-04-09 19:45:35 +03:00
Triang3l 959b8ef19e [D3D12] Draw rectangles by mirroring one vertex across diagonal 2019-04-09 17:19:47 +03:00
Triang3l 0367e1a536 [D3D12] Fix ps_param_gen rounding ignored with ROV 2019-04-05 23:57:29 +03:00
Triang3l 6db0ad663b [D3D12] mb_used -> used_mb in the profiler 2019-04-05 15:31:59 +03:00
Triang3l d0c8725270 [D3D12] Limit texture memory usage with LRU deletion 2019-04-05 15:19:16 +03:00
Triang3l 5582e63ef1 [D3D12] Resolve 16-bit RTs to unorm textures, not snorm 2019-03-07 11:21:39 +03:00
Triang3l 7049d52dbb [D3D12] Display texture cache size in the profiler 2019-03-05 10:26:40 +03:00
Triang3l 05c1f57007 Merge branch 'master' into d3d12 2019-03-03 14:42:11 +03:00
Maksim Derbasov 142148e594 [GPU] Fix bit check in Make Coherent logging. 2019-03-02 04:13:03 -06:00
Triang3l 57e8f05234 [D3D12] Make RG16/RGBA16 RTVs range switchable 2019-01-29 14:39:04 +03:00
Triang3l cb99afffcb [D3D12] Revert changing the sign of tfetch epsilon 2019-01-29 12:41:06 +03:00
Triang3l 0c8ce2af04 [D3D12] tfetch: change epsilon sign, add 0.5 to getWeights coords 2019-01-29 12:35:22 +03:00
Triang3l 61fd5a6dc2 [D3D12] Replicate red channel of single-channel textures 2019-01-26 14:11:09 +03:00
Triang3l 189ffca234 [D3D12] DXBC: Fix aL incrementing 2019-01-25 22:43:16 +03:00
Triang3l 80e5c56340 Merge branch 'master' into d3d12 2019-01-25 20:44:51 +03:00
Triang3l e706cf0d54 [GPU] Fix addsc/mulsc/subsc r# addressing mode not initialized 2019-01-25 20:43:53 +03:00
Triang3l ba7b6d6081 [D3D12] Memexport CPU readback, disabled by default 2019-01-25 16:33:25 +03:00
Triang3l 4a3245650f [D3D12] Optional non-GS path for quads for PIX 2019-01-25 15:09:58 +03:00
Triang3l 9dd62c1e15 [D3D12] Alpha to coverage (w/o dithering) with RTV, tiny AtoC fixes 2019-01-21 23:41:47 +03:00
Triang3l 0a9feb5eca [D3D12] ROV: Alpha to coverage (without dithering) 2019-01-21 21:28:26 +03:00
Triang3l 0fc8497905 [D3D12] Fix debug config crash in back buffer stretching code 2019-01-19 14:48:46 +03:00
Triang3l b7bcdf3e8b [D3D12] Pre-create EDRAM and shared memory buffer descriptors 2019-01-17 16:39:51 +03:00
Triang3l cf7c981991 [D3D12] Cache SRV descriptors in the texture cache to copy instead of creating 2019-01-16 19:06:11 +03:00
Triang3l cf3ce4f98b [D3D12] Unhardcode forgotten pipeline creation thread count 2019-01-15 21:04:17 +03:00
Triang3l a1a1110784 [D3D12] Non-indexed line loops 2019-01-15 14:19:59 +03:00
Triang3l 17dfd84f71 [D3D12] Free two alphatest-related system constant dwords 2019-01-15 12:58:36 +03:00
Triang3l 27a8e4259e [D3D12] DXBC: Fix 0*anything check with negated operands 2019-01-12 18:52:06 +03:00
Triang3l b8d1bb740b [GPU/D3D12] Fix CTX1 component order 2019-01-12 14:28:32 +03:00
Triang3l e5bcedfd1f [D3D12] DXBC: Fix 0*anything check in muls_prev 2019-01-12 13:07:45 +03:00
Triang3l ef523823d5 [D3D12] Force early Z with DSV, fix blend disabled flag in rb_colorcontrol ignored 2019-01-11 17:07:33 +03:00
Triang3l d7ed044be1 [D3D12] Don't cull points and rectangles 2019-01-09 16:25:03 +03:00
Triang3l 8ad12480a4 [D3D12] Copy index buffer to a scratch buffer for memexporting draws 2019-01-09 13:19:49 +03:00
Triang3l aabe6dec9c [D3D12] Fix log level of pipeline creation messages 2019-01-08 14:14:14 +03:00
Triang3l 77e9ab342c [D3D12] DXBC: Don't update coverage in the depth-only pixel shader 2019-01-06 20:13:23 +03:00
Triang3l 75ec48d225 [D3D12] DXBC: Don't declare shared memory SRV in the depth-only pixel shader 2019-01-06 18:41:54 +03:00
Triang3l 6c48f209a1 [D3D12] Fix 7e3 and 20e4 denormal conversion 2019-01-06 15:10:55 +03:00
Triang3l bc89a5822b [D3D12] Memexport: Fix red/blue swap not being in the write mask 2019-01-05 21:14:06 +03:00
Triang3l 1523a1f662 [D3D12] Use 3/4 of logical cores for pipeline creation, cleanup pipeline log messages 2019-01-04 14:30:26 +03:00
Triang3l 890228b6f3 [D3D12] Prototype multithreaded PSO creation 2019-01-04 00:30:11 +03:00
Triang3l 364cae6cc8 [D3D12] Use deferred command list 2019-01-03 15:08:49 +03:00
Triang3l f0c662fa1e [D3D12] Deferred command list class 2019-01-02 23:46:24 +03:00
Triang3l a97fc28ee2 [D3D12] Use multimap for pipelines 2019-01-01 23:13:26 +03:00
Triang3l 1cea4062c0 [D3D12] Rewrite pipeline cache for compact storage of pipeline descriptions 2019-01-01 22:20:50 +03:00
Triang3l 317e5c3ce2 [D3D12] Some stats in the profiler, tweak tiled buffer heap sizes 2018-12-30 15:09:58 +03:00
Triang3l 87d663d7e0 [D3D12] Disable adaptive tessellation temporarily because of cracks 2018-12-29 21:12:21 +03:00
Triang3l 928e46c8b2 [D3D12] Adaptive tessellation of triangle patches 2018-12-29 20:53:41 +03:00
Triang3l 14476e5453 [D3D12] Rename 2_10_10_10 AS_16 RT format to AS_10 2018-12-29 14:59:10 +03:00
Triang3l 616739048b Merge branch 'master' into d3d12 2018-12-29 14:55:17 +03:00
Triang3l 54b211ed18 [GPU] Rename 2_10_10_10 AS_16 RT format to AS_10 2018-12-29 14:54:01 +03:00
Triang3l af96b68398 [GPU] Copy SurfaceNumFormat comment from D3D12 branch 2018-12-29 14:18:10 +03:00
Triang3l cbfc00f80e [D3D12] Debug option to display tessellation as wireframe 2018-12-28 14:37:39 +03:00
Triang3l 43866092a5 [D3D12] Update some comments about numeric formats 2018-12-28 14:12:09 +03:00
Triang3l f3e3bbc4fa Revert "[D3D12] ROV: Round unorm/snorm to nearest rather than nearest even"
This reverts commit 216998eb56.
2018-12-28 14:05:13 +03:00
Triang3l 216998eb56 [D3D12] ROV: Round unorm/snorm to nearest rather than nearest even 2018-12-28 08:25:41 +03:00
Triang3l 5860a8fdc6 [D3D12] DXBC: Add a missing STAT increment to memexport 2018-12-28 08:13:35 +03:00
Triang3l ed09cac440 [D3D12] DXBC: vfetch RoundIndex, vertex index signedness fixes 2018-12-28 08:11:34 +03:00
Triang3l ec7667ce1b [D3D12] Broken memexport shader code 2018-12-27 20:43:17 +03:00
Triang3l bd9aae016f [D3D12] DXBC: eA and eM registers 2018-12-22 19:51:12 +03:00
Triang3l e803ee84d5 [D3D12] Bind shared memory as UAV with memexport 2018-12-22 15:39:47 +03:00
Triang3l 645f450321 [D3D12] DXBC: Fix UAV and sampler operands 2018-12-22 14:26:18 +03:00
Triang3l 6025599d3b [D3D12] Request memory for memexport in shared memory 2018-12-22 00:57:31 +03:00
Triang3l 0aeff797e5 [D3D12] DXBC: Allocate multiple registers with PushSystemTemp 2018-12-21 22:54:26 +03:00
Triang3l 72e9ac5c28 [GPU] Shader translator: More memexport validation 2018-12-21 22:24:09 +03:00
Triang3l 73baaa8e89 [GPU] Gather eA/eM# writes in shader translator 2018-12-21 10:06:41 +03:00
Triang3l 090bf8e353 [D3D12] Change RT in the title to something less ambiguous and more googlable 2018-12-20 20:48:15 +03:00
Triang3l adc0eb87f6 [GPU] Gather used memexport constants in shader translator 2018-12-20 10:14:18 +03:00
Triang3l dc0b468ea8 Merge branch 'master' into d3d12 2018-12-19 22:51:26 +03:00
Triang3l 486a5725e3 [GPU] xenos.h: tessellation, memexport constant 2018-12-19 22:50:43 +03:00
Triang3l c84511a5f1 [GPU/D3D12] Update tessellation enums 2018-12-19 18:23:54 +03:00
Triang3l cbba86fcf0 [D3D12] Split DXBC shader translator into multiple files 2018-12-19 14:24:16 +03:00
Triang3l 2de0e26606 [D3D12] DXBC: Remove ugly useless indexable temp fallback 2018-12-16 13:03:03 +03:00
Triang3l 574f85cc15 [D3D12] Refactoring: DXBC -> Dxbc 2018-12-14 13:25:07 +03:00
Triang3l 952819ed87 [D3D12] Don't 4KB-align sizes of resolve destinations 2018-12-13 15:22:16 +03:00
Triang3l 2b55ec86ea [GPU] Shader Compiler: Expose domain shader output 2018-12-13 14:52:50 +03:00
Triang3l 2b646ff425 [D3D12] Fake per-edge tessellation with continuous 2018-12-12 22:12:32 +03:00
Triang3l 7698944673 [D3D12] Swap red and blue in 8bpp gamma ramp 2018-12-09 15:53:57 +03:00
Triang3l 1ee3ed03fd [D3D12] DXBC: Skip loading and some ALU ops for identical operands 2018-12-09 00:20:13 +03:00
Triang3l 352a443c67 [D3D12] DXBC: Small cleanup of something ugly in subs_prev 2018-12-08 19:18:56 +03:00
Triang3l e1f0e9c84a [D3D12] DXBC: Slightly shorten SM3 mul behavior emulation 2018-12-08 16:42:30 +03:00
Triang3l 9427667a27 [D3D12] Experimental 2x resolution scale 2018-12-06 10:38:13 +03:00
Triang3l 132af3e266 [D3D12] DXBC: Don't skip invariant driver optimizations 2018-12-04 12:29:27 +03:00
Triang3l bb53d722f9 [D3D12] Don't use switch in shaders on Intel, log GPU name 2018-12-03 16:31:49 +03:00
Triang3l 5b9e4b5886 Merge branch 'master' into d3d12 2018-11-27 11:05:14 +03:00
Triang3l f634e94227 [D3D12] ROV: Don't mark Z of PS SV_Position as used in dcl 2018-11-26 20:53:34 +03:00
gibbed 2398b1b8f4 [Vulkan] Use epsilon equality for checking rectangle list form. 2018-11-26 11:51:02 -06:00
gibbed af206addd1 Optimize SPIRV code generated via genspirv command. 2018-11-26 11:49:36 -06:00
Triang3l 355d33dadd [D3D12] Rename feature gflags 2018-11-25 23:25:56 +03:00
Triang3l 9a58841219 [D3D12] ROV: Use MSAA instead of SSAA 2018-11-25 16:37:38 +03:00
Triang3l 5c1efe7b9a Merge branch 'master' into d3d12 2018-11-24 16:26:27 +03:00
gibbed d87ae26895 [CI] Fix mspack linking even more. 2018-11-23 17:58:38 -06:00
Triang3l da280347c4 Merge branch 'master' into d3d12 2018-11-22 21:01:05 +03:00
Margen67 896ac4a682 Update documentation.
- Convert http to https, provide archive link when possible.
- Made CPU-JIT.png more readable on dark themes;
Added a white background so there isn't black text on a black
background.
2018-11-22 09:20:09 -06:00
gibbed 1ba5dd5eb1 Use platform-specific user directory to store content. Create a file named portable.txt next to xenia.exe to restore previous behavior. 2018-11-21 18:07:45 -06:00
Triang3l 14b623465c [D3D12] ROV: ForcedSampleCount=1 for safety 2018-11-21 20:53:11 +03:00
Triang3l 70fae20072 [D3D12] Apply scissor to resolve regions 2018-11-21 17:15:09 +03:00
Triang3l c061836649 [D3D12] Enable ROV by default 2018-11-20 21:30:36 +03:00
Triang3l b0b1e684f7 [D3D12] Fix UAV binding in EDRAM clear root signature 2018-11-20 21:29:04 +03:00
Triang3l d35be635d6 Merge branch 'master' of github.com:xenia-project/xenia into d3d12 2018-11-18 22:21:32 +03:00
Triang3l 7fa453c813 [GPU] Fix 1-component ALU instruction swizzle (hopefully) 2018-11-18 22:20:43 +03:00
Triang3l 66a37c0cc3 [D3D12] ROV: Aliasing and bounds checking, retc instead of discard 2018-11-17 17:15:15 +03:00
Triang3l 6901c3ea17 [D3D12] DXBC: Fix operands in scalar multiplication zero check 2018-11-16 19:25:24 +03:00
Triang3l e46244a996 [D3D12] Put shared memory in PS resource state because vfetch seems allowed in PS 2018-11-16 13:12:51 +03:00
Triang3l 38f421e89f [D3D12] GPUTEXTUREFORMAT_6_5_5 as RBG 2018-11-16 12:56:19 +03:00
Triang3l e1d771ab9c [D3D12] GPUTEXTUREFORMAT_11_11_10 support 2018-11-14 17:02:19 +03:00
Triang3l 5e51306660 [D3D12] Integer texture comment and UpdateSystemConstantValues cleanup 2018-11-14 16:45:31 +03:00
Triang3l 8ff03bcfa0 [D3D12] Allow different loading modes for unsigned and signed textures 2018-11-14 13:52:16 +03:00
Triang3l b4706054d0 [D3D12] U11V11W10 texture loading shader 2018-11-13 22:00:10 +03:00
Triang3l 4ad1c2c538 [D3D12] R11G11B10 unorm textures 2018-11-13 19:00:01 +03:00
Triang3l ae48b3ffa8 [D3D12] Disable placed resources for RTV/DSV because of Nvidia 2018-11-10 22:45:55 +03:00
Triang3l 6a8a080703 [D3D12] DXBC: Source map comment output 2018-11-10 19:01:05 +03:00
Triang3l 3b57c82fe4 [D3D12] ROV: Don't use the D24FS8-specific clear shader with ROV 2018-11-03 20:55:50 +03:00
Triang3l 7935bcf49f [D3D12] Fix resolving of non-top-left sample 2018-11-02 20:21:33 +03:00
Triang3l 3af93e547a [D3D12] Fix triangle fan winding order 2018-11-02 09:57:35 +03:00
Triang3l 5a79f675bd [D3D12] ROV: Unbind resolve RT after using 2018-11-01 22:13:45 +03:00
Triang3l fd12302108 [D3D12] DXBC: Fix setp_inv output when the predicate is set 2018-10-31 16:18:19 +03:00
Triang3l de141e0ee3 [D3D12] DXBC: Rewrite conditional execution 2018-10-30 21:31:59 +03:00
Triang3l 251f078baf [D3D12] Fix mipmapped cubemaps and stacked textures 2018-10-29 22:40:29 +03:00
Triang3l e39bb04875 [D3D12] ROV: Fix min/max blending operation 2018-10-29 10:24:49 +03:00
Triang3l 83c99bc811 [D3D12] Fix resolve region handling 2018-10-28 14:36:41 +03:00
Triang3l 1d45a4f67e [D3D12] Round to nearest when converting to fixed-point 2018-10-26 22:04:11 +03:00
Triang3l f4844207ad [D3D12] Mark 8_8_8_8_GAMMA_EDRAM as non-texture in the texture format list 2018-10-25 09:45:10 +03:00
Triang3l fb5030171e [D3D12] RGBA32F resolve 2018-10-25 09:32:19 +03:00
Triang3l 64d5574023 [D3D12] Don't apply the epsilon offset to cubemap face 2018-10-24 17:30:28 +03:00
Triang3l cabffea4d7 [D3D12] Write pixel, not sample, position to ps_param_gen 2018-10-24 17:08:15 +03:00
Triang3l e68a0c37b9 [D3D12] Add epsilon to texture coordinates to resolve tie in nearest-neighbor filtering 2018-10-24 16:35:00 +03:00
Triang3l aef0675c31 [GPU] Don't ignore vector instructions with side effects when they write to nowhere 2018-10-23 22:46:03 +03:00
Triang3l 43f34d804a [D3D12] Load D3D dynamically 2018-10-23 19:21:01 +03:00
Triang3l b81bb4d68c [D3D12] Code cleanup 2018-10-23 16:42:53 +03:00
Triang3l 31e0581304 [D3D12] Indexed line loops 2018-10-23 13:36:03 +03:00
Triang3l 096d78a2f9 [D3D12] Expose ROV toggle in xenia-gpu-shader-compiler 2018-10-23 11:04:36 +03:00
Triang3l f78c48d6f9 [D3D12] Triangle fans with primitive restart 2018-10-23 08:14:41 +03:00
Triang3l fb12ee72cb [D3D12] Compilation fixes related to 8_8_8_8_GAMMA_EDRAM texture format 2018-10-22 23:30:11 +03:00
Triang3l 2b03a9e095 [GPU] Synchronize GPU frontend with the D3D12 branch 2018-10-22 23:28:52 +03:00
Triang3l abdb37464d
Merge branch 'master' into d3d12 2018-10-22 23:15:07 +03:00
Triang3l 729406dee2 [D3D12] ROV: Blend in linear color space 2018-10-22 15:54:41 +03:00
Triang3l 6b09c02c42 [D3D12] ROV: Alpha saturate blending factor 2018-10-22 07:45:59 +03:00
Triang3l f8d3e0c82f [D3D12] ROV: Small stencil-related cleanup 2018-10-21 22:14:48 +03:00
Triang3l b183b13868 [D3D12] ROV: Fix 7e3 alpha converted twice 2018-10-21 15:33:51 +03:00
Triang3l 8cfff36ec1 [D3D12] ROV: UAV barrier in Resolve 2018-10-21 14:53:29 +03:00
Triang3l b6006dc4b2 [D3D12] ROV: Fix 32-bit storing 2018-10-21 14:16:23 +03:00
Triang3l 24bf39e942 [D3D12] ROV: Don't clamp during blending for floats 2018-10-21 13:44:35 +03:00
Triang3l eb185ab64c [D3D12] ROV: Clamp float16 to 65504 to prevent Infinity 2018-10-20 21:50:57 +03:00
Triang3l 24ebe6b1a7 [D3D12] ROV: Non-IEEE multiplication in blending 2018-10-20 17:58:02 +03:00
Triang3l 1d97fe7d53 [D3D12] ROV: Declare SV_IsFrontFace in the depth-only shader 2018-10-19 12:30:09 +03:00
Triang3l 18ef1248f9 [D3D12] ROV: Use front face stencil for back face when needed 2018-10-19 11:55:01 +03:00
Triang3l c1e78f6953 [D3D12] ROV: Broken stencil test 2018-10-19 11:33:50 +03:00
Triang3l ea2864d21e [D3D12] ROV: Stencil constant declarations 2018-10-18 23:02:25 +03:00
Triang3l d214c62c78 [D3D12] ROV: Fix write mask source 2018-10-18 20:59:24 +03:00
Triang3l f48ea20880 [D3D12] ROV: Track which RTs and components have been actually written 2018-10-18 14:54:33 +03:00
Triang3l 1860bc6a59 [D3D12] Display whether ROV is actually used in the title 2018-10-17 17:53:37 +03:00
Triang3l f5a90faeab [D3D12] ROV: Separate depth and stencil discard/writing 2018-10-17 16:22:24 +03:00