Commit Graph

148 Commits

Author SHA1 Message Date
Henrik Rydgard
7b3f84aae8 More buildfixes for Windows on ARM 2017-03-05 10:52:08 +01:00
Henrik Rydgard
9d116505cf D3D11: Add a large amounts of asserts 2017-03-05 10:34:44 +01:00
Henrik Rydgard
480a05d845 D3D11: Specify DepthClipEnable = TRUE when creating rasterizer states, required on D3D11_level_9. Fixes the Pursuit Force glitch in #9361 2017-03-05 10:34:28 +01:00
xebra
7364dbea3b [spline/bezier]Implement hardware tessellation on D3D11. 2017-03-04 22:53:40 +09:00
Henrik Rydgard
26a2d42731 Big mutex overhaul - remove our custom ones, make them non-recursive where possible 2017-02-28 11:40:29 +01:00
Henrik Rydgård
d84f579928 Merge pull request #9356 from xebra/hw_tess_vulkan
Hardware Tessellation on Vulkan
2017-02-26 09:12:11 +01:00
Henrik Rydgard
5ba53addb5 D3D11: Fix problems with scaling 16-bit textures, fixes issue with #9345, thanks @ufdada 2017-02-26 00:05:08 +01:00
xebra
7b72f87308 [spline/bezier]Add support for unsupported device about HW tess. 2017-02-25 19:28:13 +09:00
Henrik Rydgard
c219ae9e63 Further UWP fixes 2017-02-25 09:57:24 +01:00
Henrik Rydgard
f5fa238e22 More minor changes to make GPU and native build on UWP later 2017-02-24 20:26:38 +01:00
Henrik Rydgard
89ac1a5c4a Minor D3D11 scissor fix 2017-02-24 12:33:27 +01:00
Henrik Rydgard
8eb668ea59 D3D11: Enable pixel depth rounding. GL: Fix a crash bug 2017-02-23 20:40:53 +01:00
Henrik Rydgård
c355947bca Merge pull request #9350 from hrydgard/d3d11-postproc
D3D11 postprocessing shaders
2017-02-23 20:39:28 +01:00
Henrik Rydgard
79bd01efb8 D3D11: Add support for viewing the depth and stencil buffers in the GE debugger 2017-02-23 16:27:26 +01:00
Henrik Rydgard
ccef648d3d Complete implementation of post shaders for D3D11. All work except 5x scale one which looks wrong. 2017-02-23 14:51:05 +01:00
Henrik Rydgard
731026c199 D3D11: Can now switch post shader at runtime, and won't crash if they fail to translate correctly. 2017-02-23 12:42:28 +01:00
Henrik Rydgard
f1e015f577 Basic postshader translation to D3D11 works. On-the-fly switching seems broken though. 2017-02-23 12:42:28 +01:00
Henrik Rydgard
e7612c13da Initial work on post-shader translation for D3D11 2017-02-23 12:42:24 +01:00
Henrik Rydgard
0954ecf28c D3D11: Expand 16-bit texture formats to 32-bit if they are not supported, like on Windows 7. Part of issue #9317 2017-02-22 17:31:01 +01:00
Henrik Rydgard
f24b1495ba Assorted texture format cleanup, prep for supporting D3D11 on Win7 2017-02-22 16:23:04 +01:00
Henrik Rydgard
f772066c54 Remove some unnecessary error handling paths 2017-02-21 11:29:51 +01:00
Henrik Rydgard
78abf7453c Add some comments and a sanity check, fix a minor leak 2017-02-21 10:58:21 +01:00
Henrik Rydgard
4c6ca76681 D3D11: Fix texture loading crash on 32-bit platforms 2017-02-20 10:15:41 +01:00
Henrik Rydgard
4c897ff853 Forgot to delete CheckFullHash duplicates 2017-02-20 00:21:54 +01:00
Henrik Rydgard
4652c6af28 Some member variable renaming to match the convention 2017-02-20 00:19:58 +01:00
Henrik Rydgard
f753573332 Unify HandleTextureChange 2017-02-20 00:13:21 +01:00
Henrik Rydgard
f15e25c4b5 Centralize SetTexture 2017-02-20 00:05:23 +01:00
Henrik Rydgard
e24e652b0d Prepare to unify SetTexture 2017-02-19 23:50:04 +01:00
Henrik Rydgard
aae2030a14 Unify Decimate() 2017-02-19 23:39:35 +01:00
Henrik Rydgard
d9c20fbaff Unify ApplyTexture 2017-02-19 23:25:09 +01:00
Henrik Rydgard
7890b61cc5 More work towards unifying ApplyTexture 2017-02-19 23:19:55 +01:00
Henrik Rydgard
f839f1944e Work towards unifying ApplyTexture 2017-02-19 23:07:00 +01:00
Henrik Rydgard
665ffe34ab Centralize DeleteTexture 2017-02-19 22:50:04 +01:00
Henrik Rydgard
dbafc6ef95 Centralize Texcache::Clear 2017-02-19 22:31:07 +01:00
Henrik Rydgard
4364569cf4 Move TexCacheEntry outside the TextureCacheCommon class. Nested structs are annoying. 2017-02-19 18:53:30 +01:00
Henrik Rydgard
387ad7e4d6 OpenGL DrawContext texture handling cleanup, fixing some bugs. 2017-02-19 12:25:37 +01:00
Henrik Rydgard
d7238c39e9 Disable logic ops, the D3D11 debug layer says they don't work anyway.. 2017-02-18 12:17:51 +01:00
Henrik Rydgard
f868a0c4a1 D3D11: Fix crash with texture scaling enabled 2017-02-18 12:00:15 +01:00
Henrik Rydgard
bd6314325f Crashfix 2017-02-18 03:00:22 +01:00
Henrik Rydgard
b0cdcfca3c D3D11: Proper fix for DXT5 crash. May also help #9134. 2017-02-18 02:41:17 +01:00
Henrik Rydgard
badd3669ca Workaround for crash decoding DXT5 textures. This may be a clue to #9134 2017-02-18 02:32:33 +01:00
Henrik Rydgard
3713f4e6e6 D3D11: implement support for logic op blending when available 2017-02-18 02:14:26 +01:00
Henrik Rydgard
6a09d45aee D3D11: Add proper checks for B4G4R4A4 format support. Not yet using the checks. 2017-02-18 01:41:08 +01:00
Henrik Rydgard
584650a0c2 Initial preparations for logic op support 2017-02-18 01:41:08 +01:00
Henrik Rydgard
e8396b10f9 D3D11: Implement screenshots. 2017-02-18 00:43:02 +01:00
Henrik Rydgard
68ba3070bc D3D11: Add enough debug readback support to support savestate thumbnails 2017-02-18 00:27:32 +01:00
Henrik Rydgard
0e8aeaea3a D3D11: Implement basic framebuffer readback.
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
Henrik Rydgard
b807442641 Fix another resource leak, and fix one of the last leak fixes :P 2017-02-17 19:41:06 +01:00
Henrik Rydgard
2fabe3e1c5 Fix a number of resource leaks, both D3D11-only and general.
Additionally, fix D3D11 BlitFramebuffer
2017-02-17 19:23:01 +01:00
Henrik Rydgard
13a3d179d5 Further minor D3D11 fixes 2017-02-17 18:43:27 +01:00
Henrik Rydgard
061685678d State management fixes. DBZ toon shader effect now works. 2017-02-17 17:34:21 +01:00
Henrik Rydgard
ba040559c1 Fix bugs. DBZ now shows outlines, though doesn't apply them correctly. 2017-02-17 17:00:35 +01:00
Henrik Rydgard
e83dd2b524 Minor cleanup, elimintate some bind ordering hazards that D3D11 warns about 2017-02-17 14:31:02 +01:00
Henrik Rydgard
b961117897 D3D11: Attempt a straight implementation of FramebufferBlit. Shader blending not yet working. 2017-02-17 12:51:37 +01:00
Henrik Rydgard
08d173ceee Unify ApplyShaderBlending 2017-02-17 12:21:27 +01:00
Henrik Rydgard
4538edad14 Work towards enabling shader blending on D3D11 2017-02-17 12:21:18 +01:00
Henrik Rydgard
68c5a6c517 Unify CopyDisplayToOutput 2017-02-15 23:24:25 +01:00
Henrik Rydgard
23762ef89f Unify DrawFramebufferToOutput 2017-02-15 23:11:46 +01:00
Henrik Rydgard
26f208a212 Unify "DrawPixels" 2017-02-15 23:06:22 +01:00
Henrik Rydgard
84e6054b23 More work towards unifying CopyDisplayToOutput 2017-02-15 22:48:23 +01:00
Henrik Rydgard
cba37e54d0 Preparations for unifying CopyDisplayToOutput 2017-02-15 22:47:50 +01:00
Henrik Rydgard
7652bc2d8b Declare DrawActiveTexture in FramebufferCommon 2017-02-15 22:47:49 +01:00
Henrik Rydgard
f95ab4a0fa One more step 2017-02-15 21:51:39 +01:00
Henrik Rydgard
55beec3e89 D3D11: Enable anisotropic filtering 2017-02-15 11:46:47 +01:00
Henrik Rydgard
5c918da774 Minor cleanups (combined two identical enums, misc) 2017-02-15 11:06:59 +01:00
Henrik Rydgard
a8ee70f23d Import SPIRV-Cross. This will be used later to translate post-processing shaders to the various shader languages we use.
Eventually, this will make it possible to use post-processing with
Vulkan and D3D11. Probably not DX9, though maybe.

