Gregory Hainaut
ba782e90c8
gsdx ogl: enable sparse feature on GSdevice interface
...
Note: remain
* To really use sparse texture
* To debug it ^^
2019-04-26 12:40:04 +02:00
Gregory Hainaut
16d5f477ff
gsdx ogl: implement CommitPages
2019-04-26 12:40:04 +02:00
Gregory Hainaut
e8b2d036ee
gsdx ogl: handle creation of sparse texture
2019-04-26 12:40:04 +02:00
Gregory Hainaut
9e7069f374
gsdx hw: add API to manage sparse texture allocation
...
DX/GL should implement "CommitPages" to really commit memory
Note: CommitPages should also update the m_committed_size member
2019-04-26 12:40:04 +02:00
Gregory Hainaut
643ed528c2
gsdx hw: allow to create sparse texture at device level
...
Obviously texture allocation should be updated too
2019-04-26 12:40:04 +02:00
lightningterror
3408d1a873
gsdx-d3d11: Move colclip code to blending function.
...
Also disable a log that was accidentally enabled/pushed.
2019-04-25 16:48:07 +02:00
lightningterror
a0c6c1cb9f
gsdx-hw: Forgot to remove a crc region check for dbzbt2-3, no longer needed.
2019-04-25 16:34:28 +02:00
lightningterror
8eab618502
gsdx-hw: Purge crc hacks that had their half screen issues resolved (Texture shuffle case).
...
DBZBT2, DBZBT3, MetalGearSolid3.
2019-04-25 15:08:51 +02:00
Kojin
34ac15f7eb
GSdx-hw: Add secret ini option to disable TS half bottom detection
2019-04-25 13:42:47 +02:00
Kojin
7eb0b0ac65
GSdx-hw: Add automatic detection of half-bottom in TS
...
Typical shuffle case is 1/2 height so other half is undesired
In dbz we split the depth buffer.
- Sample first half, write to `0x0`.
- Sample second half, write to `0x800`
- Finally, sample `0x0` though `0xffc`
Crash Twinsanity is a similar case.
2019-04-25 13:42:47 +02:00
Kojin
97612edd58
GSdx-hw: Move src to protected member
2019-04-25 13:42:47 +02:00
Kojin
6af2f7ef46
GSdx-hwtc: Propagate valid area from dst to source
2019-04-25 13:42:47 +02:00
Kojin
acf771edd8
GSdx-hw: Store bounding rectangle in protected member
2019-04-25 13:42:47 +02:00
lightningterror
c3f36ad430
gsdx-gui: Separate opengl and direct3d blending options.
...
A short summary how d3d option behaves compared to gl.
None d3d-> behaves the same
Basic d3d-> even less than 1/3 of Basic opengl.
Medium d3d -> less than 1/3 of Basic opengl.
High d3d -> 1/3 of Basic opengl.
Note: Medium and High options are mostly intended for debug use.
2019-04-23 15:24:04 +02:00
lightningterror
d4b62444d1
gsdx-d3d11: Adjust fbmask code on d3d11.
...
Add the remaining code and separate it in levels because dx sux.
Basic blending mode -> doesn't enable fbmask on texture shuffle and
triangle primitives.
Medium -> doesn't enable fbmask on triangle primitives.
High mode- > fully enables fbmask, note it's still not on par with
opengl because we miss sw blending for some games.
Also keep in mind that High Blending option on d3d11 is like 1/3 of
Basic Blending option on GL.
2019-04-23 15:24:04 +02:00
lightningterror
641df126c4
gsdx-d3d11: Don't enable fbmask on triangle primitives.
...
It is quite slow due to fb copy on d3d, add potential notes for future
improvements so I don't forget what I wanted to do.
2019-04-22 05:07:42 +02:00
lightningterror
de5e9a85bb
gsdx-d3d11: Partial port of frame buffer masking from opengl.
...
It works on games such as Fifa Street 1 and 2 (character and stage
rendering), mission impossible operation surma (shadow rendering).
It needs at least Basic level of blending enabled on d3d11.
2019-04-22 05:07:42 +02:00
lightningterror
9d60d6acfd
gsdx-d3d11: Remove old aout code.
...
Will be replaced with fbmask code in next commits.
2019-04-22 05:07:42 +02:00
Tyler Wilding
08d923ca6f
recording: Append copyright headers
...
Squashed commits:
[47be08613] recording: Forgot to refactor the usage of std::size
2019-04-21 00:45:44 +02:00
Tyler Wilding
64104ca9fd
gui:recording: Revert addition of Screenshot As, will contribute as separate PR
...
Along with changing the .bmp file naming scheme.
2019-04-21 00:45:44 +02:00
Tyler Wilding
413ba4b430
GSdx: implemented saving a snapshot to a dialog provided file path
2019-04-21 00:45:44 +02:00
lightningterror
ac1bc9d6fc
gsdx-hw: Move GSC_RadiataStories, GSC_StarOcean3, GSC_ValkyrieProfile2 crc hacks to D3D level.
...
Follow up from the previous commit which is bypassing the texture cache
when the frame buffer is sampled.
Crc hacks are no longer needed on opengl.
Note: it requires at least Basic blending support.
2019-04-17 03:48:30 +02:00
Gregory Hainaut
f406051ed9
gsdx ogl: Bypass the texture cache when the frame buffer will be sampled.
...
Proof of concept. It should provide a huge speedup when accurate
blending is enabled for tri-ace / Jak / R&C (shadow rendering).
See #2894
Need PR#2892
v2: Add const + comment to explain that code isn't ideal.
2019-04-17 03:48:30 +02:00
lightningterror
52da124a2b
gsdx-ogl: Check if primitives are triangles instead of overlapping.
...
Single triangle draw can now hit the tex_is_fb path.
Primitive Overlap will return no overlap for single primitive (triangle).
Ratchet and Clank, Jak, tri-Ace games.
It should improve shadow rendering.
Idea by Gregory.
2019-04-10 12:33:31 +02:00
Kojin
73e3072715
GSdx-d3d11: Enable break on D3D message
...
Enable automatic breaking on d3d11 messages:
- D3D11_MESSAGE_SEVERITY_CORRUPTION
- D3D11_MESSAGE_SEVERITY_ERROR
- D3D11_MESSAGE_SEVERITY_WARNING
- D3D11_MESSAGE_SEVERITY_INFO
Hidden option dx_break_on_severity bitfield
Debug build only.
2019-04-08 00:45:50 +02:00
lightningterror
508a8b477e
gsdx-hw: Disable automatic mipmapping on Jak games for now.
...
It crashes the emulator so until the issue is resolved properly comment
out/disable automatic mipmapping for jak games.
Issue #2916
2019-04-07 19:50:46 +02:00
lightningterror
9c222f8efe
gsdx-hw: Some minor comment and code adjustments.
2019-04-04 02:13:57 +02:00
Gregory Hainaut
a16fe6f016
gsdx TC: remove dead code
...
src->m_texture is always NULL, set in Source constructor
Potentially it was a leftover of msaa or the commented code to handle mutable FBW
2019-03-26 14:22:34 +01:00
Gregory Hainaut
374374fdf1
gsdx ogl: disable sparse in extenstion detection
...
* Allow to keep automatic as default value in the option
* You need to force enable sparse in the option to enable sparse
2019-03-26 14:22:23 +01:00
lightningterror
535b0d4aac
gsdx-ogl: Disable sparse depth on amd.
...
* Bad driver as usual.
* Driver reports a compatible sparse format for depth texture but it isn't attachable to a frame buffer.
2019-03-26 14:22:16 +01:00
lightningterror
a30f642860
gsdx-hw: Purge GSC_NarutimateAccel, GSC_Naruto crc hacks.
...
Naruto Shippuden - Narutimate Accel 3,
Naruto - Narutimate Hero 3.
Depth effects (shadows) rendered correctly.
2019-03-17 05:34:13 +01:00
lightningterror
c8d4d5528e
gsdx-ocl: Fix some compile warnings.
2019-03-12 02:36:49 +01:00
lightningterror
7354c1fa0d
gsdx-hw: Update a few crc issue categories for several games.
2019-03-08 19:33:28 +01:00
lightningterror
889001c026
gsdx-hw: Move GSC_Okami to Aggressive level.
...
Upscaling issues, hack needs to be updated because it removes too many
effects. Maybe HPO or Wild Arms offset are fine, needs further testing.
2019-03-08 19:23:03 +01:00
lightningterror
910ef1db41
Gsdx hw: Purge GSC_TalesOfAbyss crc hacks.
...
Depth and channel shuffle rendered correctly on all renderers.
Also add some missing crc ids for Tales of Abyss.
PS: I'm ninjaing 3000 builds on the buildbot 😄
2019-03-08 16:13:39 +01:00
lightningterror
8219bcd1b4
gsdx-hw: Move GSC_YakuzaGames to partial level.
...
Don't enable hack on native res if crc is below aggressive. Upscaling
issues.
Bonus, revert recent barrier changes on gl date code.
2019-03-05 12:39:07 +01:00
lightningterror
e36976bf86
gsdx-d3d11: Minor adjustments to DATE code.
...
Run fast accurate date instead of alpha stencil when accurate date is
enabled on supported calls, also update some logs and comments.
2019-03-04 20:35:09 +01:00
lightningterror
e48ce1bc69
gsdx-ogl: Minor adjustments to DATE code.
...
Don't set DATE true when Accurate Date is off, DATE is true anyway so
no need to set it again.
Don't call full barrier for DATE 45 at the date selection, do it
at the shader call check. It's the same, plus we avoid extra checks.
2019-03-04 19:39:58 +01:00
lightningterror
425059d882
gsdx: Forgot to move the crc state for mgs3 and ace combat 4.
...
crc hacks are aggressive only. Fixes regressions mentioned in
https://forums.pcsx2.net/Thread-Metal-Gear-Solid-3-OpenGL-Issue-with-Latest-Builds
2019-03-01 08:37:04 +01:00
lightningterror
8a9abd8a1b
gsdx: Purge depth crc hack for GSC_RadiataStories.
...
Effects rendered correctly, blur/ghosting upscaling issues can be
resolved with HPO special.
2019-02-25 11:35:27 +01:00
lightningterror
79a38858d1
gsdx: Purge GSC_CrashNburn crc hacks.
...
Depth, texture shuffle rendered correctly.
@MrCK1 did the tests. PAL needs to be tested as well.
2019-02-24 22:12:27 +01:00
lightningterror
8e8598412d
gsdx: Purge all crc hacks for GSC_OnePieceGrandAdventure and GSC_OnePieceGrandBattle.
...
Texture shuffle and hdr colclip.
Effects rendered correctly.
2019-02-23 06:52:40 +01:00
lightningterror
930f07df4a
gsdx: Purge depth crc hack for Haunting Ground.
...
Effects rendered correctly on all renderers.
2019-02-22 17:18:58 +01:00
Gregory Hainaut
e56f75fe9a
gsdx hw:move vertices fixup for texture shuffle in RendererHw
...
Bonus: fix m_vt value
2019-02-22 16:57:59 +01:00
lightningterror
e55fcae981
gsdx d3d11: re-normalize coordinate when TEX0 is invalid.
2019-02-20 13:49:57 +01:00
Gregory Hainaut
29aef04fbf
gsdx ogl: re-normalize coordinate when TEX0 is invalid
...
Fix #258
Fix #695
2019-02-20 13:49:57 +01:00
Gregory Hainaut
12dcb701c7
gsdx: add a function to fix the TEX0 register value for HW renderer
...
Based on the SW renderer
2019-02-20 13:49:57 +01:00
lightningterror
c6f57c0bdb
gsdx: Save hotkey toggle to ini config.
...
This will allow to save hotkey option toggling to the ini which
should fix gui updating with hotkey toggles.
Note: Render hw/sw switch doesn't work.
Also update some options that didn't have hotkey nametag.
2019-02-20 11:07:02 +01:00
Gregory Hainaut
31d95448ed
gsdx device: use same target for fxaa/shaderboost/shaderfx
...
It avoid to waste VRAM memory
2019-02-13 19:52:43 +01:00
Gregory Hainaut
45dfb0dcdb
gsdx device: use generic resize texture function
...
V2: add missing size for merge and interlace
2019-02-13 19:52:43 +01:00