Henrik Rydgård
fb74c9dfeb
Clean up a small inconsistency
2017-12-07 21:09:09 +01:00
Unknown W. Brackets
0dee041002
D3D11: Change state caches to DenseHashMaps.
2017-12-02 18:55:02 -08:00
Unknown W. Brackets
243304a5e8
Hashmaps: Fix missing maintain calls in non-GLES.
...
Should only matter if vertex cache is enabled.
2017-12-02 18:27:18 -08:00
Unknown W. Brackets
4731a2918c
GPU: Use more typesafe shader IDs.
...
Since they really are fairly distinct, let's make sure we can't mix them
accidentally.
2017-12-02 09:07:27 -08:00
Henrik Rydgård
734d9c494c
Fix bug in Vulkan non-buffered where clears could extend outside the frame, since Vulkan clears do not respect scissors.
2017-12-02 11:05:10 +01:00
Henrik Rydgård
f8b70fe185
Clean up all the FBOs in DestroyAllFBOs. Missing any can have bad consequences after app switching on Android/Vulkan where we recreate stuff.
2017-12-01 12:17:10 +01:00
Unknown W. Brackets
7339c6c0fd
Vulkan: Report more info on texture from target.
2017-11-30 15:42:21 -08:00
Henrik Rydgård
ce818263a1
Fix D3D11 push buffer overflow
2017-11-24 17:53:42 +01:00
Henrik Rydgård
e6be86ce74
ARM buildfix
2017-11-22 11:01:42 +01:00
Henrik Rydgård
2c86217552
Cleanup GPU vendor detection a bit, use it to avoid the issue mentioned in #9545
2017-11-21 16:19:28 +01:00
Henrik Rydgård
6a3d41892a
Workarounds for issue with "accurate depth". See #9545 , #10087
2017-11-21 12:11:05 +01:00
Henrik Rydgård
674d5c7dbb
Merge pull request #10130 from hrydgard/lod-bias-fixes
...
Mipmaps: Disable slope mode pending a better method. Implementing it entirely as a LOD bias is not the way it works.
2017-11-20 13:49:39 +01:00
Henrik Rydgård
713afdfe49
Refactor: Unify DecodeVerts and move ComputeNumVertsToDecode to Common
2017-11-19 12:39:09 +01:00
Henrik Rydgård
23f7819329
Unify RebindFramebuffer, mostly.
2017-11-15 20:44:25 +01:00
Henrik Rydgård
971995fa3d
Move aniso to the sampler cache key.
2017-11-15 19:07:41 +01:00
Henrik Rydgård
313223364c
Buildfix, update comments slightly
2017-11-15 14:21:17 +01:00
Henrik Rydgård
65275c29b7
Share UpdateSamplingParams between D3D11 and Vulkan. Support lod bias in Vulkan.
2017-11-15 14:21:17 +01:00
Henrik Rydgård
b958432783
Properly zero samplercache keys before filling them out.
2017-11-15 14:21:17 +01:00
Henrik Rydgård
f564c59248
Mipmaps: Disable LOD bias in slope mode as that's not how it works.
...
Works around #9772
2017-11-15 14:21:17 +01:00
Henrik Rydgård
d4df0181db
More duplicate code removal
2017-11-14 09:20:36 +01:00
Henrik Rydgård
35437e6b62
Kill off more unused duplicate code
2017-11-13 16:50:45 +01:00
Henrik Rydgård
4a09289056
D3D11: Similarly to the last vulkan commit, don't create lots of dupe vertex input layouts
2017-11-13 12:26:52 +01:00
Henrik Rydgård
3e749a94ce
Vulkan: Fix bug where we ended up creating duplicate pipelines even if vertices decoded to the same format, if they were created from different formats.
...
This can cut down the number of pipelines to a third or less in some
games. However, benefit is likely smaller since Vulkan drivers will
deduplicate shaders inside each vkPipelineCache object.
Helps #10106 while not actually implementing any of the suggestions inside.
2017-11-13 11:22:33 +01:00
Henrik Rydgård
04e313ecba
Unify Execute_Bezier and Execute_Spline
2017-11-13 10:45:27 +01:00
Unknown W. Brackets
e3b3828b15
TexCache: Check alpha before scaling.
...
This will be faster when scaling. We no longer need to wait, since we
only care about full alpha now.
2017-11-12 16:19:28 -08:00
Unknown W. Brackets
9fbcc01afa
TexCache: Remove simple 0/1 alpha check.
...
No practical optimizations have come of this, so it's a waste of time.
Slows down Vulkan too.
2017-11-12 16:17:46 -08:00
Unknown W. Brackets
9cf17d9288
D3D11: Clear input layouts on shader clear.
...
When we do clear shaders, make sure to also clear input layouts so we
don't have corrupt keys.
2017-11-11 08:11:10 -08:00
Unknown W. Brackets
f93ef92960
D3D11: Avoid clearing shaders on load state.
...
They don't need to be cleared (unlike FBOs), and clearing them requires
clearing even more things. Fixes #9637 .
2017-11-11 08:09:56 -08:00
Henrik Rydgård
d618b3673b
Count readbacks in a frame and show in GPU debug stats.
2017-11-08 11:57:53 +01:00
Henrik Rydgård
ea2fc55217
Merge pull request #10056 from hrydgard/remove-multithreading-2
...
Remove the old style multithreading
2017-11-06 20:37:06 +01:00
Unknown W. Brackets
cd6249d080
D3D11: Show FBO-as-texture in GE debugger.
2017-11-05 18:41:24 -08:00
Henrik Rydgård
8c69be9bfa
Get rid of GPUCommon's "Internal" functions.
2017-11-05 23:21:52 +01:00
Henrik Rydgård
26e52ca5e8
Get rid of a bunch of sync stuff that's no longer needed.
2017-11-05 23:21:49 +01:00
Unknown W. Brackets
78b5565035
GPU: Properly Release() FBOs.
...
In case we end up wanting to use those reference counts, let's use the
right API.
2017-11-05 12:45:02 -08:00
Henrik Rydgård
5d0bd85a70
Unify a little bit of depal code.
2017-11-05 10:40:21 +01:00
Henrik Rydgård
d670948ad2
Cleanups and fixes around Vulkan stencil upload. thx unknown
2017-11-05 10:14:44 +01:00
Henrik Rydgård
5018e400f2
Remove some code duplication
2017-11-01 14:51:15 +01:00
Henrik Rydgård
330bdb8be8
Add and update some comments.
2017-11-01 08:42:49 +01:00
Henrik Rydgård
65e23bb9f3
Some reorganization. Start implementing framebuffer depal for Vulkan.
2017-10-31 12:34:31 +01:00
Henrik Rydgård
7312576239
More buildfixes, warning fix, memory leak fix
2017-10-26 11:43:22 +02:00
Henrik Rydgård
b886efe8f5
Another minor cleanup (DescribeCodePtr)
2017-10-20 11:06:12 +02:00
Henrik Rydgård
4a30aedc53
Unify and move around code to cleanup some debug accessors
2017-10-18 13:10:05 +02:00
Henrik Rydgård
d53c88456a
Unify GetFramebufferList() (trivial)
2017-10-18 12:49:15 +02:00
Henrik Rydgård
898716cc26
Unify DownloadFramebufferForClut
2017-10-18 12:34:01 +02:00
Henrik Rydgård
981c49615c
Unify FlushBeforeCopy. Remove old dummy methods from Vulkan framebuffer manager.
2017-10-18 12:26:02 +02:00
Henrik Rydgård
4e3a9bc3e3
Unify some more framebuffer functions. Leave the GL stuff alone for now due to async.
2017-10-18 11:20:58 +02:00
Henrik Rydgård
f2ea0ce472
Unify (well, almost) GetOutputFramebuffer (D3D11/GL)
2017-10-18 10:54:26 +02:00
Henrik Rydgård
214270d192
Unify GetDepthBuffer/GetStencilBuffer in GL/D3D11
2017-10-18 10:54:26 +02:00
Henrik Rydgård
f220c74037
Remove comment, add check.
2017-10-16 16:28:27 +02:00
Henrik Rydgård
9b1ee6fce6
Unify GetFramebuffer in GLES and D3D11.
...
D3D9 is left behind for now, and Vulkan still needs implementation - got a branch with initial work towards that.
2017-10-11 13:39:34 +02:00
Henrik Rydgård
62972cb891
D3D11: Move to CopyFramebufferToSync where easily possible.
2017-10-11 13:34:31 +02:00
Henrik Rydgård
5bbe0eb69a
Move GL readback to a Thin3D abstraction
2017-10-10 14:48:58 +02:00
Unknown W. Brackets
72e0a24724
GPU: Reset shader state on shader reset.
...
Was ending up with lastFSID being -1, but being used.
Seen in gpu/commands/blend test.
2017-09-20 08:37:54 -07:00
Henrik Rydgård
6a1fa728d8
Remove Globals.h
2017-08-31 17:15:22 +02:00
Henrik Rydgård
2f85e6516e
Minor optimizations (use the new hashmap in a few more places)
2017-08-20 19:18:46 +02:00
Henrik Rydgård
10cebb4195
32-bit buildfix
2017-08-20 15:33:53 +02:00
Henrik Rydgård
e0e13e191f
Replace the most critical unordered_maps and maps with two new maps: FastHashMap and PrehashMap.
2017-08-20 11:30:19 +02:00
Henrik Rydgård
d60bb27cd9
Merge pull request #9906 from hrydgard/fastrunloop-optimize
...
GPU FastRunLoop optimizations
2017-08-17 16:25:15 +02:00
Henrik Rydgård
5680332343
Minor cleanups
2017-08-17 15:20:21 +02:00
Henrik Rydgård
2c4e5e2303
Fastpath in fastrunloop when diff=0. Remove need for Execute for UV scale/offset.
2017-08-17 15:20:16 +02:00
Henrik Rydgård
71baecabd6
Make FLAG_FLUSHBEFORE a no-op, move flushes into the execution functions.
...
It would only be necessary if we needed the previous value, which we
don't do in any of these.
2017-08-17 15:20:10 +02:00
Henrik Rydgård
5e788ffadf
Implement vertex caching for Vulkan.
2017-08-17 11:22:45 +02:00
Henrik Rydgård
50d771961b
Vulkan: More minor optimization (avoid pipeline cache lookups when possible)
2017-08-15 16:01:50 +02:00
Henrik Rydgård
983bb3bd0f
Can't dirty VERTEXSHADER_STATE before the flush in Execute_VertexTypeSkinning, causes obscure bugs when software skinning is enabled
2017-08-15 14:27:54 +02:00
Henrik Rydgård
4e7099bf47
Vulkan: Fix some more state dirtying issues.
2017-08-15 10:51:44 +02:00
Henrik Rydgård
5a65334646
Use dirty-flags more in Vulkan state setting
2017-08-14 15:14:46 +02:00
Unknown W. Brackets
ca40282a10
Dirty on various framebuf state helpers.
...
Ideally we should cut down on using DisableState(), or restore afterward.
2017-08-14 11:36:07 +02:00
Henrik Rydgard
078e1151f9
Dirty-flag the fragment shader ID.
2017-08-14 11:36:07 +02:00
Unknown W. Brackets
f1cf92988f
Dirty things on stencil buffer upload.
2017-08-14 11:36:06 +02:00
Unknown W. Brackets
c84efcfc97
Dirty vertexshader state on hw bezier/spline.
2017-08-14 11:36:06 +02:00
Henrik Rydgard
56cd991833
All: Only recompute the vertex shader ID when dirty
2017-08-14 11:36:06 +02:00
Henrik Rydgard
f01da87ab2
D3D11: Make better use of the dirty flags to avoid state calls
2017-08-14 11:36:03 +02:00
Henrik Rydgard
4e55654522
Add some missing VIEWPORTSCISSOR dirtying.
2017-08-14 11:35:11 +02:00
Henrik Rydgard
1098bf7342
All: Only convert viewportscissor state if dirty
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e439055a32
All: Only convert raster state if dirty
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e2b179d6e2
All: Only convert depth stencil state if dirty
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e4567c694c
All: Only convert blend state if "dirty"
2017-08-14 11:14:26 +02:00
Unknown W. Brackets
c724df5f52
D3D11: Fix texture scaling with blank first half.
...
This would cause some textures to become blank. Fixes #9813 .
2017-07-01 16:10:00 -07:00
Henrik Rydgård
dfdf54813a
Port a small simplification to D3D9
2017-06-09 14:53:06 +02:00
Henrik Rydgård
5f6e0feacb
D3D11: Fix Star Ocean again (wasn't clearing stencil properly)
2017-06-09 14:50:39 +02:00
Unknown W. Brackets
4a56e6ff83
GE Debugger: Fix recording in softgpu.
2017-06-04 10:38:58 -07:00
Unknown W. Brackets
dca75437c3
GPU: Refactor common frame dumping code.
2017-06-03 15:29:07 -07:00
Henrik Rydgård
14a80968cf
Unify transformed arrays
2017-06-03 18:05:21 +02:00
Henrik Rydgård
1abb8792ab
Unify ComputeMiniHash
2017-06-03 18:05:18 +02:00
Henrik Rydgård
3032240916
Unify DecodeVertsStep
2017-06-03 18:04:46 +02:00
Henrik Rydgård
240e058b3b
Some unification in DrawEngine
2017-06-03 18:03:56 +02:00
Henrik Rydgård
0ac979505c
Fixes for D3D11 postprocessing
2017-06-02 17:04:08 +02:00
Henrik Rydgård
6169fa289a
Merge pull request #9769 from hrydgard/vulkan-sw-skinning
...
Implement software skinning for the Vulkan backend.
2017-06-02 12:15:56 +02:00
Henrik Rydgård
665a2c04cb
Implement software skinning for the Vulkan backend. Fixes #9753
2017-06-02 11:47:14 +02:00
Unknown W. Brackets
5190ad7aa2
GLES: Copy only depth in BlitFramebufferDepth.
...
Otherwise we get glitched rendering in some games - see #9740 .
2017-06-01 20:57:08 -07:00
Henrik Rydgård
7822e5b57f
Merge pull request #9755 from unknownbrackets/mipmaps
...
GPU: Block mipmap autogen for matching size
2017-06-01 09:04:36 +02:00
Unknown W. Brackets
f1e9180676
Vulkan: Fix Cardboard rendering.
...
Mostly the Viewport2D flush issue, which may possibly have broken
something else.
2017-05-31 23:26:38 -07:00
Unknown W. Brackets
f66ffb9ffe
GPU: Fix negative mip levels with const workaround.
...
Might've crashed if it hit a negative level before.
2017-05-31 21:42:07 -07:00
Unknown W. Brackets
b6375638f5
GPU: Block mipmap autogen for matching size.
...
If the mips don't get smaller, we can't autogen - the bias in that case is
used to select a different texture. Fixes #9731 .
This also may improve a minor performance issue on PowerVR in some games.
2017-05-31 21:23:20 -07:00
Henrik Rydgård
2b14c6b531
Delete obsolete function ClearBuffer
2017-05-31 13:38:22 +02:00
Henrik Rydgård
44423f3ba2
Vulkan: Implement BlitFramebuffer
2017-05-30 09:38:09 +02:00
Henrik Rydgård
e8890e3c4a
Address a bunch of review comments.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
6bcfe539f7
Use vulkan-style clear-on-bind when switching render targets. Not optimally used yet.
...
Also removes a bunch of redundant render target binds.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
35aefe4a2a
BindBackBufferAsRenderTarget is now replaced with BindFramebufferAsRT(nullptr)
2017-05-30 09:36:17 +02:00
Henrik Rydgård
1b05a54800
Remove the Mipmap setting. One step forward for #8171
2017-05-26 10:21:20 +02:00
Henrik Rydgård
0f4e064053
Remove unused methods
2017-05-18 12:41:18 +02:00
Unknown W. Brackets
c4d1863ded
GPU: Consistently bias const mip levels.
...
Since SLOPE is just a more complicated CONST, we can treat them the same.
2017-05-12 20:30:47 -07:00
Unknown W. Brackets
fd4399e108
GPU: Centralize fb resize, move to begin of frame.
...
It makes more sense here, because otherwise when you change it from the UI
settings, it takes a frame to "kick in".
2017-04-24 12:02:52 -07:00
Unknown W. Brackets
97620d4cca
GPU: Rebuild FBOs when they now have storage.
2017-04-24 09:37:54 -07:00
Unknown W. Brackets
8e9945df97
D3D11: Approximate AUTO/CONST mip bias.
...
These generally work, as long as the mip levels are halving.
2017-04-22 18:22:22 -07:00
Unknown W. Brackets
98ba7afa83
Destroy FBOs only on actual resize.
...
As a side effect, this means going to settings won't reset all FBOs
anymore. The behavior can still be obtained by changing render resolution
or rendering mode.
This makes resizing the window faster on Windows, and resumes quicker from
pause.
2017-04-13 23:36:17 -07:00
Unknown W. Brackets
030f803002
Remove unused parameter to DestroyAllFBOs().
2017-04-13 23:07:21 -07:00
Henrik Rydgård
a85b76e671
Merge pull request #9585 from unknownbrackets/gpu-clear
...
Skip VRAM clears when no download has been made
2017-04-10 00:51:01 +02:00
Unknown W. Brackets
70d17d1bc7
Track flags to reduce unnecessary VRAM zeroing.
...
If we haven't downloaded to RAM since the last zero, no need to zero
again. This is the most common case.
2017-04-09 15:10:07 -07:00
Unknown W. Brackets
ff14495511
Fix out-of-bounds framebuffer blit on color bind.
...
This corrects a crash reported in Persona 3 using D3D11.
2017-04-06 18:49:48 -07:00
Henrik Rydgard
22d5acb40e
Depal: Use the full CLUT mode setting as the depal shader key. Fixes #9550 for both D3D11 and D3D9.
2017-04-04 11:09:29 +02:00
Henrik Rydgård
156bd47155
D3D11: Don't manually wipe the state keys. Make sure that the keys are properly initialized.
2017-04-03 17:20:31 +02:00
Henrik Rydgård
5a8e9c4f71
Port some accessors over from #9255 to be able to catch these changes and dirty state later.
2017-04-03 17:04:58 +02:00
Henrik Rydgård
1faae8b6d6
Port some other minor changes over from #9255
2017-04-03 16:47:30 +02:00
Henrik Rydgård
0903bfb5f5
More D3D11 reorg
2017-04-03 16:37:11 +02:00
Henrik Rydgård
73d762f506
Reorganize raster state mapping
2017-04-03 16:37:11 +02:00
Henrik Rydgard
cffb1d7014
Reorganize depth-stencil
2017-04-03 16:37:11 +02:00
Henrik Rydgard
d581a96d79
All backends: Reorganize blend state mapping to make dirty-tracking easier
2017-04-03 16:37:08 +02:00
Henrik Rydgard
2ebba56758
Fix crash in LocoRoco with D3D11 when hitting a spiky (a broken texture gets created with too many mipmaps for its size)
2017-04-01 20:36:44 +02:00
Unknown W. Brackets
7fb7a4877d
Texcache: Cleanup last bound tex invalidation.
...
When we're deleting, we're always about to bind a new tex.
2017-03-25 11:42:24 -07:00
xebra
e6af91f1b0
[spline/bezier]Trying to fix a problem that wrong texture format causes a crash.
2017-03-23 23:57:03 +09:00
Henrik Rydgård
5e2d5fdcab
Merge pull request #9486 from xebra/fake_mipmap
...
Add support fake mipmap hacks to D3D11.
2017-03-23 09:57:33 +01:00
xebra
d475c752d4
Add support fake mipmap hacks to D3D11.
2017-03-23 15:14:49 +09:00
Unknown W. Brackets
3fbb545451
Allow MakePixelTexture to use a subrange.
...
For example, if it has a larger texture it wants to reuse, it can control
this via texcoords. Let's keep it at top left, though.
2017-03-22 20:56:26 -07:00
Unknown W. Brackets
1932f4097b
Fix a type conversion warning.
2017-03-20 07:21:54 -07:00
Unknown W. Brackets
d4ff7cc928
Spline: Simplify uniforms/dirty to one check.
...
This makes backends more consistent in which values they use, and reduces
the (relatively uncommon compared to other drawcalls) dirty checks for
splines.
2017-03-19 20:05:56 -07:00
Henrik Rydgard
c502692490
Minor cleanup
2017-03-19 18:00:57 +01:00
Henrik Rydgard
1566ab9ac3
With this, lens flare works in 2x+ in Burnout Legends. #9361
2017-03-19 17:54:21 +01:00
Henrik Rydgard
2eed2a28c7
D3D11: Avoid a framebuffer copy when reading back data if rendering at 1x
...
Fix the size of the framebuffer copy.
2017-03-19 17:54:21 +01:00
Unknown W. Brackets
9b42515ef7
D3D11: Correct GE debugger stencil value display.
...
When hovering over a pixel, if we send a float, it won't show the 0-255
value, which we'd prefer for stencil values. This is the easy fix.
2017-03-19 07:45:52 -07:00
Henrik Rydgard
ef26ee267d
D3D11: Get rid of a forgotten half pixel offset. Improves #9361
2017-03-19 14:57:48 +01:00
Henrik Rydgard
478b5dcbe1
Fix bug in D3D11 framebuffer readbacks, helps #9361 , though seems off by half a pixel?
2017-03-19 14:22:06 +01:00
Henrik Rydgard
032c340f50
Revert "Vertexcache ComputeMiniHashRange: Doesn't make sense to hash more data than the step size."
...
This reverts commit 0bbb61e5d2
.
2017-03-19 12:47:12 +01:00
Henrik Rydgard
0bbb61e5d2
Vertexcache ComputeMiniHashRange: Doesn't make sense to hash more data than the step size.
2017-03-19 12:08:21 +01:00
Unknown W. Brackets
ae2c0193b8
D3D11: Report unexpected self-renders.
2017-03-18 13:52:30 -07:00
Henrik Rydgard
23367925f1
Change a PanicAlert to an ERROR_LOG. Should possibly report..
...
http://forums.ppsspp.org/showthread.php?tid=1310&page=3
Add a comment.
2017-03-18 21:25:30 +01:00
Unknown W. Brackets
48a5488bf3
Merge pull request #9442 from hrydgard/clut-texture-format-compatibility
...
D3D11: Expand 16-bit CLUT textures to 32-bit if not supported.
2017-03-17 12:57:12 -04:00
Henrik Rydgård
5d613bf565
Set pitch correctly when uploading converted CLUT textures
2017-03-17 16:56:45 +01:00
Henrik Rydgård
94f16e3b7c
GPU: Move "if (resized_)" to BeginHostFrame to avoid desynchronized settings.
...
Also wipe the input layout cache on D3D11 on resize.
Fixes #9438 .
2017-03-17 11:26:11 +01:00
Henrik Rydgård
20f9ae3114
Make sure UpdateCmdInfo is called "in sync" with settings changes. Fixes #9438 .
...
(well, at least the software skinning part. not sure if there are more).
2017-03-17 10:48:43 +01:00
Henrik Rydgård
17a250df7a
Always trigger gpu->Resized when exiting GameSettingsScreen.
...
Strangely, this does NOT help #9438 .
2017-03-17 10:27:49 +01:00
Henrik Rydgård
58c2ba987d
D3D11: Expand 16-bit CLUT textures to 32-bit if not supported.
2017-03-17 10:11:17 +01:00
Henrik Rydgård
d8abcb8d74
D3D9: Set the right Z in ApplyBounds
2017-03-17 10:00:45 +01:00
Henrik Rydgård
4fec3187e4
D3D11: Fix stencil=255 bug
2017-03-15 17:50:10 +01:00
Henrik Rydgard
5a946d985b
Unify most of the rest of the command table entries
2017-03-14 13:47:34 +01:00
Henrik Rydgard
c74d6fcde7
Unify some vertex shader related settings in the command tables
2017-03-14 13:44:18 +01:00
Henrik Rydgard
cd6d5a0d7f
Unify fragment shader settings in the command table
2017-03-14 13:42:48 +01:00
Henrik Rydgard
bc641e6c56
Unify minz/maxz in command tables
2017-03-14 13:41:13 +01:00
Henrik Rydgard
903ac2fc42
Unify texture settings in the command tables
2017-03-14 13:39:32 +01:00
Henrik Rydgard
934b3db800
Unify logicop, antialias in the command table
2017-03-14 13:37:12 +01:00
Henrik Rydgard
8e6d546921
Unify the control commands in the tables
2017-03-14 13:35:25 +01:00
Henrik Rydgard
7302aca7b3
Some reordering, fixing in the command tables
2017-03-14 13:32:56 +01:00
Henrik Rydgard
ff57cacfe6
Unify morph weight, patch parameter command table entries
2017-03-14 13:30:03 +01:00
Henrik Rydgard
f767615ef8
Unify viewport/region/scissor command table entries
2017-03-14 13:28:28 +01:00
Henrik Rydgard
3de4d67fdc
Unify the light parameter table entries
2017-03-14 13:26:53 +01:00
Henrik Rydgard
99711815b5
Unify some ignored command table entries
2017-03-14 13:25:52 +01:00
Henrik Rydgard
d9c19cc9ee
Unify matrix, dither and signal table entries
2017-03-14 13:24:35 +01:00
Henrik Rydgard
3f795799c9
Setup a global GPU command table, and start moving stuff into it.
2017-03-14 13:21:24 +01:00
Henrik Rydgård
eb73a28140
Add new log category FRAMEBUF
2017-03-13 13:55:29 +01:00
Henrik Rydgard
b0bd7e3c6f
Minor changes for compatibility with VS2017
2017-03-12 17:33:00 +01:00
Henrik Rydgard
21d97a7947
Dirty UVSCALEOFFSET on every draw call.
...
This is needed since we no longer dirty it on normal changes since we
prescale, but it's still necessary for spline/bezier which generate texture coords.
2017-03-11 13:10:38 +01:00
Henrik Rydgard
e33428414f
Restore flushing the GPU pipeline on changes to CLIPENABLE, as per @unknownbrackets' comments. Also remove a redundant dirtying of textures.
2017-03-11 13:10:38 +01:00
Henrik Rydgard
9bb81a24c0
Fix bug where we'd reload the post shader information every frame. Fixes #9410
2017-03-11 12:25:43 +01:00
Henrik Rydgård
7520c0e273
UWP: Don't try to use dual source blending on D3D9 feature level devices.
2017-03-10 00:12:57 +01:00
Henrik Rydgård
7be5a18ef8
Don't need a uint in the stencil draw shader
2017-03-10 00:11:02 +01:00
Henrik Rydgård
e74749f2b2
A function renamed, some logging improvements
2017-03-10 00:11:00 +01:00
Henrik Rydgård
ee48a075b0
UWP: Implement display rotation in framebuffer manager, now games display right-way-up in buffered rendering mode.
2017-03-07 15:32:53 +01:00
Henrik Rydgård
ed16096365
Don't crash if not enough memory to save a state. Very annoying.
...
Minor tweaks.
2017-03-07 15:32:34 +01:00
Henrik Rydgård
474db602ca
UWP: Fix screen rotation in non-buffered rendering mode
2017-03-07 15:32:26 +01:00
Henrik Rydgård
90e0079c98
GE Debugger D3D11: Support displaying the current texture
2017-03-06 16:46:15 +01:00
Henrik Rydgård
07bfde357d
D3D11 simpleblit: Avoid a binding hazard by swapping the texture and framebuffer bind.
2017-03-06 16:39:23 +01:00
Henrik Rydgård
440e72d250
Clean up among the logs. Remove MASTER_LOG.
2017-03-06 13:10:23 +01:00
Henrik Rydgard
5d5844632a
Fix shader issues with D3D11 feature level 9
2017-03-05 22:56:33 +01:00
Henrik Rydgard
bb3e211088
Fix bad initialization of featureLevels, breaking things in #9361
2017-03-05 22:33:18 +01:00
Henrik Rydgard
042d09a049
Fix #9390 , also unbreak D3D11 screenshots
2017-03-05 20:30:39 +01:00
Henrik Rydgard
a04e24c300
Further D3D11 on mobile fixes
2017-03-05 14:05:04 +01:00
Henrik Rydgard
61c6d83b6e
D3D11: Fix creation of stock samplers to work on featurelevel9 GPUs
2017-03-05 12:40:09 +01:00
Henrik Rydgard
116edcb77a
Take the D3D11 feature level into account when creating shaders. May help #9369
2017-03-05 12:31:33 +01:00
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