Triang3l
e39bb04875
[D3D12] ROV: Fix min/max blending operation
2018-10-29 10:24:49 +03:00
Triang3l
c7befee395
Merge branch 'master' into d3d12
2018-10-28 20:31:49 +03:00
Dr. Chat
c95ba803a8
Merge branch 'xexp'
2018-10-28 12:20:02 -05:00
Dr. Chat
7443b7e61f
[CPU] Rename ImportLibrary fields to follow naming conventions
2018-10-28 09:41:31 -05:00
Triang3l
83c99bc811
[D3D12] Fix resolve region handling
2018-10-28 14:36:41 +03:00
Triang3l
4162716a54
Merge branch 'master' into d3d12
2018-10-26 22:04:59 +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
Rick Gibbed
6a39d4b1f5
Merge pull request #1240 from 0x8080/Exports
...
[Kernel] Define all exports for xboxkrnl/xam/xbdm
2018-10-23 18:30:04 -05:00
0x7FFFFFFF
96bb9b04da
[Kernel] Define all exports for xboxkrnl/xam/xbdm
2018-10-23 17:26:47 -06:00
gibbed
a33b13c174
[Kernel] Stub XamShowNuiTroubleshooterUI.
2018-10-23 17:48:10 -05:00
gibbed
3a64cf64e0
[Kernel] Stub HidReadKeys.
2018-10-23 16:43:31 -05:00
Triang3l
119342dbac
Merge branch 'master' into d3d12
2018-10-23 23:35:06 +03:00
Triang3l
76c14f7e58
[APU] Load XAudio2_8.dll dynamically
2018-10-23 23:34:41 +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
404535cdd8
Merge branch 'master' into d3d12
2018-10-23 10:54:58 +03:00
Triang3l
00adfcadf9
[UI] Fix build error in file_picker_win.cc using decltype
2018-10-23 10:54:16 +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
emoose
bf039172cf
[Kernel] Add null pointer checks to xmp_app handlers
2018-10-22 18:01:09 +01:00
emoose
67f0e487f4
[Kernel] Fix _snwprintf not having format_core wide = true
2018-10-22 18:00:01 +01:00
Triang3l
729406dee2
[D3D12] ROV: Blend in linear color space
2018-10-22 15:54:41 +03:00
emoose
6e74ba93d6
[CPU] Add support for delta patches using *_offset fields
2018-10-22 12:26:14 +01: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
emoose
d2fd109af3
[CPU] Add more asserts for XEXP descriptor (+ log a warning)
2018-10-20 05:08:14 +01:00
emoose
265903fe66
[CPU] Add XEXP support to XexModule, if XEXP is in same folder as XEX
...
This was a headache to work out, big thanks to the lack of documentation on .xexp files... a ton of guesswork was involved here but luckily it turned out well.
I did have to make some pretty major changes to the way XEX files are loaded though.
Previously it'd just load everything in one go: XEX headers -> decrypt/decompress data -> load imports/symbols -> set loader data table entries, etc...
Now it's changed to something like this:
- Load base XEX headers + decrypted/decompressed image data, return X_STATUS_PENDING
- In the LoadFromFile call used to load the XEX, search for XEXP patch file (only .xexp in same folder atm)
- If patch exists: load XEXP, decrypt headers/data, apply patch to base XEX, dispose of XEXP
- Finish XEX load via LoadXexContinue() (handles imports/symbols/loader data...)
This saves us from needing to reset the imports/function/symbol stuff after patching (since all the XEX code will be a lot different), but I'm not really sure if I went about it the best way.
2018-10-20 04:36:21 +01:00
emoose
0b7f7e1657
[CPU] Move XEX2 code into XexModule class, autodetect XEX key
...
Code is mainly just copy/pasted from kernel/util/xex2.cc, I've tried fixing it up to work better in a class, but there's probably some things I missed.
Also includes some minor improvements to the XEX loader, like being able to try both XEX keys (retail/devkit) automatically, and some fixes to how the base address is determined.
(Previously there was code that would get base address from optional header, code that'd get it from xex_security_info, code that'd use a stored base address value...
Now everything reads it from a single stored value instead, which is set either from the xex_security_info, or if it exists from the optional header instead.
Maybe this can help improve compatibility with any weird XEX's that don't have a base address optional header?)
Compressed XEX loader also has some extra checks to make sure the compressed data hash matches what's expected.
Might increase loading times by a fraction, but could save reports from people unknowingly using corrupt XEXs.
(still no checks for non-compressed data though, maybe need to compare data with xex_security_info->ImageHash?)
2018-10-20 04:18:18 +01: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
Christian Hawley
add23849bf
[CPU] Implement lmw and stmw instructions
2018-10-14 13:57:45 -04: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
Dr. Chat
37e59464c2
[UI] Undo warning fix in file_picker_win.cc
2018-09-10 20:38:58 -05: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
Justin Moore
413a04eb1b
Merge pull request #1211 from Triang3l/patch-1
...
[GPU] Add texture signedness enumeration
2018-09-06 19:26:06 -05: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
110d4724f9
Merge branch 'master' into d3d12
2018-08-25 23:26:32 +03:00
Triang3l
dba8ab4eed
[D3D12] Refactor descriptors and resolve logging
2018-08-25 22:42:18 +03:00
gibbed
de43afbb54
Fix warnings when building on newer Windows 10 SDK versions.
2018-08-25 14:23:20 -05: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
b0dd9b6fd0
[D3D12] Shutdown immediate textures in the destructor
2018-08-18 15:25:30 +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
bf0f20df9b
[D3D12] Immediate drawer
2018-08-17 16:55:31 +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
a627ef3d66
[D3D12] Immediate drawer pixel shader and root signature
2018-08-01 18:15:17 +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
8002de774a
[D3D12] Descriptor heap pool
2018-07-29 15:29:48 +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
49e9ebce50
[D3D12] Don't require typed UAV loads
2018-07-24 16:08:30 +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
7afc40820b
[D3D12] Require tiled resources for virtual memory
2018-07-21 21:52:20 +03:00
Triang3l
00d5bd48da
[D3D12] A bit of HLSL shader translator
2018-07-21 21:45:33 +03:00
Triang3l
5629a8248e
[D3D12] Use a single command list for all composition
2018-07-20 17:18:57 +03:00
Triang3l
cd1cf3a857
[D3D12] Make something buildable
2018-07-20 15:18:02 +03:00
Triang3l
0ded51f894
[D3D12] Context Begin/EndSwap
2018-07-19 18:28:07 +03:00
Triang3l
14bfac3ebd
[D3D12] Rename D3D12Provider getters
2018-07-19 14:52:54 +03:00
Triang3l
f5e91ba97c
[D3D12] Command list, fence cleanup
2018-07-19 14:51:07 +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
03682e81d1
[D3D12] ID3D12Device creation
2018-07-18 20:30:49 +03:00
Triang3l
e9083dbc2f
[D3D12] Create xenia-ui-d3d12 project
2018-07-18 15:02:37 +03:00
Triang3l
03da2929aa
[D3D12] Add HLSL building to xenia-build
2018-07-18 13:16:12 +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
Rick Gibbed
724086dcad
Merge pull request #1189 from Triang3l/vpk_vupk_constants.
...
[CPU] Unify constant operand checks in pack/unpack
2018-07-01 01:23:11 -05:00
Rick Gibbed
f24dbaa21b
Merge pull request #1176 from Triang3l/xex_exe_extension.
...
[Core] Treat .exe files as XEX
2018-07-01 01:14:04 -05:00
Dr. Chat
f89b4626a3
[VFS] Add VFS dump tool (supporting STFS only as of now)
2018-06-26 13:45:16 -05:00
Triang3l
dd19701dc4
[CPU] Unify constant operand checks in pack/unpack
2018-06-18 13:55:46 +03:00
Triang3l
c6255af824
[GPU] Depth bias support
2018-06-16 16:32:14 +03:00
Unknown
86443dd28a
Persist title-specific profile content
2018-06-13 19:37:15 -07:00
Triang3l
c89cc6a229
[CPU] vupkd3d: NaN on negative overflow and tests
2018-06-11 21:34:13 +03:00
Triang3l
0378f532ab
[CPU] Fix W in 2101010 vupkd3d and revert untested saturation
2018-06-11 17:22:15 +03:00
Triang3l
bd02fd31bd
[Core] Treat .exe files as XEX
2018-06-09 10:24:11 +03:00
gibbed
5f16e46282
[Core] Do a case-insensitive compare for extension when launching a path. Fixes #1175 .
2018-06-09 01:22:45 -05:00
gibbed
c11cce2d3b
Oops. Fix premake for xenia-ui-window-vulkan-demo.
2018-06-08 10:09:12 -05:00
gibbed
fb9eb84893
Fix premake for xenia-hid-demo and xenia-ui-window-vulkan-demo.
2018-06-08 09:52:35 -05:00
gibbed
40e8d78d16
[Kernel] Allow specifying of additional command-line passed to guest.
2018-06-06 19:56:03 -05:00
gibbed
43b987da1e
[HID] Make winkey key checks more readable.
2018-06-05 08:15:59 -05:00
gibbed
8d5d6c5a59
[HID] Allow shift in winkey input to toggle d-pad in addition to capslock.
2018-06-05 08:13:51 -05:00
gibbed
1409b9c565
[GPU/Vulkan] Add support for 2D image stacks.
2018-06-05 07:51:51 -05:00
gibbed
4caa2a2145
[Vulkan] Blacklist some validation layer errors we don't care about.
2018-06-04 23:37:58 -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
9ac2bf0beb
[Kernel] Fix fetch field name that was changed.
2018-05-31 20:17:03 -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
cd39bbed5c
[Base] Undo last commit because it breaks file redirection.
...
This reverts commit ceece673e8
.
2018-05-31 17:22:50 -05:00
gibbed
ceece673e8
[Base] Fix AttachConsole so that --help works when invoked from command-line.
2018-05-31 16:46:03 -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
Triang3l
06fcdef968
[CPU] Bring back saturation in D3DCOLOR vpkd3d128
2018-05-31 16:17:27 +03:00
gibbed
958aa04cc5
[Vulkan] Fix swizzle for DXT5A.
2018-05-31 07:31:33 -05:00
Triang3l
d61aff4389
[CPU] v(u)pkd3d128: Support UINT_2101010 and don't saturate D3DCOLOR
...
Fix broken mesh polygons in the Call of Duty series. Also remove saturation of D3DCOLOR when packing because values near 3 may be accepted, while unpacking D3DCOLOR gives values near 1.
2018-05-31 14:42:11 +03: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
Dr. Chat
ef18e9d649
[VFS] Fix Stfs GetBlockHash (and simplify it)
2018-05-29 23:12:27 -05:00
DrChat
f518ec1b37
[GPU] Add coherency debug logs
2018-05-29 19:42:59 -05:00
Dr. Chat
a0464f54ba
[VFS] SVOD (with EGDF) support
2018-05-29 14:12:09 -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
e665c0a3fb
Fix another Travis complaint.
2018-05-28 14:42:53 -05:00
gibbed
f450ae6a76
Fix lint errors due to Travis lint differences.
2018-05-28 07:14:18 -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
73c7546114
[Kernel] Fix return of XamUserGetXUID and XamUserGetSigninInfo.
2018-05-27 19:51:25 -05:00
gibbed
da06cb4f06
[Kernel] Fix return of XamUserGetDeviceContext.
2018-05-27 19:43:44 -05:00
gibbed
dc5bd83098
[Kernel] Move xam_user to new shim convention.
2018-05-27 19:43:39 -05:00
gibbed
fc0cc89a1d
[Kernel] Add X_HRESULT_result. (yes, the name is stupid)
2018-05-27 18:12:48 -05:00
gibbed
ee7b9f415a
[Kernel] Move xam_input to new shim convention.
2018-05-27 16:59:07 -05:00
gibbed
4cc2aaf5b9
Remove unnecessary usage of xe::be.
2018-05-27 16:35:01 -05:00
Dr. Chat
fed3c10c60
[VFS] Properly detect STFS volume descriptor type
2018-05-27 14:03:29 -05:00
Dr. Chat
3e216f0553
[VFS] Panic when fed a GoD container
2018-05-26 21:19:34 -05:00
Dr. Chat
728ed593ad
[VFS] Make ResolvePath / Dump virtual
2018-05-26 18:51:03 -05:00
gibbed
9231317eeb
[Vulkan] Generalize texture conversion, and fix cube textures in the process.
2018-05-26 11:19:52 -05:00
Dr. Chat
1def8cfc59
[VFS] Rename a couple STFSVolumeDescriptor fields
2018-05-26 09:06:10 -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
926464cb90
[App] Put DEBUG/CHECKED into the window title when appropriate.
2018-05-26 06:29:08 -05:00
gibbed
73d75c56e1
[GPU] Fix TextureInfo::Prepare for 3D textures.
2018-05-24 23:45:38 -05:00
gibbed
56dd07e329
[Kernel] Add yield to XAudioGetVoiceCategoryVolumeChangeMask for games that spin threads with it.
2018-05-24 23:31:21 -05:00
gibbed
8e9d50dd4a
[Kernel] Fix XamUserGetSigninInfo to zero out info even in failure.
2018-05-24 12:41:13 -05:00
gibbed
14c73a33f9
[Kernel] Fix return of CreateContent/OpenContent in ContentManager when an already open package was found.
2018-05-24 11:17:56 -05:00
gibbed
85ad87eb73
[Kernel] Fix ContentPackage leaking its registered device.
2018-05-24 11:17:52 -05:00
gibbed
6411674f0f
[GPU] Use pitch for block width calculation.
2018-05-24 08:45:12 -05:00
gibbed
bc7306b352
[Kernel] Fix XamLoaderGetLaunchDataSize to set size to 0 for games that don't check its return value.
2018-05-24 03:26:29 -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
d0561d046b
[Kernel] Handle title being null in XamShowMessageBoxUI.
2018-05-23 13:30:59 -05:00
gibbed
2ef3ea996f
[Kernel] Experimental debug monitor/PIX code.
2018-05-23 05:10:39 -05:00
gibbed
09585eb103
[GPU] Clarify assert in SpirvShaderTranslator::StoreToResult.
2018-05-23 04:55:32 -05:00
gibbed
9e153c0db1
[App] Add optional scratch/cache mounts.
2018-05-23 04:55:18 -05:00
gibbed
712a2afdf4
[Kernel] Correct GammaType enum.
2018-05-23 04:25:19 -05:00
gibbed
bc369e43cb
[Kernel] Add support for XFileEndOfFileInformation.
2018-05-23 04:24:37 -05:00
DrChat
6262dd2c3d
[App] Actually set a high-performance timer
2018-05-22 22:20:34 -05:00
DrChat
288af1c7e9
[App] Add a flag to toggle high-performance timers
2018-05-22 17:31:30 -05:00
DrChat
73c30d87a8
[App] Request high-performance timer resolution on Windows
2018-05-22 16:41:05 -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
f8961df221
Fix Travis complaints, as usual.
2018-05-22 06:23:37 -05:00
gibbed
53cf0c5be0
[Kernel] Notes for VdGetCurrentDisplayGamma and VdSetDisplayMode.
2018-05-22 06:01:29 -05:00
gibbed
6e9994ee41
[Kernel] Log handle addditions/removals.
2018-05-22 05:57:32 -05:00
gibbed
452c58149a
[CPU] Some extra srw tests.
2018-05-22 05:56:20 -05:00
gibbed
200b9ddf7d
[Vulkan] Add debug names for blitter.
2018-05-22 05:55:27 -05:00
gibbed
6d3146a750
[Vulkan] Add debug marker functions.
2018-05-22 05:54:42 -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
9f86868a95
[Kernel] Deny non-zero users for some XAM exports.
2018-05-20 19:15:16 -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