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
Triang3l
1c6d753e55
[D3D12] ROV: Depth test refactoring
2018-10-17 15:23:58 +03:00
Triang3l
6c0ffe881a
[D3D12] ROV: Min/max blend operations
2018-10-17 13:04:03 +03:00
Triang3l
17a737a358
[D3D12] Display ROV support in the window title
2018-10-16 21:19:45 +03:00
Triang3l
37fe120fe0
[D3D12] ROV: Write mask, write in ascending RT number order
2018-10-16 20:50:01 +03:00
Triang3l
e8414da5dd
[D3D12] ROV: Fix depth format system constant setting
2018-10-16 18:08:18 +03:00
Triang3l
5f2c4500d6
[D3D12] ROV: Clamp values participating in blending
2018-10-16 15:02:08 +03:00
Triang3l
2d56c9ae30
[D3D12] ROV: Empty pixel shader for depth-only drawing
2018-10-16 14:02:43 +03:00
Triang3l
6e9964b43e
[D3D12] ROV: Fix depth testing
2018-10-15 23:16:34 +03:00
Triang3l
e455467c32
[D3D12] ROV: Non-working depth testing code
2018-10-15 22:13:06 +03:00
Triang3l
fa968a9ecd
[D3D12] ROV: Fix 7e3 denormal read
2018-10-14 16:05:11 +03:00
Triang3l
5395183d98
[D3D12] ROV: 64bpp load/store
2018-10-14 14:38:04 +03:00
Triang3l
eb8596d72a
[D3D12] ROV: Cleanup format system constants
2018-10-14 12:04:39 +03:00
Triang3l
518535bbd3
[D3D12] ROV 7e3 reading
2018-10-13 20:19:42 +03:00
Triang3l
148a713280
[D3D12] ROV 7e3 writing
2018-10-13 19:10:25 +03:00
Triang3l
c8a48f9c1c
[D3D12] ROV: Blending fixes
2018-10-13 17:44:04 +03:00
Triang3l
efc7f794ed
[D3D12] DXBC: Fix position/color use after free, fix ROV color load/store
2018-10-13 15:38:49 +03:00
Triang3l
f98a4d11ea
[D3D12] ROV: A bit of non-working blending code
2018-10-13 14:33:22 +03:00
Triang3l
60c7f11fe0
[D3D12] Blend constant values
2018-10-12 23:56:49 +03:00
Triang3l
5f108246b6
[D3D12] ROV: Blending constant declaration
2018-10-12 22:28:07 +03:00
Triang3l
10a3dc6d94
[D3D12] ROV: 32-bit loading, except for 7e3
2018-10-12 20:07:00 +03:00
Triang3l
3dc15dbb44
[D3D12] ROV: 32bpp storing (except for 7e3)
2018-10-12 09:59:31 +03:00
Triang3l
615fade64e
[D3D12] ROV: Fix EDRAM pitch shader constant size
2018-10-11 19:59:35 +03:00
Triang3l
197b1d8114
[D3D12] ROV: EDRAM offset calculation
2018-10-11 10:16:36 +03:00
Triang3l
8cde541596
[D3D12] ROV: Binding
2018-10-10 18:33:39 +03:00
Triang3l
67e5cb8681
[D3D12] ROV: Disable RTs when using ROV
2018-10-10 16:37:35 +03:00
Triang3l
6d2e74325c
[D3D12] ROV: Check if supported
2018-10-10 14:30:29 +03:00
Triang3l
90f700c785
[D3D12] Analysis: Display fetch constant contents if type is wrong
2018-10-10 12:44:02 +03:00
Triang3l
7bc79cbd01
[D3D12] Signed texture SRVs
2018-10-09 21:44:18 +03:00
Triang3l
7603de218b
[D3D12] DXBC part of signed textures
2018-10-09 08:31:09 +03:00
Triang3l
6a6e63060b
[D3D12] Submit barriers before uploading gamma ramp
2018-10-08 19:42:02 +03:00
Triang3l
fccebae703
[D3D12] PIX: Capture with F4, disable tiled resources when attached
2018-10-08 12:05:15 +03:00
Triang3l
16dc6e4100
[D3D12] DXBC: In getWeights, apply the offset for unnormalized coordinates only when needed
2018-10-07 21:51:18 +03:00
Triang3l
685d3074f4
[D3D12] Hash sampler bindings and refactor names in UpdateBindings
2018-10-07 20:21:18 +03:00
Triang3l
3de2b5e692
[D3D12] Code style fixes
2018-10-07 17:30:12 +03:00
Triang3l
400e6b7137
[D3D12] Don't replace strip reset index when not used, profile ConvertPrimitives
2018-10-07 15:26:47 +03:00
Triang3l
9194c3f8b0
[D3D12] Primitive converter cache and strip restart, texture invalidation acquire/release
2018-10-06 20:27:48 +03:00
Triang3l
128ac2a3f9
[D3D12] Align mipmap storage size to power of 2 when untiling
2018-10-05 20:48:11 +03:00
Triang3l
34946c57b0
[D3D12] Rename XeTextureCopy to XeTextureLoad in shaders
2018-10-05 20:02:36 +03:00
Triang3l
9dc7dfab02
[D3D12] Fix currently bound textures not reloaded if not needed immediately
2018-10-05 09:20:51 +03:00
Triang3l
d827bbeb6c
[D3D12] Fix texture binding hashing
2018-10-04 23:57:08 +03:00
Triang3l
131525e44d
[D3D12] Don't create SRVs if textures not changed
2018-10-04 14:36:48 +03:00
Triang3l
b77ffe3df6
[D3D12] Output gamma ramp
2018-10-03 14:36:17 +03:00
Triang3l
c624bf8c49
[D3D12] DXBC: Use a0 for maxas scratch because ps must not be modified without a write mask
2018-10-02 21:24:50 +03:00
Triang3l
90f586383a
[D3D12] Make tiled resources optional - not available on old Intel HD Graphics
2018-10-02 17:36:10 +03:00
Triang3l
9e17bbf016
[D3D12] Refactor system and bool/loop constants into separate descriptor ranges
2018-10-02 16:34:22 +03:00
Triang3l
2588aab89d
[GPU/D3D12] Float constant remapping fixes
2018-10-01 20:15:00 +03:00
Triang3l
c4599ff211
[D3D12] Compact float constants and don't split them into pages
2018-09-30 20:17:26 +03:00
Triang3l
eb50ebd885
[D3D12] Write to 8_8_8_8_GAMMA in gamma space
2018-09-29 13:30:05 +03:00
Triang3l
64209748e3
[D3D12] Better polygon offset scale
2018-09-29 12:01:09 +03:00
Triang3l
400747bf7c
[D3D12] Point sprite size
2018-09-29 11:25:03 +03:00
Triang3l
d9538e6cc2
[D3D12] Log unsupported texture formats and don't log texture invalidation
2018-09-27 10:27:55 +03:00
Triang3l
ea7d9e9060
[D3D12] Emulate reversed Z in shaders because it's unsupported on Nvidia
2018-09-26 20:46:24 +03:00
Triang3l
55f96c0f83
[D3D12] DXBC: Apply exp bias after alpha test
2018-09-26 16:20:04 +03:00
Triang3l
70103804c3
[D3D12] 8/16bpp resolves, fixed16 RT exp bias, RT format documentation
2018-09-26 16:10:23 +03:00
Triang3l
6e36101b42
[D3D12] Experimental write watch implementation for shared memory
2018-09-24 23:18:16 +03:00
Triang3l
005e590c92
[D3D12] SHM upload range cleanup and mask index buffer address
2018-09-23 18:37:41 +03:00
Triang3l
ecfa70284e
[D3D12] Treat gamma/as_16 EDRAM formats the same as their base formats
2018-09-22 19:22:57 +03:00
Triang3l
133604f249
[D3D12] Decompress textures if their size is not 4x4-aligned
2018-09-22 19:03:25 +03:00
Triang3l
bb24521c2b
[D3D12] DXT5 decompression shader (not used yet)
2018-09-22 15:52:07 +03:00
Triang3l
4d1b3caf8c
[D3D12] DXBC: Fix max4 instruction length
2018-09-22 13:36:04 +03:00
Triang3l
6e3cf5dd22
[D3D12] Cleanup selection in shaders and add some DXT5 alpha code
2018-09-21 21:22:33 +03:00
Triang3l
17e3f09c1e
[D3D12] DXT1 decompression shader
2018-09-21 08:55:55 +03:00
Triang3l
1f248572ac
[D3D12] Better explanation of dxbc_switch
2018-09-19 23:26:45 +03:00
Triang3l
9daea21edc
[D3D12] Don't use _COLOR blend modes for alpha
2018-09-19 22:54:35 +03:00
Triang3l
cbd36218bf
[D3D12] DXBC: Use switch instead of if for flow control (experimentally)
2018-09-19 21:25:58 +03:00
Triang3l
4db3a927ad
[D3D12] Remove ID3DBlob from D3D12Shader
2018-09-19 17:08:48 +03:00
Triang3l
ed66694319
[D3D12] Slightly better logging
2018-09-19 16:50:13 +03:00
Triang3l
fdd536f572
[D3D12] Swap columns 0:39 and 40:79 of depth buffers in EDRAM
2018-09-19 11:40:28 +03:00
Triang3l
377b2da2d5
[D3D12] DXBC: Use eq, not lt, to check for zero operands in mul
2018-09-18 21:44:39 +03:00
Triang3l
7b450e9cec
[D3D12] DXBC: SM3 zero handling in all multiplication instructions
2018-09-18 17:00:52 +03:00
Triang3l
836b4eef27
[D3D12] DXBC: Handle zeros in dot product and add missing instruction count increments
2018-09-18 15:27:34 +03:00
Triang3l
41d461d3a5
[D3D12] DXBC: Zero operand handling in vector mul and mad
2018-09-18 12:37:47 +03:00
Triang3l
a27740a41f
[D3D12] Set binding texture to null if the key is not valid
2018-09-17 08:08:45 +03:00
Triang3l
34fef0911c
[GPU] Fix dynamic GPR addressing check
2018-09-17 07:35:56 +03:00
Triang3l
79b745527c
[D3D12] Fix pipeline creation being stuck due to primitive topology type not being saved
2018-09-16 21:48:23 +03:00
Triang3l
be2d522e19
[D3D12] Rename shaders/bin to shaders/dxbc because of .gitignore
2018-09-16 20:35:10 +03:00
Triang3l
ae3d0bbb57
[D3D12] Clear both color and depth in resolves
2018-09-16 19:49:01 +03:00
Triang3l
f8506d6b62
[D3D12] Use ByteSwap64 in 64bpp raw resolve
2018-09-16 18:54:59 +03:00
Triang3l
5997ec6668
[D3D12] 64bpp resolve and clear - GTA IV ingame
2018-09-16 17:14:21 +03:00
Triang3l
5f0df6d1fa
[D3D12] Pipeline debug name, DXBC norm16 vertex fix
2018-09-16 15:57:22 +03:00
Triang3l
c9ffe98d21
[D3D12] 64bpp raw resolve and EDRAM refactoring
2018-09-16 15:11:11 +03:00
Triang3l
5be78ab369
[D3D12] Non-indexed triangle fans and resource creation refactoring
2018-09-15 23:41:16 +03:00
Triang3l
d1f185c744
[D3D12] Triangle fan conversion (untested, only indexed and without cache)
2018-09-15 15:11:03 +03:00
Triang3l
a6304cd9fe
[D3D12] Fix 7e3 and 20e4 conversion negative value handling
2018-09-13 20:03:05 +03:00
Triang3l
9a9665e4b8
[D3D12] Add DXBC to xenia-gpu-shader-compiler
2018-09-13 18:33:43 +03:00
Triang3l
bd6b3c3e30
[D3D12] Remove the HLSL shader translator
2018-09-13 18:17:40 +03:00
Triang3l
eed673eef4
[D3D12] DXBC: Fix VPOS SSAA inverse scale constant register
2018-09-13 18:01:42 +03:00
Triang3l
3194ad5938
[D3D12] DXBC: Format getGradients code
2018-09-13 18:00:56 +03:00
Triang3l
d82fb7d9e6
[D3D12] DXBC getGradients and maxa clamp notes
2018-09-13 14:43:07 +03:00
Triang3l
8587438f70
[D3D12] DXBC: Fix anisotropic filtering sampler name suffix
2018-09-13 13:26:01 +03:00
Triang3l
f882743d7f
[D3D12] DXBC ps_param_gen
2018-09-13 10:26:17 +03:00
Triang3l
cfef083271
[D3D12] DXBC: Shorten texture degamma
2018-09-13 09:38:14 +03:00
Triang3l
461fd3f693
[D3D12] DXBC texture sign bias, gamma and exponent bias
2018-09-12 23:34:58 +03:00
Triang3l
099de4487b
[D3D12] DXBC vertex W format
2018-09-12 21:39:13 +03:00
Triang3l
283461be6c
[D3D12] DXBC alpha test
2018-09-12 21:02:22 +03:00
Triang3l
9f7496ac23
[D3D12] DXBC RDEF, operand swizzle and cubemap orientation fix
2018-09-12 19:54:24 +03:00
Triang3l
4651a0b5ed
[D3D12] DXBC: (Currently incorrect) cube undoing
2018-09-12 16:49:23 +03:00
Triang3l
15e0501a49
[D3D12] DXBC binding fixes
2018-09-11 23:15:32 +03:00
Triang3l
2a98d29eda
[D3D12] DXBC: Most of tfetch
2018-09-11 22:57:08 +03:00
Triang3l
d67b6f7a3e
[D3D12] DXBC texture size, offset, unnormalized coordinates
2018-09-11 14:47:39 +03:00
Triang3l
d4334312f3
[D3D12] DXBC samplers
2018-09-11 12:37:47 +03:00
Triang3l
06fabd16ad
[D3D12] DXBC control flow
2018-09-10 23:30:53 +03:00
Triang3l
d5d3f336f5
[D3D12] DXBC loop start and exece
2018-09-10 22:38:15 +03:00
Triang3l
20e607a35c
[D3D12] DXBC exec and predicate
2018-09-10 21:35:12 +03:00
Triang3l
b0fdab1754
[D3D12] DXBC: Format if instruction
2018-09-10 18:32:03 +03:00
Triang3l
f4b83cb670
[D3D12] DXBC main loop and labels
2018-09-10 13:20:35 +03:00
Triang3l
4268466383
[D3D12] DXBC texture bindings (but no samplers and fetch)
2018-09-09 23:33:08 +03:00
Triang3l
091d51f841
[D3D12] DXBC: Unload vfetch index operand
2018-09-09 19:04:03 +03:00
Triang3l
a6da33e463
[D3D12] DXBC cube instruction
2018-09-09 18:38:58 +03:00
Triang3l
3b7d6bfdcb
[D3D12] Format DXBC and HLSL shader translator code
2018-09-09 14:12:40 +03:00
Triang3l
01bbba32cb
[D3D12] DXBC muls_prev2
2018-09-09 00:16:04 +03:00
Triang3l
0a79a36cfa
[D3D12] DXBC logc and reciprocals
2018-09-08 23:06:00 +03:00
Triang3l
a6936ab4ce
[D3D12] DXBC clip space scale/offset
2018-09-08 21:48:00 +03:00
Triang3l
3a86d78c18
[D3D12] DXBC: Re-enable indexable temps because they are okay on Nvidia
2018-09-08 21:14:02 +03:00
Triang3l
b56ff6e325
[D3D12] DXBC: Use the same code for dp4/dp3 as add/mul/max/min
2018-09-08 20:16:00 +03:00
Triang3l
b91866fa49
[D3D12] DXBC: Use movc instead of indexable temps by default because of Nvidia hang
2018-09-08 15:11:25 +03:00
Justin Moore
91c53f975e
Merge pull request #1209 from Triang3l/all_format_info
...
[GPU] Add info about unknown texture formats
2018-09-07 17:08:07 -05:00
Triang3l
0165136f69
[D3D12] DXBC: Partial revert of x# changes because literals can be written to them
2018-09-07 23:02:34 +03:00
Triang3l
bc9b95ac57
[D3D12] DXBC: Fix indexable temp usage
2018-09-07 22:04:57 +03:00
Triang3l
04544945d0
[D3D12] DXBC: Fix vector write mask usage
2018-09-07 20:27:08 +03:00
Triang3l
8ecedbb20a
[D3D12] DXBC: Vfetch exponent bias
2018-09-07 09:17:36 +03:00
Triang3l
64fe2d8600
[D3D12] DXBC: Fix a typo breaking pixel shaders
2018-09-07 09:08:04 +03:00
Triang3l
edcb537f9e
[D3D12] DXBC vertex fetch (hangs GPU currently)
2018-09-07 00:36:15 +03:00
Triang3l
4212d2296a
[D3D12] Remove 6_5_5 textures temporarily because they need custom untililng
2018-09-06 23:14:35 +03:00
Triang3l
e2d60a4708
[D3D12] DXBC: Convert vertex index to float
2018-09-06 22:45:07 +03:00
Triang3l
2b2d7e71c6
[D3D12] DXBC: Add base vertex index
2018-09-06 22:22:19 +03:00
Triang3l
0d3ef9e05d
[D3D12] DXBC vfetch byte swap
2018-09-06 22:05:20 +03:00
Triang3l
bed58a2282
[D3D12] DXBC vfetch ld_raw part
2018-09-06 17:05:36 +03:00
Triang3l
a0aa55b1e8
[D3D12] DXBC: Move interpolants to GPRs in pixel shaders
2018-09-06 14:16:17 +03:00
Triang3l
4cc9e84f35
[D3D12] DXBC position and color output
2018-09-06 13:37:14 +03:00
Triang3l
ae4b34c66c
[D3D12] DXBC: Result storing
2018-09-05 21:37:34 +03:00
Triang3l
fd27057ce1
[D3D12] DXBC: Portion of result storing
2018-09-05 21:14:04 +03:00
Triang3l
5fb3fe3ab5
[D3D12] DXBC: maxas, maxasf
2018-09-05 18:43:06 +03:00
Triang3l
b63d38319b
[D3D12] DXBC: All setp instructions
2018-09-05 18:11:26 +03:00
Triang3l
db87efdfaa
[D3D12] DXBC: Most scalar opcodes
2018-09-05 16:38:47 +03:00
Triang3l
8cd645c4a4
[D3D12] DXBC vector ALU (except for cube)
2018-09-05 14:02:18 +03:00
Triang3l
c4ceb6c0b9
[D3D12] DXBC: More vector instructions
2018-09-04 23:02:55 +03:00
Triang3l
72e6526067
[D3D12] DXBC: Some vector ALU opcodes
2018-09-03 23:03:37 +03:00
Triang3l
b1247bd708
[D3D12] DXBC bool and 0/1 operand loading
2018-09-03 21:51:13 +03:00
Triang3l
04383a2113
[D3D12] DXBC loop constant loading
2018-09-03 08:14:52 +03:00
Triang3l
cb9c2984dc
[D3D12] DXBC float constant loading
2018-09-03 07:58:39 +03:00
Triang3l
45c83e84c8
[D3D12] DXBC source operand loading - registers
2018-09-02 23:35:11 +03:00
Triang3l
4a2329da25
[D3D12] DXBC source operand usage tokens
2018-09-02 21:12:36 +03:00
Triang3l
5798c9a45c
[D3D12] DXBC SV_IsFrontFace
2018-09-02 17:14:11 +03:00
Triang3l
5dcff19efc
[D3D12] DXBC internal registers
2018-09-02 16:50:00 +03:00
Triang3l
1413a7d206
[GPU] Rename uses_register_relative_addressing to uses_register_dynamic_addressing
2018-09-02 16:31:21 +03:00
Triang3l
eda0d31b8f
[D3D12] DXBC: Remove one TODO
2018-09-02 16:25:11 +03:00
Triang3l
f90fa0cf33
[D3D12] DXBC vertex index byte swap
2018-09-02 16:10:20 +03:00
Triang3l
fc6d388c4b
[D3D12] DXBC code cleanup (mainly operands)
2018-09-02 13:58:03 +03:00
Triang3l
71e9085532
[D3D12] DXBC - reset interpolators and point parameters
2018-09-02 00:16:58 +03:00
Triang3l
5f24315c0e
[D3D12] DXBC operand note comment
2018-09-01 23:28:28 +03:00
Triang3l
b404f227b1
[D3D12] DXBC internal r# stack allocation
2018-09-01 22:20:05 +03:00
Triang3l
da9f153a29
[D3D12] DXBC: Don't use indexable temps unless needed
2018-08-31 20:28:29 +03:00
Triang3l
dad10c30e9
[GPU] Detect dynamic temp indexing before translating shaders
2018-08-31 20:06:53 +03:00
Triang3l
8c314072c8
[D3D12] DXBC color output remapping
2018-08-31 16:30:08 +03:00
Triang3l
37001993c5
[D3D12] DXBC indexable temps
2018-08-31 14:04:57 +03:00
Triang3l
4c812da3f2
[D3D12] DXBC pixel shader I/O and refactoring
2018-08-31 13:00:47 +03:00
Triang3l
639be6fdb8
[D3D12] DXBC vertex shader I/O
2018-08-30 22:04:11 +03:00
Triang3l
8268825f3b
[D3D12] Switch to DXBC shader translator (currently unusable)
2018-08-30 20:42:22 +03:00
Triang3l
8376918bb7
[D3D12] DXBC shared memory
2018-08-30 19:46:06 +03:00
Triang3l
8d7559f0f9
[D3D12] DXBC dcl_constantbuffer
2018-08-30 19:01:05 +03:00
Triang3l
aac20b6f91
[D3D12] DXBC ret and some RDEF/OSGN fixes
2018-08-30 15:58:48 +03:00
Triang3l
28b56aac2b
[D3D12] DXBC SHEX writing
2018-08-30 15:12:27 +03:00
Triang3l
c6e0c66c44
[D3D12] DXBC STAT writing
2018-08-30 14:42:17 +03:00
Triang3l
501bec8e5e
[D3D12] Change root signature to allow vfetch in pixel shaders
2018-08-30 14:02:32 +03:00
Triang3l
ac9d3d0b59
[D3D12] DXBC output signature
2018-08-29 23:36:08 +03:00
Triang3l
b46a0c285f
[D3D12] DXBC input signature
2018-08-29 21:54:22 +03:00
Triang3l
b2ddbb6096
[D3D12] DXBC RDEF cbuffer bindings
2018-08-29 20:32:31 +03:00
Triang3l
a30f8d6374
[D3D12] DXBC RDEF cbuffers
2018-08-29 19:46:38 +03:00
Triang3l
3edf41bea4
[D3D12] DXBC RDEF constants
2018-08-29 18:05:50 +03:00
Triang3l
6d783fd3bf
[D3D12] DXBC RDEF types
2018-08-29 16:57:29 +03:00
Triang3l
443e371a94
[D3D12] Make SHM t0 and textures t1+ in VS as in DXBC SHM will be added first
2018-08-28 17:42:11 +03:00
Triang3l
b3650a4b66
[D3D12] 6_5_5 texture format
2018-08-28 16:22:31 +03:00
Triang3l
c2a5b65f8d
[D3D12] Packed texture format swizzles
2018-08-28 16:10:26 +03:00
Triang3l
df22ef2e6a
[D3D12] EDRAM store sorting fix and RT base logging
2018-08-28 14:58:52 +03:00
Triang3l
ccb57373fe
[D3D12] DXBC RDEF header
2018-08-27 22:21:37 +03:00
Triang3l
90a36e3818
[D3D12] Alphatest fix and HLSL style cleanup
2018-08-27 17:21:57 +03:00
Triang3l
285de2a521
[D3D12] DXBC string append
2018-08-27 16:53:59 +03:00
Triang3l
1dc98d9133
[D3D12] DXBC size and checksum
2018-08-27 16:18:21 +03:00
Triang3l
945ced4996
[D3D12] Begin writing the DXBC translator
2018-08-27 15:58:58 +03:00
Triang3l
8ced574c6f
[D3D12] Add DXBC tokens and checksum
2018-08-27 15:18:30 +03:00
Triang3l
629a8e0e25
[D3D12] Profile GPU time via BeginFrame
2018-08-27 12:54:15 +03:00
Triang3l
6d48b856b9
[D3D12] Point sprites and color exponent bias
2018-08-27 12:36:09 +03:00
Triang3l
1818905366
[D3D12] Add a flag to toggle half pixel offset
2018-08-26 23:50:38 +03:00
Triang3l
660a606f5e
[D3D12] Make depth buffers less important than color in case of EDRAM aliasing
2018-08-26 20:26:49 +03:00
Triang3l
592873cf9f
[D3D12] Quad list geometry shader
2018-08-26 19:51:20 +03:00
Triang3l
2c24622bdb
[D3D12] Align size given by GetCopyableFootprints, fix device loss in Halo: Reach
2018-08-26 19:04:28 +03:00
Triang3l
85677af156
[D3D12] Translate shaders before updating render targets so color mask is valid
2018-08-26 17:45:23 +03:00
Triang3l
e819a41300
[D3D12] Banjo-Kazooie/Tooie top tile clear fix (rendering still broken in Tooie)
2018-08-26 16:45:21 +03:00
Triang3l
91ef453534
[D3D12] Try to reload textures when a watch is triggered
2018-08-26 14:52:18 +03:00
Triang3l
227268ef65
[D3D12] Cleanup raw buffer view creation
2018-08-26 13:09:47 +03:00
Triang3l
79d43bb943
[D3D12] Refactor compute pipeline creation
2018-08-26 00:56:41 +03:00
Triang3l
791c275fab
[D3D12] Cleanup object destruction in Shutdown functions
2018-08-26 00:24:25 +03:00
Triang3l
ff014d47d4
[D3D12] Refactor root signature creation
2018-08-25 23:37:11 +03:00
Triang3l
dba8ab4eed
[D3D12] Refactor descriptors and resolve logging
2018-08-25 22:42:18 +03:00
Triang3l
50470d67a8
[D3D12] 32bpp and 20e4 clearing in resolves
2018-08-25 17:03:06 +03:00
Triang3l
66510b2e6f
[D3D12] Experimental incomplete custom sample positions, disabled by default
2018-08-25 14:38:55 +03:00
Triang3l
304544cc72
[D3D12] Fix Y half-pixel offset
2018-08-25 10:50:47 +03:00
Triang3l
961c7e1198
[D3D12] Set 32bpp tile mode for all 32bpp formats
2018-08-25 10:29:52 +03:00
Triang3l
2c6224ad37
[D3D12] 32bpp tiling shader
2018-08-25 01:16:35 +03:00
Triang3l
4a747b3b81
[D3D12] Resolve shader and draw
2018-08-24 22:40:22 +03:00
Triang3l
dd17cd3f9f
[D3D12] Make RT heaps 48 MB so 2560x1024 RT can be resolved to R32G32B32A32
2018-08-23 23:25:42 +03:00
Triang3l
2e79eac976
[D3D12] Window output
2018-08-23 19:50:11 +03:00
Triang3l
ea1abdaa6e
[D3D12] Raw 32bpp resolve
2018-08-23 13:25:36 +03:00
Triang3l
bc4125584c
[D3D12] Shorten and batch barriers
2018-08-22 23:00:56 +03:00
Triang3l
d204e9ba74
[D3D12] 32bpp raw resolve shader
2018-08-22 21:15:02 +03:00
Triang3l
2d8527c9df
[D3D12] Common root constants for EDRAM load/store and single sample load
2018-08-22 19:54:51 +03:00
Triang3l
c4f80aac0d
[D3D12] EDRAM layout of a rectangle and other resolve stuff
2018-08-22 17:33:43 +03:00
Triang3l
ddc8f17fa5
[D3D12] Depth untiling, update depth resolve documentation
2018-08-21 23:05:41 +03:00
Triang3l
da1be211eb
[D3D12] Add red/blue swap to EDRAM loads and describe resolve modes
2018-08-21 22:04:06 +03:00
Triang3l
d628e92ff5
[D3D12] Resolve target dimensions
2018-08-20 19:09:04 +03:00
Triang3l
f9fdcbb2dc
[D3D12] Resolve dimension calculation
2018-08-20 17:58:20 +03:00
Triang3l
153c6bf713
[D3D12] Refactor EDRAM load/store pipelines into modes
2018-08-19 21:11:16 +03:00
Triang3l
1a4fc3bde2
[GPU] Add texture signedness enumeration
...
For sign_x, sign_y, sign_z and sign_w fields of xe_gpu_texture_fetch_t.
2018-08-19 15:25:20 +03:00
Triang3l
e3a50a207d
[D3D12] SHM functions needed for resolves
2018-08-18 22:43:02 +03:00
Triang3l
36cc19017a
[D3D12] HLSL compilation fixes (still can't map one Halo 3 shader to vs_5_1)
2018-08-18 21:53:14 +03:00
Triang3l
7ba2526fa8
[D3D12] Move interpolators above position because it's more important for pixel shaders
2018-08-18 18:47:13 +03:00
Triang3l
bd868ae6cc
[D3D12] Fix a typo in linear texture address calculation
2018-08-18 18:37:20 +03:00
Triang3l
bfb781d293
[D3D12] Texture invalidation (incomplete)
2018-08-18 15:24:02 +03:00
Triang3l
9e21f5ab67
[D3D12] SHM watch creation
2018-08-18 00:16:55 +03:00
Triang3l
005040e885
[D3D12] Shared memory watch structures
2018-08-17 21:41:18 +03:00
Triang3l
e6ec390a04
[D3D12] Profile UpdateRenderTargets
2018-08-17 17:53:01 +03:00
Triang3l
8d6b75418d
[D3D12] Clear present back buffer, more profiling scopes, remove logging in shared memory
2018-08-17 17:35:33 +03:00
Triang3l
e572f65d11
[D3D12] DXT5A swizzle
2018-08-16 17:36:03 +03:00
Triang3l
ed7f4ec4be
[D3D12] Fix a typo in HLSL sqrt
2018-08-16 16:19:45 +03:00
Triang3l
14523145a2
[D3D12] ps_param_gen in HLSL
2018-08-16 15:53:55 +03:00
Triang3l
bb518407a2
[D3D12] Disable blending if it's 1*S+0*D
2018-08-16 14:16:56 +03:00
Triang3l
7ced7c932c
[D3D12] Fix a typo in a blending register name
2018-08-16 14:02:53 +03:00
Triang3l
d94ebaf580
[D3D12] HLSL alphatest
2018-08-16 13:44:48 +03:00
Triang3l
8d2bfd4b88
[D3D12] Fix 16.16.16.16 vertex fetch
2018-08-16 12:20:27 +03:00
Triang3l
c547851626
[D3D12] Upload data to shared memory during frame (fixes swaying palms in CoD4)
2018-08-16 12:07:53 +03:00
Triang3l
1cec143810
[D3D12] DXT3A textures
2018-08-15 16:59:43 +03:00
Triang3l
428095f62a
[D3D12] CTX1 texture loading shader
2018-08-15 16:27:13 +03:00
Triang3l
17fb60a97a
[D3D12] Rectangle list geometry shader and viewport fixes
2018-08-14 17:21:18 +03:00
Triang3l
1200eaae24
[GPU/D3D12] Correct EDRAM texture format names
2018-08-13 19:50:38 +03:00
Triang3l
24c3bac898
[D3D12] Fix cubemap coordinates
2018-08-13 00:30:20 +03:00
Triang3l
01a3bc32f7
[D3D12] More texture formats, rename blend map
2018-08-12 22:58:45 +03:00
Triang3l
34a1846859
[D3D12] 3D and cube texture HLSL compilation fixes
2018-08-12 21:12:34 +03:00
Triang3l
ebc5911634
[D3D12] Samplers and fix blending not enabled
2018-08-12 21:03:57 +03:00
Triang3l
de70451ac8
[D3D12] Partially implement tfetch in HLSL
2018-08-12 19:37:03 +03:00
Triang3l
b0993fa3f0
[D3D12] Tiny HLSL control flow cleanup
2018-08-12 01:15:38 +03:00
Triang3l
0900036795
[D3D12] HLSL control flow fixes (still broken)
2018-08-12 01:08:19 +03:00
Triang3l
ede9055ca5
[D3D12] Fix RT formats and log their creation
2018-08-12 00:18:15 +03:00
Triang3l
19401f03d0
[D3D12] EDRAM load, fix EDRAM depth encoding
2018-08-11 23:39:27 +03:00
Triang3l
c7da5f0572
[D3D12] Count dirty RT rows rather than tiles
2018-08-11 21:04:14 +03:00
Triang3l
9b303c64ba
[D3D12] EDRAM storing and random cleanup
2018-08-11 20:33:33 +03:00
Triang3l
a4b98cda31
[D3D12] Add a missing component count to HLSL vfetch
2018-08-10 22:34:42 +03:00
Triang3l
e5eb6636a7
[D3D12] Add a missing new line to the shader translator
2018-08-10 19:21:18 +03:00
Triang3l
fe5ec61b51
[D3D12] Render target allocation fixes
2018-08-10 19:11:03 +03:00
Triang3l
6b9717c7f7
[D3D12] Fix retarded render target allocation bugs
2018-08-10 18:44:38 +03:00
Triang3l
952bb91c3f
[D3D12] Render target binding
2018-08-10 18:06:21 +03:00
Triang3l
c0c0ca263d
[D3D12] Overlap detection when adding RTs
2018-08-08 20:04:17 +03:00
Triang3l
46dc640209
[D3D12] Ignore draws not writing to depth and fix a typo
2018-08-07 22:59:18 +03:00
Triang3l
52a1a80200
[D3D12] Rough outline of render target architecture
2018-08-07 22:40:24 +03:00
Triang3l
83cf482a50
[D3D12] 32bpb and 128bpb untiling, fix 3D tiled offset
2018-08-06 23:31:09 +03:00
Triang3l
cfd3821b83
[D3D12] DXT1 untiling
2018-08-06 20:10:53 +03:00
Triang3l
265d6eb9df
[D3D12] Fix texture size calculation and add texture creation logging
2018-08-05 18:45:57 +03:00
Triang3l
b50d6d844f
[D3D12] Texture object creation
2018-08-05 17:43:00 +03:00
Triang3l
d75a372780
[GPU] Add info about unknown texture formats
2018-08-05 14:02:58 +03:00
Triang3l
620aa664e4
[D3D12] Apply exponent bias to vertex fetches
2018-08-04 20:48:45 +03:00
Triang3l
6d9225e84c
[D3D12] Increase shared memory tile heap size to 16 MB so we don't allocate too many of them
2018-08-04 19:11:46 +03:00
Triang3l
7d80b5ae0d
[D3D12] Fetch constants in PS for exp bias and 3D/stacked
2018-08-04 17:08:27 +03:00
Triang3l
991b120454
[D3D12] Fix one comment regarding descriptors in d3d12_command_processor
2018-08-03 23:12:13 +03:00
Triang3l
8a24ff5078
[D3D12] Texture utility functions, all block sizes and bpp
2018-08-03 23:11:09 +03:00
Triang3l
35aaa72722
[D3D12] SRV and sampler bindings
2018-08-03 16:39:13 +03:00
Triang3l
471ff6f157
[D3D12] Remove 20e4 depth range comment because it's used for 0-1 depth
2018-08-02 19:21:06 +03:00
Triang3l
034eb66968
[D3D12] Scratch GPU-side buffer (for untiled texture data)
2018-08-01 21:38:38 +03:00
Triang3l
6d2441a9ee
[D3D12] Remove context_ from PipelineCache
2018-08-01 18:41:07 +03:00
Triang3l
1ae30e5775
[D3D12] Don't add .xyzw swizzle to stores
2018-08-01 16:17:48 +03:00
Triang3l
2b482352d0
[D3D12] Don't crash if failed to compile a shader
2018-08-01 14:02:32 +03:00
Triang3l
235799eecd
[D3D12] Half-pixel offset improvement
2018-08-01 13:26:39 +03:00
Triang3l
6d6e803c7d
[D3D12] Flip the viewport
2018-08-01 13:12:06 +03:00
Triang3l
dea463f79b
[D3D12] Fixes to make things drawn
2018-08-01 12:52:22 +03:00
Triang3l
2cedd61009
[D3D12] Fix HLSL fetch cbuffer usage
2018-08-01 01:23:38 +03:00
Triang3l
db625892ea
[D3D12] Shared memory typo fix and improvements
2018-08-01 01:09:51 +03:00
Triang3l
8fadd7a242
[D3D12] Fix vertex address in fetch range usage
2018-07-31 19:57:12 +03:00
Triang3l
5d0ad2e465
[D3D12] Draw calls
2018-07-31 19:23:43 +03:00
Triang3l
bb045cae70
[D3D12] Restore W and apply half-pixel offset in VS
2018-07-31 17:13:44 +03:00
Triang3l
fb1051b610
[D3D12] System constant setting and some cleanup
2018-07-31 16:17:51 +03:00
Triang3l
2183a969af
[D3D12] Make tiled resource toggleable, disable debug layer by default
2018-07-30 20:18:52 +03:00
Triang3l
e0eede73b9
[D3D12] Constant buffer binding
2018-07-30 15:59:43 +03:00
Triang3l
84e7ae16e7
[D3D12] Enable independent blending
2018-07-29 17:30:08 +03:00
Triang3l
2d59231993
[D3D12] Pipeline cache and command processor formatting
2018-07-29 00:57:25 +03:00
Triang3l
b567b9e9cc
[D3D12] Upload buffer pool class
2018-07-29 00:56:37 +03:00
Triang3l
ae7ff58f81
[D3D12] Pipeline cache
2018-07-28 16:30:47 +03:00
Triang3l
4f7edff19d
[D3D12] SHM: Watches prototype, some uploading
2018-07-26 22:52:26 +03:00
Triang3l
812a35caff
[D3D12] SHM: Range fixes, logging, testing
2018-07-26 01:01:48 +03:00
Triang3l
bd54e905b2
[D3D12] SHM: Mark outdated pages for upload when using them
2018-07-25 21:36:39 +03:00
Triang3l
2be5f2cfa2
[D3D12] SHM uploading
2018-07-25 20:24:39 +03:00
Triang3l
bbabbc2439
[D3D12] SHM - mark pages as modified in the beginning of a frame
2018-07-25 15:04:14 +03:00
Triang3l
ae1196f29d
[D3D12] Shared memory - heap creation
2018-07-25 00:47:02 +03:00
Triang3l
82f2abed0d
[D3D12] Command processor command lists
2018-07-24 17:07:38 +03:00
Triang3l
3a90f7a246
[D3D12] Enable instruction numbers and offsets in DXBC disassembly
2018-07-24 16:47:55 +03:00
Triang3l
ea922bb3ab
[D3D12] Temporarily disable shader optimization
2018-07-24 16:07:00 +03:00
Triang3l
c0ff73a588
[D3D12] Build and code format fixes
2018-07-24 15:14:16 +03:00
Triang3l
87aecfa1b8
[D3D12] Shaders (not all compiling yet)
2018-07-24 14:57:21 +03:00
Triang3l
b0421de496
[D3D12] Cube instructions
2018-07-23 18:37:55 +03:00
Triang3l
f237f7e8eb
[D3D12] Shader translator CompleteTranslation
2018-07-23 17:23:35 +03:00
Triang3l
60706077a3
[D3D12] Shader translator scalar ALU
2018-07-23 16:55:40 +03:00
Triang3l
40806c1b67
[D3D12] Shader compiler vector ALU
2018-07-23 11:22:43 +03:00
Triang3l
3101930526
[D3D12] Shader translator vertex fetch
2018-07-22 23:15:36 +03:00
Triang3l
67f88ff59c
[D3D12] HLSL shader translator stores
2018-07-22 14:28:33 +03:00
Triang3l
11e4ae3f90
[D3D12] HLSL shader translator loads
2018-07-22 13:35:40 +03:00
Triang3l
d60c8b29ca
[D3D12] Convert GlslShaderTranslator flow control to HLSL
2018-07-21 23:37:28 +03:00
Triang3l
00d5bd48da
[D3D12] A bit of HLSL shader translator
2018-07-21 21:45:33 +03:00
Triang3l
ffcf18f193
[D3D12] Move fences to a separate class, get rid of Vulkan provider
2018-07-19 14:08:52 +03:00
Triang3l
d7701ae86b
[D3D12] D3D12Context initialization
2018-07-19 12:48:11 +03:00
Triang3l
e9083dbc2f
[D3D12] Create xenia-ui-d3d12 project
2018-07-18 15:02:37 +03:00
Triang3l
fde3c1f0e8
[D3D12] Copy the null graphics system as D3D12
2018-07-18 12:02:00 +03:00
Triang3l
c2b2a9f376
[D3D12] Create the project and link D3D libraries
2018-07-18 11:42:51 +03:00
gibbed
ba7dc6b2d7
[GPU] Improve readability of initialization errors and remove references to OpenGL.
2018-07-01 16:50:03 -05:00
Rick Gibbed
94d1106386
Merge pull request #1177 from Triang3l/depthbias.
...
[GPU] Depth bias support
2018-07-01 01:34:34 -05:00
gibbed
15eb6ed2d9
[Vulkan] Fix GetMipExtent calculating mip extent incorrectly.
2018-07-01 01:31:33 -05:00
gibbed
4357415892
[GPU] Better names for tiled functions.
2018-07-01 01:30:22 -05:00
Triang3l
c6255af824
[GPU] Depth bias support
2018-06-16 16:32:14 +03:00
gibbed
1409b9c565
[GPU/Vulkan] Add support for 2D image stacks.
2018-06-05 07:51:51 -05:00
gibbed
486172770d
[GPU] Ignore min mip level when one is specified and there is no mip address.
2018-06-04 22:54:41 -05:00
gibbed
aba0f3c628
[GPU] Ensure pitch/height are a multiple of block size for host textures.
2018-06-04 22:53:30 -05:00
gibbed
2c7043bd98
[GPU/Vulkan] Maybe fix minimum mip level. Probably breaks everything.
2018-06-04 10:13:28 -05:00
gibbed
b5a88d1a7d
[GPU] Track unaligned (visible) block width in texture info.
...
[Vulkan] Don't use power of two for mip width/height calculation for host textures.
[Vulkan] Add more Vulkan error logging.
[Vulkan/GPU] Rudimentary texture dumping.
2018-06-04 06:08:29 -05:00
gibbed
b35fe935f9
[GPU] Ignore mipmap level count when mip data address is invalid.
2018-06-01 22:04:31 -05:00
gibbed
0d429fc7d7
[Vulkan] Disable texture mipmap watches by default.
2018-05-31 23:00:11 -05:00
gibbed
79f8fe9f37
[GPU] Fixes to problems caused by previous commit (bad handling of memory addressing, watches, etc).
2018-05-31 21:50:22 -05:00
gibbed
e329649f2e
[GPU] Rename texture_memory_usage.cc to texture_extent.cc
2018-05-31 19:43:26 -05:00
gibbed
e89a31006f
- [GPU] Rename TextureMemoryUsage to TextureExtent (and relevant functions/etc).
...
- [GPU] Precalculate memory byte usage for base mip (and any additional mip levels).
- [GPU] Change TextureCache::WatchCallback so that if it's fired multiple times for the same texture it does not assert.
- [GPU] Add write watches for texture memory associated with additional mipmap levels.
2018-05-31 19:41:33 -05:00
gibbed
d0df71b8b6
[Vulkan] Move texture config to its own files.
2018-05-31 10:35:58 -05:00
gibbed
1573b7570d
[Vulkan] Apply distinct component and vector swizzles.
2018-05-31 10:29:08 -05:00
gibbed
2314f25fb7
[Vulkan] Force red channel into all channels for DXT5A. Probably wrong solution but will work for now.
2018-05-31 09:47:41 -05:00
gibbed
958aa04cc5
[Vulkan] Fix swizzle for DXT5A.
2018-05-31 07:31:33 -05:00
gibbed
ec3ab0adbd
[GPU] Stub out context update GPU opcode.
...
[Vulkan] Gracefully handle vertex upload failures.
2018-05-30 20:49:30 -05:00
gibbed
bbebfd49c8
[Vulkan] Add logging to certain error conditions.
...
[Vulkan] Track both texture block height and texture block vertical pitch.
[Vulkan] Only convert the necessary visible height on texture uploads.
[Vulkan] Fix write watch on texture data so it properly only covers mip 0 data.
2018-05-30 19:38:36 -05:00
gibbed
7068d0a5a9
[Vulkan] More details in texture upload logging.
2018-05-30 18:19:37 -05:00
gibbed
6b2f75219c
[Vulkan] Include format/dimension in render texture debug name.
2018-05-30 18:19:06 -05:00
gibbed
2d68ec162d
[Vulkan] Remove unnecessary swizzles.
2018-05-30 18:16:11 -05:00
gibbed
8a099925f3
Shut Travis up.
2018-05-30 10:09:19 -05:00
gibbed
6e000039e8
[Vulkan] Maybe fix the rectangle list shader, part two! Probably still breaks everything.
2018-05-30 09:56:44 -05:00
gibbed
8882d7eebd
[Vulkan] Maybe fix the rectangle list shader. Probably breaks everything.
2018-05-30 08:04:16 -05:00
gibbed
fed60962d6
[Vulkan] Regenerate shaders, and explicitly require the extensions they depend on.
2018-05-30 08:04:16 -05:00
DrChat
f518ec1b37
[GPU] Add coherency debug logs
2018-05-29 19:42:59 -05:00
gibbed
62bb26878f
[GPU] Whoops, CompositeExtract should come after the loads.
2018-05-28 21:10:11 -05:00
gibbed
3e6a9099d1
[GPU] Fix composite extracts from previous commit.
2018-05-28 20:34:53 -05:00
gibbed
83a9cb3435
[GPU] Use uint4 for loop/bool constants to meet std140 packing requirements.
2018-05-28 18:19:22 -05:00
gibbed
2bd9bae0f4
[Vulkan] Better swizzle for DXT3A/DXT5A?
2018-05-28 17:25:32 -05:00
gibbed
425764698e
[Vulkan] Improvements to texture upload code, fix mipmap uploads, remove no_mipmaps flag.
2018-05-28 07:06:33 -05:00
gibbed
b623c33e00
[Vulkan] Add no_mipmaps flag.
2018-05-27 20:36:45 -05:00
gibbed
9231317eeb
[Vulkan] Generalize texture conversion, and fix cube textures in the process.
2018-05-26 11:19:52 -05:00
gibbed
7df45bf590
[Vulkan] Fix DXT3A conversion.
2018-05-26 08:25:25 -05:00
gibbed
cc130e1b07
[GPU] Remove unused code.
2018-05-26 07:06:56 -05:00
gibbed
7116b5fc82
[Vulkan] Reimplemented texture conversions. Here be dragons! Probably breaks everything. Also bonus DXT3A support.
2018-05-26 06:57:16 -05:00
gibbed
73d75c56e1
[GPU] Fix TextureInfo::Prepare for 3D textures.
2018-05-24 23:45:38 -05:00
gibbed
6411674f0f
[GPU] Use pitch for block width calculation.
2018-05-24 08:45:12 -05:00
gibbed
4613c6b8b8
[Vulkan] Better macro for channel swizzling.
2018-05-23 20:37:32 -05:00
gibbed
e9290cd2e0
[Vulkan] Rework component swizzles into channel swizzles. Probably breaks everything.
2018-05-23 20:19:53 -05:00
gibbed
09585eb103
[GPU] Clarify assert in SpirvShaderTranslator::StoreToResult.
2018-05-23 04:55:32 -05:00
gibbed
cb4b1bae1b
[Vulkan] Forgot to undef the new RRRR swizzle macro.
2018-05-22 11:07:27 -05:00
gibbed
9bc17cd1d4
[Vulkan] Maybe fix DXT5A?
2018-05-22 10:52:52 -05:00
gibbed
ee5724f5dd
[GPU] Move gamma ramp tracking to CommandProcessor.
2018-05-22 05:36:24 -05:00
gibbed
fb650ae024
[Vulkan] Start tracking the gamma ramp.
2018-05-21 23:16:15 -05:00
gibbed
8a65dbd024
[GPU] Make some gaps in the register table more obvious.
2018-05-21 22:56:05 -05:00
gibbed
cddfa26bae
[GPU] Add IsSRGBCapable default case.
2018-05-20 12:18:31 -05:00
gibbed
c233eabeda
[GPU] Remove extraneous breaks from GetTexelSize.
2018-05-20 02:10:16 -05:00
gibbed
3f901311af
[GPU] Add SRGB helper function.
2018-05-20 02:08:49 -05:00
Dr. Chat
cb608b7f98
[Vulkan] GetBaseRTFormat
2018-05-19 17:02:17 -05:00
Dr. Chat
1e1ba34d76
[Vulkan] Unbreak the 2_10_10_10 RT formats a bit further
2018-05-19 16:55:42 -05:00
gibbed
981590bc98
[Vulkan] Don't break k_2_10_10_10.
2018-05-19 16:37:05 -05:00
gibbed
5fafdb2e7a
[Vulkan] Force k_2_10_10_10* to k_16_16_16_16_FLOAT. Probably breaks everything.
2018-05-19 15:58:26 -05:00
gibbed
b33ccdf0cd
[Vulkan] Better debug names.
2018-05-19 15:49:37 -05:00
gibbed
8064926999
[Vulkan] Implement support for color_exp_bias.
2018-05-19 15:45:13 -05:00
gibbed
9655b76f68
[Vulkan] Simplify color/depth info access in IssueCopy.
2018-05-19 14:48:00 -05:00
gibbed
77b097098d
[GPU] Add color_exp_bias to push constants.
2018-05-19 14:39:32 -05:00
gibbed
16e33cf123
[Vulkan] Fix a PrepareResolve call the last commit forgot.
2018-05-18 18:37:59 -05:00
Dr. Chat
191dc30bee
[GPU] Use the pitch field in tfetch constants
2018-05-18 13:48:28 -05:00
DrChat
f591f2dace
[Vulkan] Workaround for rapid fence reuse causing a memory leak
2018-05-18 09:59:26 -05:00
gibbed
6807ef3653
[Vulkan] Fix hashing of vertex bindings.
2018-05-14 11:42:22 -05:00
gibbed
170ab85049
[Vulkan] Reworking packed mip offset calculation. Probably breaks everything.
2018-05-14 03:47:58 -05:00
gibbed
2238ff9ff0
[Vulkan] Use BGRA swizzle for 565.
2018-05-13 16:51:20 -05:00
Dr. Chat
996ea9e273
[GPU] Ditto for GetMipLinearSize
2018-05-13 13:59:48 -05:00
Dr. Chat
1953cea64e
[GPU] Unconditionally multiply in src.depth in GetMipByteSize (always valid)
2018-05-13 13:58:34 -05:00
gibbed
0a971462d7
Fix formatting to make lint happy.
2018-05-13 09:02:40 -05:00
gibbed
1ffa4747db
[Vulkan] Better debug object names.
2018-05-13 08:42:36 -05:00
gibbed
ab0f75307a
[Vulkan] More information on uploaded textures in log.
2018-05-13 08:41:20 -05:00
gibbed
ef924a8423
[Vulkan] Cube textures, now with mipmaps.
2018-05-13 08:31:33 -05:00
gibbed
9b64e67e14
[Vulkan] Fix following mips for compressed textures.
2018-05-12 20:19:58 -05:00
gibbed
7a1167fd66
[Vulkan] Align ALL texture block sizes to tile dimensions. Probably breaks everything.
2018-05-12 19:40:54 -05:00
gibbed
1c8cec45f3
[Vulkan] Properly copy untiled texture data.
2018-05-12 19:39:35 -05:00
gibbed
c6ee689159
[Vulkan] Rework GetMipByteSize to properly handle linear textures. Probably breaks everything.
2018-05-12 02:30:58 -05:00
gibbed
9926bf1cf6
[Vulkan] Don't try to get mip 0's offset when there is only one mip.
2018-05-12 00:52:02 -05:00
Rick Gibbed
a510bc3c78
[Vulkan] Use BGRA swizzle for 1555.
2018-05-11 20:05:59 -05:00
Rick Gibbed
988877f428
[Vulkan] Use BC4 for DXT5A.
2018-05-11 15:58:27 -05:00
Dr. Chat
53f5a218c6
[Vulkan] Log GPU resolves
2018-05-08 20:59:32 -05:00
Dr. Chat
da62e0e044
[GPU] Rename TextureInfo::size_xx -> TextureInfo::size
2018-05-08 10:29:36 -05:00
Dr. Chat
212688249c
[Vulkan] Update ConvertTextureCube to use mips
2018-05-07 19:03:49 -05:00
Dr. Chat
e44fb33b79
[Vulkan] Fix (non-mipmapped) linear 2D texture uploads
2018-05-07 19:00:25 -05:00
Dr. Chat
f3134e265a
[Vulkan] Swap k_4_4_4_4 as well.
2018-05-07 17:42:51 -05:00
Dr. Chat
25c2048b1a
[Vulkan] Texture swizzling for certain texture formats
2018-05-07 16:33:17 -05:00
Dr. Chat
77d1d7342e
[GPU] Remove TextureInfo::has_packed_mips
2018-05-05 18:23:30 -05:00
Dr. Chat
30f8fe7bb0
[GPU] Use log2 when calculating mip offset
2018-05-05 10:45:39 -05:00
Dr. Chat
61e47167c0
[Vulkan] Replace vulkan-loader with volk
2018-05-04 16:49:46 -05:00
Dr. Chat
88729e2ac4
[GPU] Initial (and possibly incorrect) texture size calculation for 1D and 3D
2018-05-04 12:10:26 -05:00
Dr. Chat
040d8d1ade
[GL4] Farewell, GL4 backend
2018-05-04 11:54:33 -05:00
Dr. Chat
f54ac240a4
[Vulkan] Stupid hack to fix ABGR4 formats.
2018-05-04 09:45:42 -05:00
Dr. Chat
7a3d0b683b
[Vulkan] Fix block pitch calculation of mips
2018-05-04 00:18:45 -05:00
Dr. Chat
8ecadd49d2
[GPU] Further fix mip address calculations with really skewed aspect ratios
2018-05-04 00:18:22 -05:00
Dr. Chat
911588e9dc
[GPU] Fix mip size calculation for compressed textures
2018-05-03 18:34:23 -05:00
Dr. Chat
f45cd398ef
[Vulkan] Handle MIPs with non-power-of-two dimensions
2018-05-03 17:54:09 -05:00
Dr. Chat
04748b4a0d
[GPU] TextureInfo::GetMipLocation - calculate packed mip offset
2018-05-03 16:04:11 -05:00
Dr. Chat
5e4b696782
[SPIR-V] Reset writes_depth_
2018-05-03 14:15:53 -05:00
Dr. Chat
f885b89a03
[Vulkan] Make image views cover all mips
...
Align texture dimensions to 1 block minimum (for uploading mips)
2018-05-03 14:15:36 -05:00
Dr. Chat
c9d4cfe6d0
[GPU] MIPs > 16 pixels are stored in their own individual tiles
2018-05-03 12:01:50 -05:00
DrChat
1f157f35f4
[Vulkan] Initial support for mipmaps
2018-05-03 10:02:07 -05:00
DrChat
f7c7cc54ed
[GPU] TextureInfo::GetMaxMipLevels
2018-04-30 11:01:46 -05:00
Dr. Chat
62bee78edd
[SPIR-V] Declare DepthReplacing if we replace depth
2018-04-29 18:43:31 -05:00
Dr. Chat
87bfad1f74
[GPU] PM4_EVENT_WRITE_EXT destination is /not/ aligned (to 16 bytes)
2018-04-29 18:26:36 -05:00
DrChat
86f387ed42
[SPIR-V] Fix 1D texture fetches. Fixes #1124
2018-04-20 15:25:07 -05:00
DrChat
2b66a1b68f
[Vulkan] Emulate Xenos behavior with copy dest at a negative offset
...
It appears the Xenos starts copying pixel data at the first encountered visible destination pixel, rather than texture mapping the source texture onto the destination polygon
2018-04-17 15:35:24 -05:00
DrChat
0cff91692e
[Vulkan] Propagate errors in the render cache
2018-04-16 22:09:23 -05:00
DrChat
521b9eb5c5
[Vulkan] Fix window scale and offset calculation
2018-04-16 18:27:23 -05:00
DrChat
27c840fa91
[Vulkan] Fixup window offset calculation
2018-04-16 15:44:52 -05:00
DrChat
18d9efc93b
[Vulkan] Bump down BufferCache alignment
2018-04-16 13:02:05 -05:00
DrChat
b90465e2e5
[Vulkan] Halve the viewport dimensions when viewport scaling is disabled (10240 -> 5120)
...
The negative part of the viewport is unused, so hijack the 2 unused parameters of the window scale to use as an offset
2018-04-16 12:54:50 -05:00
DrChat
25f93a171c
[Vulkan] Support optional vertex window offset
2018-04-16 11:08:24 -05:00
DrChat
6ca771d26f
[Vulkan] Handle window scissor window_offset_disable
2018-04-14 17:51:57 -05:00
DrChat
f8319ec12f
[Base] Support sign-extension in bitfield
2018-04-14 17:34:21 -05:00
DrChat
d914791afe
[SPIR-V] Fix SetTextureLOD
2018-04-14 15:39:48 -05:00
DrChat
303539af22
[SPIR-V] Fix incorrect dst implementation (incorrect extraction indices)
2018-04-14 15:32:18 -05:00
DrChat
0f0d600a5b
Fix Travis
2018-04-13 21:45:47 -05:00
DrChat
39083acdcb
[Vulkan] Bump up maximum number of vertex buffers
2018-04-13 21:09:56 -05:00
DrChat
399e1fac2a
[Vulkan] Gracefully fail on copy if a target format is unsupported
2018-04-13 21:09:21 -05:00
DrChat
abdc0ff05a
[GPU] Document first parameter of eA (export address)
2018-04-13 21:07:14 -05:00
DrChat
6794b4975c
[SPIR-V] Use texture sample calls with constant offset
2018-04-13 21:06:45 -05:00
DrChat
e6524aa497
[GPU] Disassemble memexport exports
2018-04-08 18:02:39 -05:00
DrChat
1d4fa80eac
[GPU] Fixup ringbuffer log2_size (which specifies size in qwords)
...
Save microengine init packets
2018-04-08 15:50:36 -05:00
DrChat
9653c0bafc
[GPU] Allow dynamic building of GPU packets
2018-04-03 19:08:30 -05:00
DrChat
14abe1a407
Fixup 360 support
2018-04-03 19:02:49 -05:00
DrChat
a9d2a50082
[Vulkan] Add AMD shader statistics info support
2018-03-03 12:34:19 -06:00
DrChat
199328f971
[Vulkan] PipelineCache ClearCache support and pipelines counter
2018-03-03 11:36:12 -06:00
DrChat
43043fd4a8
[Vulkan] Track pixel center in pipeline cache (but don't apply it quite yet)
2018-03-03 10:30:59 -06:00
DrChat
c8698f912f
[Vulkan] Add pending delete textures counter
2018-03-02 23:46:58 -06:00
DrChat
9235a8107b
[Vulkan] Track active textures in the texture cache
2018-03-02 23:28:29 -06:00
DrChat
2e3115660f
[Vulkan] Scavenge Profiling
2018-03-02 21:42:49 -06:00
DrChat
d31db60a75
[SPIR-V] tfetch UseRegisterLOD support
2018-03-01 13:46:44 -06:00
DrChat
ea3ee2db2b
[SPIR-V] No implicit lod on vertex shaders
2018-03-01 13:30:21 -06:00
DrChat
b3626a039b
[Vulkan] Remove backend swap event (unused and confusing)
2018-03-01 10:19:11 -06:00
DrChat
b2f1bf914a
[Vulkan] Set proper aspect mask in depth uploads
2018-03-01 09:54:15 -06:00
DrChat
702a8732c8
[GPU] Free the command processor in the destructor rather than on shutdown
...
Fixes a race condition: TDR followed by WriteRegister will cause a crash. It's okay to continue writing to the command processor (it may be setup again later).
2018-02-28 15:19:02 -06:00
DrChat
2a52156edf
[Vulkan] Change invalidated_textures_ to an unordered set
2018-02-24 14:23:22 -06:00
DrChat
a753dbed15
[Vulkan] Update the rest of the shaders
2018-02-24 11:15:58 -06:00
DrChat
8fd9ab8387
[Vulkan] Fix input mismatch in dummy.frag
2018-02-24 11:15:27 -06:00
DrChat
24baf58ae3
[SPIR-V] Proper implementation of getGradients
2018-02-23 00:00:07 -06:00
DrChat
5a4dcd7043
[Vulkan] Shader module debug object names
2018-02-22 23:07:54 -06:00
DrChat
5b6766b210
[SPIR-V] Fix a few issues with shaders (validation)
...
Properly calculating the number of texture bindings
2018-02-22 22:06:05 -06:00
DrChat
77da785d70
[Vulkan] Use locally generated texture binding indices instead of GPU indices
2018-02-22 21:00:54 -06:00
DrChat
da4cf1bc80
[SPIR-V] 2_10_10_10 is actually 10_10_10_2
2018-02-22 18:37:24 -06:00
DrChat
ea5c98248f
[Vulkan] Remove dead vertex input code from the pipeline cache
2018-02-22 14:01:52 -06:00
DrChat
1a263f14a2
[Vulkan] Hash and track vertex descriptor sets (similar to texture cache)
2018-02-20 21:25:51 -06:00
DrChat
2a908eb86d
[SPIR-V] Handle 32-bit normalized unsigned formats
2018-02-20 16:25:37 -06:00
DrChat
b3de604f9e
[SPIR-V] Fix offsetof on Travis
2018-02-19 19:09:06 -06:00
DrChat
b5127cf924
[SPIR-V] Remove is_signed/is_integer check on float formats (they're ignored)
2018-02-19 12:53:53 -06:00
DrChat
a3cf3a7694
[SPIR-V] Don't bother setting up vertex bindings if they aren't used.
2018-02-19 12:45:17 -06:00
DrChat
be687f5f27
[SPIR-V] Size the vertex bindings input based on actual number of bindings
2018-02-19 11:28:22 -06:00
DrChat
16cf9883ca
[Vulkan] Fix a couple validation errors
2018-02-19 11:19:24 -06:00
DrChat
103ecbab7e
[SPIR-V] 32 [u]int formats
2018-02-19 11:01:45 -06:00
DrChat
ff6d306728
[SPIR-V] Handle 16/16, 16/16/16/16 (float and norm) and 32f
2018-02-19 08:11:31 -06:00
DrChat
6fb176528b
[SPIR-V] Don't group together unimplemented fetches
2018-02-19 00:23:15 -06:00
DrChat
081c142c4c
[SPIR-V] Convert 8888, 32, 2/10/10/10
2018-02-19 00:14:38 -06:00
DrChat
fe9c83c15b
[Vulkan] First working version of dynamic vfetch!
2018-02-18 23:22:02 -06:00
DrChat
4c766dcc61
[Vulkan] BufferCache: Fix a few problems
2018-02-18 20:54:29 -06:00
DrChat
f3f1a7fe42
[SPIR-V] Update glslang
...
WIP new vertex fetching
2018-02-18 20:13:38 -06:00
DrChat
4e1a55f585
[Vulkan] Bind the vertex set to DS slot 2
2018-02-18 18:50:53 -06:00
DrChat
9463732709
[Vulkan] BufferCache::PrepareVertexSet
2018-02-18 18:48:23 -06:00
DrChat
4be725c4b4
[Vulkan] Create/Free Vertex Descriptor Pool
2018-02-18 18:26:28 -06:00
DrChat
af406df793
[Vulkan] Move the constant descriptor set to its own setup/destroy functions
2018-02-18 18:11:52 -06:00
DrChat
300656f788
Merge branch 'master' into vk_vfetch
2018-02-18 17:02:59 -06:00
DrChat
79308b477f
Merge branch 'vtx_cache'
2018-02-18 16:49:32 -06:00
DrChat
71e5e967ec
[Vulkan] Disable vertex buffer cache expansion for now.
2018-02-18 16:49:15 -06:00
DrChat
05192e3c0f
[Vulkan] Prevent negative scissor offsets
2018-02-18 15:14:34 -06:00
DrChat
1a113fb82b
[Vulkan] Fix cube texture uploads
2018-02-18 14:59:34 -06:00
DrChat
ffef59aaa5
[Base] RingBuffer: Add ReadAndSwap instead of piggybacking off of Read
2018-02-18 12:18:20 -06:00
Dr. Chat
3d1c2a6c9a
[GPU] Update vizquery documentation
2018-02-16 22:03:33 -06:00
DrChat
22929182e6
[GPU] Update the docs of a few registers
2018-02-16 18:33:01 -06:00
DrChat
1dba231049
[Vulkan] Handle primitive reset index on copy
2018-02-16 18:31:43 -06:00
DrChat
776b5eff36
[Vulkan] BufferCache: Add VertexBuffer struct
2018-02-16 16:51:32 -06:00
DrChat
db53559611
Merge branch 'master'
2018-02-16 16:34:17 -06:00
DrChat
30e0a258e4
[Vulkan] Buffers typically aren't aligned.
2018-02-15 17:05:54 -06:00
DrChat
310606d0f6
Merge branch 'master' into vk_vfetch
2018-02-14 20:31:31 -06:00
DrChat
c9a5553fe9
[Vulkan] Upload entire vertex allocation into the transient cache (for now)
2018-02-11 20:43:32 -06:00
DrChat
d015de4a84
[Vulkan] Smarter transient cache
...
Detect cases where requested vertex data has already been uploaded in a larger buffer
2018-02-10 21:08:17 -06:00
DrChat
5a637d6899
[Vulkan] Add VMA to Buffer Cache
2018-02-09 20:58:17 -06:00
DrChat
c7ffec3260
[GPU] Add unknown registers E00/E40 to register file
2018-02-09 20:57:51 -06:00
DrChat
3ad45f4186
[Vulkan] New docs for buffer cache
2018-02-09 20:57:26 -06:00
DrChat
455dfeb39f
[Vulkan] Use a static function for texture invalidation callbacks
2018-02-09 16:58:56 -06:00
DrChat
b38b9e43ea
[Vulkan] Don't bother re-hashing previously covered bindings
2018-02-07 18:40:41 -06:00
DrChat
7ea3381699
[Vulkan] texture_bindings_ -> texture_sets_
2018-02-07 18:40:12 -06:00
DrChat
3e157972cc
[Vulkan] Add a few size checks on vertex bindings (max across all cards is 32)
2018-01-03 16:40:31 -06:00
DrChat
10f74fc45a
Merge branch 'master' into vk_vfetch
...
# Conflicts:
# src/xenia/gpu/spirv_shader_translator.cc
2018-01-01 18:30:29 -06:00
Dr. Chat
d512d4127f
[SPIR-V] Fix the build.
2018-01-01 15:00:37 -06:00
DrChat
26f3100c23
[SPIR-V] Don't normalize denormalized 10/11/11 formats if not requested
2017-12-28 16:20:35 -06:00
DrChat
e5fd81b22f
[SPIR-V] Don't normalize denormalized 10/11/11 formats if not requested
2017-12-24 13:54:44 -06:00
DrChat
8784daf6bc
[Vulkan] Don't allocate textures if we don't know the format.
...
DTX5A = ATI1
2017-12-23 21:02:33 -06:00
DrChat
28ebb4bf43
[Vulkan] Offset the destination rect and viewport by the window offset
2017-12-23 12:53:00 -06:00
DrChat
26100c586f
[Vulkan] Track render target state with the pipeline cache
2017-12-22 23:33:27 -06:00
DrChat
516c113423
[SPIR-V] Fix tfetches with an offset
2017-12-22 23:15:18 -06:00
DrChat
20099e51af
Formatting
2017-12-22 22:24:51 -06:00
DrChat
366e8b1b6a
[SPIR-V] Fix invalid 1D texture offsets
2017-12-22 22:24:19 -06:00
DrChat
fb89973266
[SPIR-V] Add support for loops
2017-12-22 22:23:28 -06:00
DrChat
80b0b66e5d
[Vulkan] Regenerate shaders with newer glslang
2017-12-21 23:14:42 -06:00
DrChat
4cfe1e3203
[Vulkan] Support window scissor in IssueCopy
2017-12-21 22:38:35 -06:00
DrChat
2e1d33b8d3
[Vulkan] Correct some more pipeline barriers
2017-12-21 17:03:02 -06:00
DrChat
f26bd04a6c
[Vulkan] Fix typo causing depth image views to be overwritten by a stencil view
2017-12-21 16:51:55 -06:00
DrChat
554d333299
[Vulkan] Request depth/stencil attachment usage for textures that support it
2017-12-21 15:13:54 -06:00
DrChat
ab7dce53ec
[Vulkan] Fix another incorrect pipeline stage barrier
2017-12-21 15:13:01 -06:00
DrChat
697eccf23e
[SPIR-V] Fix incorrect FOrdEqual result type
2017-12-21 15:12:02 -06:00
DrChat
cbfaffd9f3
[Vulkan] Correct a bunch of incorrect pipeline barrier stages
2017-12-21 13:11:34 -06:00
DrChat
8bf10a941a
[GPU] TraceViewer *.xenia_gpu_trace -> *.xtr
2017-12-21 11:05:50 -06:00
DrChat
ecfaaa6c95
[GPU] Log attempts to fetch unsupported texture formats
2017-12-20 21:26:52 -06:00
DrChat
9395b73217
[Travis] Enable full Xenia build on linux
2017-12-20 16:27:01 -06:00
DrChat
886a223cf2
[GPU] Remove a few unused variables from TraceDump
2017-12-20 14:38:02 -06:00
DrChat
db34128b95
Fix linux build of the vulkan trace dumper
2017-12-19 18:29:00 -06:00
DrChat
d3b03b9a93
[Vulkan] Update VMA
2017-12-19 18:19:03 -06:00
DrChat
4d159efef5
[GPU] Run TraceDump headless, and drop the GL4 trace dumper
2017-12-19 16:37:59 -06:00
DrChat
09b3a07e3c
Support rendering windowless (tested on the Vulkan backend)
2017-12-19 16:05:36 -06:00
DrChat
11f8da9092
[GPU] Whoops, accidentally flipped is_integer around.
2017-12-18 18:11:24 -06:00
DrChat
55d2c03943
[GPU] Rename a few misnamed vfetch fields
2017-12-18 17:24:52 -06:00
DrChat
29c5fb8022
[GPU] Short circuit command processor waits if an exit is requested.
2017-12-18 17:23:14 -06:00
DrChat
d98344f99b
[Vulkan] Log down strings when an invalid usage flag is specified.
2017-12-18 15:47:52 -06:00
DrChat
b5d647d540
[Vulkan] Better handling of device lost events (present fatal error dialog)
2017-12-18 14:27:00 -06:00
DrChat
6e0550d46b
[GPU] Strip the extension from .xtr files when choosing the output path.
2017-12-17 15:17:44 -06:00
DrChat
d4338a2c3f
[GPU] Use overall shorter names for xenia GPU traces
2017-12-17 15:00:10 -06:00
DrChat
c7859da997
[GPU] Fix TraceDump progress not showing
2017-12-17 13:44:39 -06:00
DrChat
f4a0dbac75
[GPU] Don't bother redrawing the trace dump window
2017-12-17 13:12:42 -06:00
DrChat
6b4e8ee19e
[SPIR-V] New flag: spv_disasm - Generate disassembly for spir-v shaders (disabled by default)
2017-12-17 13:12:10 -06:00
DrChat
5da59a95c9
Merge branch 'linux'
2017-12-16 17:15:49 -06:00
DrChat
49287579ff
[Vulkan] Robustify error handling during initialization
2017-12-16 15:14:48 -06:00
DrChat
bf9fa02b18
[GPU] Accept input and output path as command line parameters
2017-12-15 23:48:23 -06:00
DrChat
66d19a462b
[GPU] Make TraceDump error handling more robust
...
Exit with code -1 if GraphicsSystem::Capture failed
2017-12-15 22:31:10 -06:00
DrChat
8cabc114e9
[GPU] Properly track the packets leading up to a swap command
2017-12-15 22:01:50 -06:00
DrChat
829f346dc2
Axe a few unused functions from TraceDump
2017-12-15 20:33:12 -06:00
DrChat
aaf281351d
Format all code with new clang-format
2017-12-14 20:44:43 -06:00
DrChat
02e37be4e5
Merge branch 'linux' of git://github.com/dougvj/xenia into linux
...
# Conflicts:
# .travis.yml
2017-12-14 19:20:02 -06:00
DrChat
a7b6d91a2b
[SPIR-V] (untested) Implementation of getGradients
2017-10-01 18:59:54 -05:00
scribam
b6e7e66fbe
Fix travis LINT
2017-09-20 23:29:39 +02:00
DrChat
e674c9df26
Vulkan: Emit a warning when attempting to use a texture in an unsupported way
2017-09-07 14:37:05 -05:00
DrChat
f9d08888c7
Vulkan: ClearCache for texture cache, properly free all textures and allocator on exit.
2017-09-07 14:22:04 -05:00
DrChat
1358b94f4d
Fix lint errors :)
2017-09-03 20:02:45 -05:00
DrChat
121a2d655a
Vulkan: Properly support depth writes (or blit depth images if able)
2017-09-01 18:32:55 -05:00
DrChat
4e4a1a03c1
Vulkan: Add a memory allocator and hook it up to the texture cache.
2017-08-20 20:48:36 -05:00
DrChat
7e819a4ccb
Vulkan: Refactor CTX1 conversion
2017-08-20 18:37:02 -05:00
DrChat
1eac03a11c
GPU: The base format of *_EXPAND textures is *_FLOAT
2017-08-19 21:10:53 -05:00
DrChat
e758e87587
Trace Viewer: Display texture info even if the demand failed
...
Display format name as well
2017-08-19 20:56:13 -05:00
DrChat
57ffee0d8c
GPU: Add name strings for all texture formats
2017-08-19 20:55:29 -05:00
DrChat
96ba5d5563
Vulkan: Set the depth/stencil attachment flag bit for depth/stencil textures.
2017-08-19 18:34:32 -05:00
Dr. Chat
2f200f4a75
Vulkan: Reformat the texture config table to look nicer
2017-08-14 00:32:40 -05:00
Dr. Chat
657d571c0d
Vulkan: Update a couple of comments on texture formats
2017-08-13 21:32:57 -05:00
DrChat
3d0cbe50b9
Vulkan: Use GetBaseFormat in TextureFormatIsSimilar
2017-08-13 19:08:38 -05:00
Dr. Chat
22575af212
Fix AMD crashes from last commit
2017-08-10 23:24:32 -05:00
DrChat
4809f3eb51
Vulkan: Create a util WritebackTexture function (unused atm)
2017-08-10 15:01:12 -05:00
DrChat
09c29bbdc5
Vulkan: Search by a texture's base format when fetching.
2017-08-09 22:27:41 -05:00
DrChat
63576aec35
Vulkan: Add debug code to flag empty texture uploads in the log
2017-08-09 22:26:56 -05:00
AllanCat
79b9efb777
GL4: Fix HostTextureInfo setup.
2017-08-09 10:07:15 -05:00
gibbed
f8edc761fc
Vulkan: Do near-exact lookups for the frontbuffer texture (may break everything).
2017-08-09 02:28:47 -05:00
gibbed
4c77616ef9
Vulkan: Suppress some warnings from validation layer.
2017-08-09 01:15:33 -05:00
DrChat
bea607b454
Vulkan: Apply a half-pixel offset where necessary.
2017-08-09 00:48:53 -05:00
gibbed
082c767fba
Add the currently active graphics system to the window title.
2017-08-09 00:40:44 -05:00
DrChat
8b5eb1cd38
Vulkan: Remove redundant format argument from DemandResolveTexture
2017-08-09 00:10:52 -05:00
gibbed
b14dc3351c
GPU: Make 1D textures into 2D ones.
2017-08-08 17:58:11 -05:00
gibbed
1570dcd24c
Vulkan: 32_32_32_32 had wrong unsigned format.
2017-08-08 16:51:19 -05:00
gibbed
90b8f983d0
- Vulkan: DXT1_AS_16_16_16_16 should probably map to VK_FORMAT_BC1_RGBA_UNORM_BLOCK.
...
- Vulkan: Added comments regarding CTX1 format.
2017-08-08 16:47:16 -05:00
gibbed
42533d39eb
Vulkan: Assume all 1D texture sampling is actually sampling a 2D texture.
2017-08-08 16:35:19 -05:00
gibbed
355d9f6c62
Take three?
2017-08-08 02:10:22 -05:00
gibbed
3aa5a70827
Take two?
2017-08-08 01:49:53 -05:00
gibbed
19627a6cb2
GPU: Cast various flags to bool in IssueCopy. Fixes #773 .
2017-08-08 01:46:21 -05:00
gibbed
4a95862023
GPU: Ensure texture resolves are at least 1x1.
2017-08-08 01:39:42 -05:00
gibbed
d2d8d65629
GPU: First pass of CTX1 to R8G8_UINT conversion implementation for Vulkan.
2017-08-08 00:26:40 -05:00
DrChat
ee18d548c9
Vulkan: Do not bind a NULL pipeline even if a full update is requested.
2017-08-08 00:11:08 -05:00
DrChat
0720bbe19f
Vulkan: Fix race crash in trace viewer
2017-08-07 23:35:17 -05:00
DrChat
cce5182725
Vulkan: Fix swap on resolve (off by one!)
...
Clean up part of IssueCopy
2017-08-07 23:34:50 -05:00
DrChat
35e4431c33
Vulkan: Get rid of the empty descriptor set
2017-08-07 21:46:35 -05:00
DrChat
8bfe22bbd7
GPU Shader Translator: Add cases for memexport registers
2017-08-07 21:40:24 -05:00
DrChat
cfc65a0197
GPU: Rewrite/rephrase some confusing shader translator code
2017-08-07 21:08:01 -05:00
gibbed
6d9a56a269
GPU: Fixed texel pitch calculation for linear textures.
2017-08-07 20:50:42 -05:00
gibbed
febe46973f
GPU: Don't use host write bit for texture uploads.
2017-08-07 19:47:17 -05:00
gibbed
b4ae5b9a01
- GPU: Removal of deprecated TextureInfo fields.
...
- GPU: Replicated removed deprecated fields into local struct for GL.
- GPU: Improved texture copies for Vulkan, no more pitch changes.
- GPU: Stubbed code for CTX1 conversion in Vulkan.
2017-08-07 19:30:06 -05:00
gibbed
906f24cb1a
GPU: Make the format info table 64 statically elements again.
2017-08-07 19:13:02 -05:00
DrChat
2ba0ebb4cb
GPU: Add back k_1_REVERSE
2017-08-06 16:55:02 -05:00
gibbed
bd58191239
Moved format info table to its own file to maintain formatting.
2017-08-06 14:13:19 -05:00
gibbed
5ce29dbe1c
Format info table was off by one this whole time. Who knew?
2017-08-06 13:58:37 -05:00
gibbed
791f81c484
Prettify format info table.
2017-08-06 13:57:13 -05:00
DrChat
eb022939d1
Vulkan: Initialize a texture's framebuffer to nullptr
2017-08-06 12:47:34 -05:00
AllanCat
7ad6fc92f6
Fixed white edge on some textures(text display).
2017-07-19 23:18:49 +08:00
AllanCat
c47d12875c
Fixed Vulkan's dark color issue.
2017-07-19 15:06:29 +08:00
Doug Johnson
b65c7e6297
vulkan: render_cache: More clang compilation fixes
2017-07-11 11:47:24 -06:00
sephiroth99
7ede34b593
vulkan: render_cache: fix clang compilation
2017-07-11 11:47:24 -06:00
Doug Johnson
bb0ee0e4a3
Change glsl lang call that supports scalar rather than vector
2017-07-11 11:47:24 -06:00
Doug Johnson
be3615b15b
Add missing include <vector>
2017-07-11 11:47:24 -06:00
Doug Johnson
48a2435bde
Add header dependencies that prevented linux build
...
There were several files with dependancies on vector and cmath that
caused compiler errors under linux. In addition, there was a printf
formatting error that threw a compiler error as well
2017-07-11 11:47:24 -06:00
Dr. Chat
283b7bc1b4
GPU: Change ReadRegister/WriteRegister constants to be consistent with other numberings.
2017-07-04 20:47:22 -05:00
Thomas Mccaffery
fb51148b03
Added GPU Register Definition
...
Added 0x1924 = 0x6490 according to this referenced here https://www.x.org/docs/AMD/old/RRG-216M56-03oOEM.pdf as DC_LUT_PWL_DATA.
2017-06-12 02:48:51 -04:00
Dr. Chat
9dc740dcc0
GraphicsSystem: Properly support register file reads/writes, and fill in some unknown registers
2017-06-11 13:00:31 -05:00
Dr. Chat
6ab4bac542
Xenos: Fill in some of the unknown primitive types.
2017-06-10 20:09:03 -05:00
Parker Lamb
8ae737aaa5
Added GPU register definitions.
2017-06-06 21:45:41 -05:00