Gregory Hainaut
f2c77ffa08
gsdx:tc: detect texture shuffle in previous frame
...
GoW2 uses the effect at the start of a new frame and therefore need the
state of the previous frame. (Note 1 issue remains)
Ricky need to be tested.
2015-07-26 10:14:07 +02:00
Jonathan Li
25b9b24f77
spu2-x: windows: Fix incorrect use of scanf
...
Half width specifiers were not used, so scanf was writing ints into
bytes.
Note: Visual Studio 2013 doesn't support the hh format specifier.
2015-07-23 19:01:15 +01:00
Jonathan Li
150c53af0f
spu2-x: windows: Remove Unicode to Ascii conversion
...
Use swscanf instead of sscanf to read wide characters directly
2015-07-23 18:58:24 +01:00
Gregory Hainaut
cb4af8fe83
gsdx-ogl: small optimization for the GPU
...
Gain: 1% at 4x on SotC (it partially compensates recent additions)
When the color is constant and equal to 128, the MODULATE mode is
equivalent to the DECAL mode. It saves 5 instructions on the FS.
2015-07-21 08:19:36 +02:00
Gregory Hainaut
7ca463bf75
gsdx: NaN is likely not well supported for S & T
...
Add also a comment to explain the NaN issue on Q
2015-07-21 08:19:36 +02:00
Gregory Hainaut
223b7daa1d
gsdx-ogl: fix fbmask regression
...
I forget to remove an useless 255.0f factor
2015-07-19 23:55:27 +02:00
Gregory Hainaut
a54e636364
gsdx-linux: add a tooltip for the filtering option
2015-07-19 23:27:45 +02:00
Gregory Hainaut
5c740ff41e
gsdx-ogl: wipeout AlphaStencil & Alpha hack
...
Accurate options do a better jobs. Technically it can still
be useful for old gpu/driver that doesn't support the GL4.5 extension.
On Windows, you can still rely on Dx
On linux, free driver support it (except Intel)
2015-07-19 22:43:48 +02:00
Gregory Hainaut
759e75091a
gsdx-gui: yes openGL support correctly 8 bits texture
2015-07-19 17:29:25 +02:00
Gregory Hainaut
6719fc89a6
gsdx-sw: Nan is not well supported in Vertex
...
It fixes the bad light on Silent Hill with the SW renderer.
Full story
if Q is NaN, m_vt.m_eq.q becomes wrongly true
/Q will wrongly be optimized in the "Vertex Shader" of the SW
Note: Add an assert for the STQ handler
Code path is quite hot so no need to add extra check for nothing
2015-07-19 16:41:05 +02:00
Gregory Hainaut
7f76883b98
Merge pull request #658 from ssakash/patch-34
...
Add Accurate Frame Buffer mask for Windows [GUI] and remove some old options.
2015-07-19 09:07:13 +02:00
Gregory Hainaut
38c086008d
glsl: round blending as SW renderer
...
Better tone on God of War with ultra accurate mode
2015-07-18 17:16:46 +02:00
Gregory Hainaut
88cd333839
gsdx-ogl: don't enable both HW&SW blending
2015-07-18 16:15:52 +02:00
Gregory Hainaut
c4e165067d
glsl: use signed integer when working with substraction...
...
It mostly fixes rendering of GoW with ultra blending
Color is still a bit wrong but rounding is likely incorrect
2015-07-18 14:41:03 +02:00
Gregory Hainaut
c701ab4368
glsl: don't use normalized value for color range
...
Globally shader uses less intruction (except blending part)
It would also allow to improve the rounding of color
2015-07-18 14:41:03 +02:00
Gregory Hainaut
57394a03e0
partially revert: glsl: disable computing of extra alpha coeff in SW blending
...
It generates undefined data in screen. Maybe blending isn't switch off properly.
I need to investigate it.
2015-07-18 14:41:03 +02:00
Gregory Hainaut
5f5266ba45
gsdx-ogl-debug: don't optimize alpha channel in dump
...
Allow to dump AEM part of the shader
2015-07-18 14:40:57 +02:00
Gregory Hainaut
036cb229a3
glsl: add various comment for future idea
...
For example GL4 GPU supports special bit operation
2015-07-18 14:40:57 +02:00
Gregory Hainaut
6c1c857024
gsdx-ogl-debug: properly detect start of instruction in dump
2015-07-18 14:40:46 +02:00
Akash
37897eb922
add accurate framebuffer mask for windows.
2015-07-18 11:24:00 +05:30
Akash
7c4f3d28ce
remove is_gsopen stuffs since old GUI is deprecated.
2015-07-18 10:50:34 +05:30
Gregory Hainaut
698dda2310
gsdx-ogl: remove subroutine from the gui too
2015-07-17 22:28:59 +02:00
Gregory Hainaut
36e83b42ce
glsl: round texture and fragment color as the SW renderer
...
GS uses integer value and does integer operation too.
This commit trunc the sampled texture, the interpoled fragment color
and the product of the 2.
It impacts negatively the perf of about 3/4% (GPU) but it fixes rendering on
suikoden and potentially some others games too.
2015-07-17 21:08:49 +02:00
Gregory Hainaut
5f247a6e16
glsl: rewrite tfx function to ease future update
...
No need to put lots of ifdef, compiler will optimize everything
It increases a bit the readability
2015-07-17 21:08:49 +02:00
Gregory Hainaut
ea9e608288
gsdx-ogl: fix texture palette mask
2015-07-17 21:08:49 +02:00
Gregory Hainaut
b4c04ed00a
gsdx-ogl: wipeout subroutine code
...
Code was completey bitrotten
Code was a partial test (and yet 500 lines already)
Shader is more and more complex and multithreading support greatly
reduce the cost of shader switch
2015-07-17 21:08:49 +02:00
Gregory Hainaut
e3751f6cd9
glsl: disable computing of extra alpha coeff in SW blending
...
Hum, I'm curious of the impact to enable only this code when it is actually used.
2015-07-17 21:08:49 +02:00
Gregory Hainaut
784822a5c2
glsl: redo blending management to use A/B/C/D directly
...
1/ Code is much more readable
2/ It will allow to round differently the operation in the future
2015-07-17 21:08:49 +02:00
Gregory Hainaut
e245b27c97
gsdx-ogl-debug: allow to dump various ps shader
...
Nvidia allows to get the ASM of the shader of the compiled shader. It is useful
to check the performance.
It also allow me to compile most of shader code path for QA
Dump is enabled in linux replayer + debug_glsl_shader = 2
2015-07-17 21:08:48 +02:00
Jonathan Li
6c300288f9
gsdx: windows: Make GSReplay work for OpenGL
...
On Windows, GSReplay does not work with the OpenGL hardware and software
renderer. Make it work.
2015-07-15 20:40:47 +01:00
Gregory Hainaut
6ed137dc9c
gsdx-ogl: log openGL driver version
2015-07-13 12:35:55 +02:00
refractionpcsx2
854403af81
Merge pull request #654 from TheLastRar/empty-ethernet-setting-crash
...
Dev9ghz: Fix crash when ethernet adapter is not selected
2015-07-12 22:34:04 +01:00
TheLastRar
ebafb24099
dev9ghz: proper casing
2015-07-12 18:38:23 +01:00
TheLastRar
820323bc1e
dev9ghz: Check if user has selected an adapter
...
Avoid copying from an invalid pointer
2015-07-12 18:37:38 +01:00
Gregory Hainaut
c9d6ce3b63
Merge pull request #653 from PCSX2/texture-shuffle-again
...
gsdx: texture shuffle detection
2015-07-12 18:48:00 +02:00
Gregory Hainaut
8be32e4661
gsdx-tc: fix a memory leak when depth isn't fully supported
...
Fix issue #642
2015-07-12 17:57:42 +02:00
Gregory Hainaut
f6f28042bd
gsdx: texture shuffle detection
...
Don't check rt 32 bits state, it give false positive on suikoden
2015-07-12 15:21:04 +02:00
Gregory Hainaut
c660ea858b
gsdx: move some CRC hacks to full level
2015-07-11 15:14:11 +02:00
Gregory Hainaut
5f8d3b9e4b
gsdx-tc: remains in the memory
...
avoid a crash with kungfu panda
2015-07-11 14:35:35 +02:00
Gregory Hainaut
a4bad8fdbc
gsdx-ogl: avoid a bad conflict between accurate option
2015-07-11 14:35:35 +02:00
Gregory Hainaut
15b934eb2a
gsdx-ogl: remove useless colclip message
2015-07-11 14:35:35 +02:00
Gregory Hainaut
91fbe6f108
gsdx-ogl: add some code to fix black netting on some renderings
...
Code is not yet enabled because it requires extensive test
The idea is to replace point by a 1 pixels sprite with the help of
a geometry shader. In 4x, point will be replaced by a 4x4 sprite.
2015-07-11 14:35:35 +02:00
Gregory Hainaut
5e7ce63ed1
glsl: add a geometry shader to upscale GS_POINT
...
The purpose is to avoid upscaling issue on POINT rendering (black netting on some FMVs)
2015-07-11 14:35:34 +02:00
Gregory Hainaut
2ccf108534
gsdx-ogl: add back a selector for the Geometry Shader
2015-07-11 14:35:34 +02:00
Gregory Hainaut
7f7f6c3b51
Merge pull request #640 from turtleli/gs-frame-title-fixes
...
GS frame title fixes
2015-07-11 09:47:27 +02:00
Gregory Hainaut
5ed45b6806
Merge pull request #644 from PCSX2/improve-texshuffle-detection
...
Improve texshuffle detection
2015-07-11 09:34:33 +02:00
Gregory Hainaut
ec61ad3667
gsdx-tc: Add some code for the future
...
Partially invalidate RT when there is a write in the middle of it (actually 2 pages below)
Code is not yet enabled because
1/ I want to stabilize latest update
2/ not sure of the impact of the code
3/ maybe it need a more generic version
2015-07-10 22:35:26 +02:00
Gregory Hainaut
5888913052
gsdx-debug: don't print any "notify" message
...
Too verbose
2015-07-10 22:35:26 +02:00
Gregory Hainaut
6f9a89dcf2
gsdx-debug: print memory usage of all textures pools
...
It is a bit crude but it allow to see the impact of code and options.
2015-07-10 22:35:26 +02:00
Gregory Hainaut
350db223d3
gsdx: only propagate texture shuffle detection if tex shuffle is detected
2015-07-10 14:06:39 +02:00