Commit Graph

5123 Commits

Author SHA1 Message Date
lightningterror 0814690534 GSdx: Remove useless logo_ogl.bmp include from VS project files. 2019-07-31 17:36:28 +02:00
lightningterror c8c1429493 gsdx-hw: Add some logs for OI fixes, add JakX beta eu crc id. 2019-07-30 01:01:23 +02:00
lightningterror e79ea75ae2 gsdx-hw: Add OI rendering fix for Big Mutha Truckers.
It will allow to render the shadows properly, also update the crc
hack to skip less effects.
2019-07-30 00:29:07 +02:00
lightningterror 55d469e7f2 gsdx-hw/gamedb: Add gamefix for Dog of Bay as well as some game crc ids.
Add XgKickHack gamefix for Dog of Bay., fixes corrupt textures. Issue
#3041

Add some crc ids. Big Mutha JP version(Bakusou Convoy Densetsu - Otoko
Hanamichi America Roman),
Jak X Public Beta v.1 US, Sly 3 EU Prototype.
2019-07-28 06:54:58 +02:00
atomic83GitHub fd69720d11 Lilypad: Update Xinput description. (#3038)
This commit add the Xbox ONE controller mention in the Xinput description. This include the Mediatek wireless adapter.
2019-07-26 00:38:17 +02:00
arcum42 b48bc8e71c spu2-x: Set default to SDL on Linux instead of portaudio, unless you don't have SDL 2. 2019-07-22 21:16:14 -07:00
monster860 902b88ac1a Spu2-x: Fix noise generator. (#3030)
Fixes the noise generator outputting a 4.8 kHz tone instead of white noise. The random number generator used in GetNoiseValues currently repeats every 10 samples, which is really really awful for a random number generator.

New code based on http://problemkaputt.de/psx-spx.htm#spunoisegenerator
2019-07-22 18:46:10 +02:00
lightningterror 41baf1de14 gsdx-gui: A few more adjustments to the osd/shade boost sliders.
Finally fix overlapping? I hope.
2019-07-17 05:12:56 +02:00
lightningterror 91570a9e0f gsdx-ogl/d3d11: Also ensure that we set proper ini values for Shade Boost sliders.
Should avoid any potential issues if ini values are wrong for shade
boost.

Bonus: Fix gui overlapping issues when sliders are on maximum (100).
2019-07-17 01:16:46 +02:00
lightningterror 888897ed48 gsdx-osd: Ensure we set proper data for osd options.
Should avoid any potential issues if ini values are wrong for osd.
2019-07-16 23:42:34 +02:00
lightningterror 56b8612502 gsdx-d3d11: Set maximum allowed texture size to d3d10 limits which is 8192.
Should prevent any issues if we ever go over the limit.
2019-07-15 22:32:45 +02:00
lightningterror 557f50fb4e gsdx-gui: Allow only digit inputs in osd edit boxes for font size, timeout, and max logs. 2019-07-15 21:41:30 +02:00
lightningterror 6ccc4911c5 gsdx-gui: Fix some overlapping text on osd gui. 2019-07-15 19:30:26 +02:00
lightningterror ee9c31317e gsdx-gui: Put/move hw adv. & hacks option after blending option. 2019-07-15 01:49:10 +02:00
iMineLink f409079864 GSdx-hw: New SW sprite renderer, used in Jak games only for now. (#3001)
Developed a new SW sprite render function, which is used to fix
Jak and Daxter colors in Jak games and to remove the old Jak games hack
which yielded wrong colors and clashed with TC search texture in RT function.

- Remove OO_JakGames hack for palette readback from framebuffer (slow,
clashes with texture in RT TC function, clashes with Target readback logic)
- Developed new method SwSpriteRender with CPU rendering logic
- Add OI_JakGames method using SwSpriteRender for CPU palette rendering (fast,
does not clash with texture in RT TC function, no readback required)

Bonus: fps also sees an improvement in Jak games 3-5 increase.
2019-07-13 01:05:27 +02:00
lightningterror 8e3b34bce6 gsdx-ogl: Comment out pabe bit, not yet used. 2019-07-11 20:11:34 +02:00
lightningterror 6f09cd9b81 gsdx: Fix unknown pragma clang warnings. 2019-07-11 20:11:27 +02:00
lightningterror 96b02be1d1 gsdx-hw: Add Harry Potter and the Goblet of Fire,
Project Snowblind to automatic mipmapping.

Add some extra missing crc ids too for GT4 and Ape Escape 2.
2019-07-11 13:12:06 +02:00
lightningterror d0cb0f59d9 gsdx-d3d11: Extend BLEND_NO_BAR to also hit on clamp 0, it's faster than standard HDR algo.
GOW shows a nice fps improvement (+6 give or take). Spyro too maybe.
2019-07-08 00:40:54 +02:00
lightningterror 2cd9aff867 gsdx-d3d11: Extend sw blending to BLEND_NO_BAR which is also free and doesn't require rt sample nor any barriers.
It helps light rendering in SW Battlefront 2, VP2 also triggers it but needs to be further tested what it does.
2019-07-08 00:40:54 +02:00
arcum42 441e786d3d Take care of a few clang warnings. 2019-07-06 14:16:04 -07:00
lightningterror 132332f9b8 Gamedb/GSdx-hw: Add gamefix patches for Ace Combat Zero JP/KO versions. Add KO version to crc id list.
Fixes collision/missle hit issues.

Issue and patch sources (provided by arapapa) from thread:
https://forums.pcsx2.net/Thread-Ace-Combat-Zero-Collision-Issues
2019-07-06 22:11:47 +02:00
arcum42 fc35de02f2
build.sh and cmake plugin code cleanup (#2953)
* Refactor build.sh. Restructure finding plugins. Remove legacy code. Add --clean-plugins option. Document --no-trans option.

Don't do setcap if dev9ghzdrk isn't being built. List dependencies if they are missing. Remove code related to zerospu2, and misc plugins we aren't building. Minor message changes.
2019-07-04 19:49:11 -07:00
lightningterror a6f7a9576e Onepad: Update controller database. 2019-07-05 01:01:33 +02:00
lightningterror b19804190e gsdx-hw: Add an OI hack for Sonic Unleashed.
It will allow to render the shadows properly.

Rendering pattern is:
Save RG channel with a kind of a TS (replaced by a copy in this hack),
compute shadow in RG,
save result in alpha with a TS,
Restore RG channel that we previously copied to render shadows.
2019-06-23 23:34:25 +02:00
lightningterror 40929a4728 gsdx-d3d11: Add rgba channel selection/support to StretchRect. 2019-06-23 23:34:25 +02:00
lightningterror e9825dccc0 gsdx-ogl: Add rgba channel selection/support to StretchRect. 2019-06-23 23:34:25 +02:00
lightningterror 066a9aaf71 gsdx-hw: Purge Sonic unleashed crc hack. 2019-06-23 23:34:25 +02:00
lightningterror 62417dae99 gsdx-hw: Revert dmc 3 TS hack purge.
Seems like Texture shuffle/depth is not handled properly in all cases so
revert the change until we fix it properly. Move it to gl level too.

Commit:

11cd6b56cd
2019-06-20 10:36:21 +02:00
lightningterror 300f16df61 Gamedb/gsdx-hw: Add gamefix patch and crc id for Harry Potter and the Prisoner of Azkaban EU.
Gamefix patch source:

https://forums.pcsx2.net/Thread-Fixing-unplayable-games?pid=600492#pid600492
2019-06-18 22:34:17 +02:00
lightningterror 9401e52b08 gsdx-d3d11/gui: Move the nvidia hack toggle to Disable Safe Features.
With the sprite hack removed it was no longer possible to toggle this
hack on nvidia gpus, the toggle has been moved to Disable Safe Features.

It some issues caused by the hack in sotc, fatal frame and border offset
issues.
2019-06-18 22:06:35 +02:00
lightningterror 11cd6b56cd gsdx-hw: Purge useless d3d11 only hacl for DMC3.
Texture shuffle emulated correctly.
2019-06-18 20:21:03 +02:00
Akash 4195b77fa3 GSdx-dialog: Unused parameter on hacks dialog constructor
Apparently someone was careless enough to forget removing the parameter on the constructor which passes the adapter ID >_<
2019-06-17 13:01:16 +05:30
Akash 9acb871c7b GSdx-Dialog: Remove useless member variable
The adapter ID was needed to be passed before for a legacy DX9 hack which is no longer present, I figured it could cause a potential conflict when the adapter value stored at INI is outdated. (which is now a possibility after
lightning removed reference device)

The other alternative would be to just force set the INI value on dialog initialization to avoid unavailable values in the INI file, but that would be a rough for a person transitioning from debug build to release build using the reference device
option, so just removing this outdated variable for now, I rather doubt we'd be needing it in the future, in case we need adapter passing to subdialogs, the former suggestion needs to be implemented. Not implementing it right now since there's no need for it.
2019-06-17 12:47:03 +05:30
lightningterror e6d42338ad gsdx-hw: Fix incorrect variable name when tc is disabled.
Allows to compile gsdx with tc disabled properly again.
2019-06-17 00:11:47 +02:00
lightningterror e89f46139b gsdx-d3d11/gui: Don't display Reference Device in available Adapters in release builds. Display it only on debug builds.
It is used for debugging only.
2019-06-16 21:25:25 +02:00
lightningterror a936cd9eb1 gsdx-d3d11: Remove remaining uav (UnorderedAccessView) code, it wasn't used
. Code can be readded in the future if there is a need for it. Advanced
DATE for example.
2019-06-16 20:42:28 +02:00
lightningterror 34bedddd5c gsdx-d3d11: Update nvidia hack handling.
Don't query the api for the adapter description twice.
2019-06-16 20:42:28 +02:00
KrossX 55f4dea468 gsdx-gui: Purge Sprite hack from the gui.
Collaborator: lightningterror
2019-06-16 20:42:28 +02:00
KrossX 39f509feaa gsdx-hw: Remove no longer needed Sprite hack, replaced by improved atst code already. 2019-06-16 20:42:28 +02:00
KrossX 6a122268cb gsdx-d3d11: Update d3d shader macro handling to a much better algorithm.
Bonus, remove unused options variable
D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS.
2019-06-16 20:42:28 +02:00
lightningterror cec185fd66 gsdx-hw: Add Jak2 demo crc id, US version. 2019-06-15 22:35:17 +02:00
lightningterror 0781cb65bf gsdx-hw purge HauntingGround crc hacks.
Half Pixel Offset can solve the misaligned blur when upscaling, while
the second hack is also no longer needed and it broke depth effects too.
2019-06-14 23:32:58 +02:00
lightningterror 3228789808 gsdx-d3d11: Add draw call number to debug logs. 2019-06-13 14:52:03 +02:00
lightningterror 6024359011 gsdx-hw: Purge CastlevaniaCoD, CastlevaniaLoI, NanoBreaker crc hacks.
Shadows emulated correctly with accumulation blend, d3d11 misses sw
blend for extra accuracy (darker shadow).

gsdevice11: Remove unused IsCLR1() variable.
2019-06-13 13:38:24 +02:00
hibye8313 60cf62fea1 GSdx-d3d11: Partial port of EmulateBlending() from OGL renderer to DX11 renderer and ps_blend() from OGL shader to DX11 shader (only accumulation blend). 2019-06-13 13:25:46 +02:00
hibye8313 6bdd4ff186 GSdx-d3d11: Ported SW blending variables from OGL to DX11 PSSelector/BSSelector/pixel shader. 2019-06-13 13:25:46 +02:00
hibye8313 718042e6a6 GSdx: Made a DX11/OGL-independent blend map in GSDevice.cpp. Convert to OGL/DX11 specific constants at run time. 2019-06-13 13:25:46 +02:00
lightningterror 976b77f144 gsdx-hw: Use std max for scaling factor, bonus add jak3 crc id for eu preview/us international release. 2019-06-01 16:46:17 +02:00
Ian Brown a1a6374709 Build: Changes required to compile and run using VS 2019 (#2975)
in vs 2019, the system xhash used by unordered_map uses Target in its template definition. pcsx2 #defines this in the r5900 and r3000 headers which leak cause a cryptic compilation error. A quick fix here is just to undef it in gamebase.h. A better fix would be to encapsulate the definition or use something more c++ to avoid the pre-processor. Add a comment to explain the _Target_ undef.

tap.h did not have string defined. I guess this was included transitively somewhere with an earlier set of system headers.

Biostools, the file is opened in text mode which causes the bios to be partially read. I'm not sure that's vs2019 specific but it's wrong in any case. Maybe the default mode parameter changed at some point. Maybe wxFile would be a better choice here rather than WxFFile because wxFile always open s in binary mode.
2019-06-01 13:34:21 +02:00
lightningterror 877a112193 gsdx-hw: Remove no longer used linear parameter from ComputeFixedTEX0,
add an assert that m_target isn't handled with invalid_tex0 yet due to upscaling.
2019-05-31 13:50:28 +02:00
lightningterror 8ff74fc6c2 gsdx-hw: Fix border issue on ComputeFixedTEX0.
It is quite complex to handle rescaling on ComputeFixedTEX0
so this function is less stricter than GetSizeFixedTEX0,
therefore we remove the reduce optimization,
and we don't handle bilinear filtering which might create wrong interpolation at the border.

Fixes FFX upscaling issues on Bilinear filter during cutscenes.

comment
2019-05-31 13:50:28 +02:00
lightningterror 5e043b3b6f gsdx-hw: Re add GSC_RedDeadRevolver crc hack that only skipped blur effects to aggressive mode only.
Previous commit for reference:

548d6b31bf
2019-05-25 17:19:17 +02:00
lightningterror 3fb2afb51a onepad: Update to latest controlled database. 2019-05-24 08:06:23 +02:00
lightningterror 482f1e953a gamedb/gsdx: Harry Potter Chamber of secrets db and crc update.
Remove some crc lookups for gamefix patches that share the same serial
and patch codes. It will allow game versions with different crc ids to
use the patches. Close #2654

Add JP version to automatic mipmapping.
2019-05-24 07:41:50 +02:00
lightningterror ed8592b30b gsdx-d3d11: Don't run Alpha Stencil on DATE with texture shuffle.
It breaks DATE with tex shuffle (Haunting Ground 2, Superman shadow of
Apokolips, possibly others too).
2019-05-24 01:17:33 +02:00
lightningterror 3289dc1cc7 gsdx-gui: update alpha stencil, crc hack level tooltips. 2019-05-23 18:11:26 +02:00
lightningterror 87808fee03 gsdx-hw: Purge GSC_GTASanAndreas crc hacks.
Auto flush allows us to render the effects properly.
Small ghosting may not be an actual issues as it's also present on sw
renderer.
2019-05-17 03:35:17 +02:00
Shanoah Alkire 2941fd9b87 wx: Replace a bunch of wx 2.8 macros with the wx 3.x versions. 2019-05-11 20:43:47 -07:00
Shanoah Alkire 5d4ae31ba1 Add a few default functions in explicitly. (-Wdeprecated-copy) 2019-05-11 19:18:18 -07:00
Shanoah Alkire 284880f768 GSdx: Variables should be initialized in the order in which they are declared. (-Wreorder) 2019-05-11 19:00:29 -07:00
Kojin 2d46bc661d gsdx-d3d11: ensure texture size of at least 1x1 2019-05-11 22:23:12 +02:00
lightningterror 9a5225dfdf gsdx-hw: Purge GSC_SimpsonsGame crc hacks.
Upscaling issue can be resolved with Half Pixel Offset Normal.
2019-05-05 23:37:18 +02:00
lightningterror be46832c7b gsdx-hw/gamedb: Add Star Wars - The Force Unleashed to gamedb and crc list. 2019-05-03 00:47:45 +02:00
lightningterror 637f777ea9 gsdx-hw: Update OI_StarWarsForceUnleashed hack.
Remove hack that was replaced by OI_GsMemClear and OI_DoubleHalfClear.
2019-05-02 22:53:44 +02:00
lightningterror eb0d22626f gsdx-hw: Purge GSC_StarWarsForceUnleashed crc hacks.
Shadows are rendered correctly with basic blending on opengl, high on
d3d11.
2019-05-02 21:07:46 +02:00
Kojin de0c4a7fc7 gsdx-hw: Check for null texture before commit in hacks. (#2951)
Issue ##2943
2019-05-02 19:57:00 +02:00
lightningterror 5a69a2f689 gsdx-sw: Add an option to toggle auto flush on sw renderer.
Windows + Linux.
2019-05-02 15:35:55 +02:00
Shanoah Alkire b270c1bb67 onepad: Cleanup in a few places. 2019-04-28 01:36:43 -07:00
Shanoah Alkire 6a202c9b5f onepad: Update to include latest controller database. 2019-04-27 21:15:53 -07:00
Shanoah Alkire d00b8081ac onepad: bring the sensibility changes over to onepad as well as onepad_legacy. 2019-04-27 19:30:29 -07:00
Yaroslav Salnikov ff9749f6dc Onepad (legacy) sensibility implementation for linux (#2932)
* Implementation of onepad sensibility for linux

* cast floats to int

* Fix the sensibility sanity checking, and clean up the dialog box a bit.
2019-04-27 18:35:35 -07:00
Gregory Hainaut ead3d21bdb gsdx ogl: commit texture in copy function
So far not yet used but safer this way
2019-04-26 12:40:04 +02:00
Gregory Hainaut 568b96b885 gsdx ogl: only always uncommit texture in debug build
It is good for memory but bad for the speed. There is likely a better trade-off
but it should be enough for now
2019-04-26 12:40:04 +02:00
Gregory Hainaut 70c3c1a48f gsdx ogl: always commit a sparse texture when force_texture_clear is enabled
The goal is to ensure the behavior of the option. VRAM usage isn't important
as option is mainly intented for debug purpose.
2019-04-26 12:40:04 +02:00
lightningterror e77aac0bf1 gsdx-ogl: Do some integer casts for destination texture commit to StretchRect.
Fixes warning.
2019-04-26 12:40:04 +02:00
Gregory Hainaut bdcf83ca45 gsdx ogl: sparse texture : only commit new area
Avoid potential driver overhead
2019-04-26 12:40:04 +02:00
Gregory Hainaut bb306dfe90 gsdx hw: commit texture before a clear in OI hack
Note I didn't bother to compute the draw region for single game hack.
Gain would be 0 if game doesn't suffer of memory issue in the first place
2019-04-26 12:40:04 +02:00
Kojin 116a5d822c gsdx-ogl: update Save() to use committed size of texture 2019-04-26 12:40:04 +02:00
Kojin 9618283217 gsdx-ogl: Add detection of Sparse Depth in isDss() 2019-04-26 12:40:04 +02:00
Kojin 55e95cc552 gsdx-ogl: add destination texture commit to StretchRect 2019-04-26 12:40:04 +02:00
Kojin e9989a5966 gsdx: enable sparse render target in TC 2019-04-26 12:40:04 +02:00
Kojin a1cdeb2fd1 gsdx: add uncommit in recycle 2019-04-26 12:40:04 +02:00
Kojin 4e675ef6e1 gsdx-ogl: add texture commit ogl renderer 2019-04-26 12:40:04 +02:00
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