Not adding to Android build, there's some strangeness with STL.
2017-02-14 23:33:27 +01:00
Henrik Rydgard
a9e267ae7a Enable dualsource blend effects (glows on transparent things in Wipeout, for example) 2017-02-14 10:36:58 +01:00
Henrik Rydgard
b51bcd2247 D3D11 Stencil ref fix, fixes Star Ocean stencil-depth 2017-02-14 01:54:00 +01:00
Henrik Rydgard
6d4d638746 D3D11: Fix some color issues by doing thing similarly to DX9. Can be optimized later. 2017-02-14 01:31:45 +01:00
Henrik Rydgard
780006489e D3D11 Attempt at fixing Star Ocean stencil .. doesn't quite work. 2017-02-13 17:29:50 +01:00
Henrik Rydgard
cef8dc907d Last one for today 2017-02-13 02:12:49 +01:00
Henrik Rydgard
373c6ba12f More D3D11 fixes, hopefully without breaking DX9 2017-02-13 02:07:27 +01:00
Henrik Rydgard
94860b6636 Additional D3D11 fixes 2017-02-13 01:38:52 +01:00
Henrik Rydgård
6033b1ee05 D3D11: Some cleanup. Fix backface culling. Wipeout still looks weird... 2017-02-12 18:29:58 +01:00
Henrik Rydgård
328201978f D3D11: Prepare for dual src blending support 2017-02-12 17:10:04 +01:00
Henrik Rydgård
3b12ac5f05 D3D11: Stencil and scissor work 2017-02-12 17:09:53 +01:00
Henrik Rydgård
cb407a4019 Minor tweaks 2017-02-12 16:21:24 +01:00
Henrik Rydgård
4f2fb10347 Further D3D11 fixes 2017-02-12 16:14:14 +01:00
Henrik Rydgård
bbdb0ee195 Fix the stencil buffer initialization stuff (not sure it's 100% working et) 2017-02-12 13:55:49 +01:00
Henrik Rydgård
6efdde9ea4 D3D11: Fix build issue in Release mode. Triangle fan workaround. 2017-02-12 12:12:36 +01:00
Henrik Rydgård
07c88ef2b0 D3D11: Fix reverse colors in drawpixels, fix a potential crash 2017-02-12 12:07:37 +01:00
Henrik Rydgård
4fbb537c92 Assorted D3D11 fixes 2017-02-12 12:02:13 +01:00
Henrik Rydgård
abbd6cb1d1 Fix DrawActiveTexture, now Buffered Rendering is starting to work 2017-02-12 11:20:55 +01:00
Henrik Rydgård
04b803e2f6 D3D11: Change init method for textures, so we can support mipmapping 2017-02-10 15:40:51 +01:00
Henrik Rydgård
f7717063a8 Assorted fixes for memory leaks etc 2017-02-10 14:41:32 +01:00
Henrik Rydgard
7750ee9f7b D3D11: Fix reversed colors, stencil improvements 2017-02-10 11:36:09 +01:00
Henrik Rydgard
3f4e14f504 D3D11: Lumines is now playable in non-buffered, with reverse colors. 2017-02-10 11:25:24 +01:00
Henrik Rydgard
a8dc9360f0 D3D11: Fix clears 2017-02-10 10:32:32 +01:00
Henrik Rydgard
5ee3b534ed More D3D11 improvements 2017-02-10 10:26:18 +01:00
Henrik Rydgard
9a6f3ccfad D3D11: Fix depth state 2017-02-10 00:37:56 +01:00
Henrik Rydgard
aba669c3e6 D3D11: Cube now visible 2017-02-10 00:30:42 +01:00
Henrik Rydgard
a7ea169797 cube.elf now runs in D3D11 mode, still blackscreen 2017-02-10 00:07:23 +01:00
Henrik Rydgard
f9b840dbfd More D3D11 progress 2017-02-10 00:01:56 +01:00
Henrik Rydgard
01f46e7a5d Make the first generated D3D11 shaders compile, fix various warnings 2017-02-09 15:04:21 +01:00
Henrik Rydgard
76587ec61c Further stuff. 2017-02-09 13:28:59 +01:00
Henrik Rydgard
ba95e0f4d9 Initial stab at porting the DX9 backend to D3D11. Not working yet. 2017-02-09 13:28:40 +01:00
Henrik Rydgard
01e11c6437 Some mostly empty files for D3D11 2017-02-08 17:47:07 +01:00
Henrik Rydgard
175b97ef34 Start stubbing out a new D3D11 backend 2017-02-08 17:35:41 +01:00