Gregory Hainaut
ed21d88735
gsdx-ogl: add support of Intel GPU on Windows
...
It requires at least an Ivy Bridge GPU.
2015-08-18 19:06:43 +02:00
refractionpcsx2
8539805691
Merge pull request #690 from micove/VS_universal_sln
...
VS Now uses a universal solutions file - VS 2012 and below dropped due to incompatibility with C++11
2015-08-18 11:40:53 +01:00
refractionpcsx2
a4f8c6d5b3
Merge pull request #770 from micove/Lintian_Fixes
...
Fix things found using lintian by micove. Grammatical changes only.
2015-08-18 10:19:37 +01:00
Gregory Hainaut
37661f3a86
gsdx-ogl: fix blending regression (VP2)
...
Negative factor must be disabled in negative accumulation "-Cs*As + Cd"
Shader must output Cs*As and blending unit will do the Cd - C subtraction
2015-08-18 09:14:11 +02:00
Miguel A. Colón Vélez
a1de0614d7
Remove vs2012 files.
...
It does not support several things from C99/C++11 that are
used in the project.
2015-08-18 01:15:51 -04:00
Miguel A. Colón Vélez
f22bc63fee
Disable 8,000+ warnings.
...
Someone can try renaming v,a,b,m,t but since they are
shadowed one mistakes can mess too much hence the warning.
2015-08-18 00:45:14 -04:00
Miguel A. Colón Vélez
51bd9fe40e
Fix compilation errors of the old plugins.
...
- zerospu2: include stdint.h in Windows. (VC2012+)
- CDVDolio: Remove hash_map (not used, VC2015+)
- zerogs: Fix extern and link to utilities. (VC2012+)
- zzogl: Port windows part to wx30. (VC2012+)
2015-08-18 00:45:03 -04:00
Miguel A. Colón Vélez
a1e56518a5
Rename inside the files.
2015-08-18 00:44:49 -04:00
Miguel A. Colón Vélez
277217353e
Rename files.
2015-08-18 00:44:35 -04:00
Miguel A. Colón Vélez
1fe5aceded
Enable round-tripping.
...
- Remove ToolsVersion
- Use $(DefaultPlatformToolset)_xp until XP support is dropped.
Note: opencl had no XP support and was not enabled in VS2012.
2015-08-18 00:44:19 -04:00
Miguel A. Colón Vélez
f52988b93c
Run devenv /upgrade
...
This ensures the solution can do round-tripping.
2015-08-18 00:44:02 -04:00
Miguel A. Colón Vélez
42d64b027e
Add wx30 to old plugins.
...
- Remove wx28
- Add libpng since wx30 depends on it
- Add wx30 dependencies to ZZogl.
2015-08-18 00:43:50 -04:00
Miguel A. Colón Vélez
21c4e6caa6
Fix things found by lintian.
...
I: pcsx2: spelling-error-in-binary usr/lib/i386-linux-gnu/pcsx2/libGSdx-1.0.0.so allows to allows one to
I: pcsx2: spelling-error-in-binary usr/lib/i386-linux-gnu/pcsx2/libGSdx-1.0.0.so Allow to Allow one to
.
Apparently lintian checks grammar too (most common ones).
2015-08-17 22:00:07 -04:00
Gregory Hainaut
260c12756a
gsdx-ogl: accelerate Cd - Cs * Alpha in sw blending
...
It is similar as Cd + Cs * Alpha except the operator
It would help to emulate other color clipping case correctly in basic
mode at full speed
2015-08-16 18:12:34 +02:00
Jonathan Li
6580f4922f
gsdx-ogl: correct fbmask conversion on texture shuffle
...
Fbmask is RGBA8 and must be converted to RGB5A1
=> bit 31 must be moved to bit 15
Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com>
2015-08-16 14:06:10 +02:00
Gregory Hainaut
c32f1dfc23
gsdx-ogl: fix blend clear regression
...
Field selector are very dangerous to use.
Fix #764
2015-08-15 20:06:34 +02:00
Gregory Hainaut
0e3491bd58
gsdx-ogl: always do RW RT check
...
Jak uses it with triangle rendering.
2015-08-15 20:06:34 +02:00
Gregory Hainaut
c7b2f9d1d2
gsdx-ogl: setup fbo to always write to first buffer
...
GL_NONE was kind of useless because nothing was attached anyway
2015-08-15 20:06:34 +02:00
Gregory Hainaut
87f497af0a
gsdx-ogl: remove an useless variable
2015-08-15 20:06:34 +02:00
Gregory Hainaut
2e9ff045e1
gsdx-ogl: try another implementation for uniform buffer
...
It is slower but keep it for a bindless trial
2015-08-15 20:06:34 +02:00
Gregory Hainaut
3145031c05
gsdx-ogl: add glBindBufferRange function pointer
2015-08-15 20:06:34 +02:00
Jonathan Li
63c26c45ec
gsdx: Clean up Wild Arms hack cruft
...
The Wild Arms Offset hack can only be on or off. There is no third
state. Convert the three-state checkbox into a two-state checkbox, fix
the description and remove a leftover.
2015-08-15 10:54:03 +01:00
Jonathan Li
1915bf1a61
gsdx:linux: Fix tooltip and clarify/fix 2 labels
...
Half-pixel offset option now uses the correct tooltip.
Offset Hack -> Half-pixel Offset Hack
Wild arm Hack -> Wild Arms Hack
2015-08-15 09:53:48 +01:00
Gregory Hainaut
87dcb9336f
gsdx-ogl: don't bind the 0 texture to be compatible with the Nvidia debugger
2015-08-13 09:57:51 +02:00
Gregory Hainaut
84744d429e
gsdx: allow to test glsl shader without replayer
...
This way users can test it too.
2015-08-13 08:48:05 +02:00
Gregory Hainaut
2f9d5334ee
gsdx:EGL: prefer EGL over GLX + add some error messages
2015-08-13 08:48:05 +02:00
Gregory Hainaut
84e6fb45e8
gsdx-replayer:linux: allow to use env variable as default parameter
...
GSDUMP_SO <= the so plugin
GSDUMP_CONF <= the dir that contains the ini
2015-08-13 08:48:05 +02:00
Gregory Hainaut
6046d6c417
Merge pull request #749 from PCSX2/gsdx-micro-optimization
...
Gsdx micro optimization
2015-08-12 08:54:36 +02:00
Gregory Hainaut
98c74879bf
Merge pull request #718 from PCSX2/depth-color-direct-write
...
Depth color direct write
2015-08-10 15:50:48 +02:00
Gregory Hainaut
0663501d6f
gsdx-linux: disable perf monitor on release build
...
Code is rather slow on linux. Expect a 5-10% perf increase
2015-08-10 08:35:16 +02:00
Gregory Hainaut
9f92f63194
gsdx-ogl: Use GetAlphaMinMax to limit the scope of FULL accurate blending
...
Provide a massive speed up in this level.
2015-08-09 13:44:31 +02:00
Gregory Hainaut
61694013a5
gsdx-ogl: compact blending parameter structure
...
Save 656B of data. It is good for the cache.
2015-08-09 13:44:30 +02:00
Gregory Hainaut
df3ade896b
gsdx-ogl: use integer for blend factor
...
Integer argument&comparison might be lighter
V2: Forget to change one OMSetBlendState call
2015-08-09 13:44:05 +02:00
Gregory Hainaut
0e783f0003
Merge pull request #750 from nE0sIghT/feature/deoptimize
...
Use global compiler optimization flags instead of defining them for every plugin/binary
2015-08-08 16:42:12 +02:00
nE0sIghT
e1272dc2f9
Use global compiler optimization flags instead of defining them for every plugin/binary
2015-08-08 16:25:17 +03:00
bositman
ca22c1bdae
Merge pull request #747 from micove/Portaudio_Unicode
...
Windows: PortAudio Unicode - Fixes error when booting a game and using SPU2-X portaudio on UTF8 windows locales
2015-08-08 12:17:25 +03:00
Gregory Hainaut
5b57405517
gsdx-ogl: blend management cleanup
...
* reorder the blend function
* remove OM bsel object
* add a bit to support pabe (miss the glsl part)
2015-08-08 09:18:09 +02:00
Gregory Hainaut
4d12410707
gsdx-ogl: latch constant buffer in rendering object
...
* Initialization of the object is done once
* Avoid to reupload it when an useless parameter toggle
=> -10% of UBO update
2015-08-08 09:18:09 +02:00
Gregory Hainaut
bd0de8fbaf
glsl: (colclip) HDR doesn't need wrapping neither clamping
...
Might save a couple of instruction in the PS
2015-08-08 09:18:09 +02:00
Gregory Hainaut
8a4c0e9782
cmake: drop extra alignment on GSdx
...
It requires extensive tests
2015-08-08 09:18:09 +02:00
Gregory Hainaut
1557f82b11
gsdx:clut: comment old unused clut code
2015-08-08 09:17:21 +02:00
Gregory Hainaut
d822b6bd1a
gsdx-ogl: add some comments for the future
2015-08-08 09:17:06 +02:00
Gregory Hainaut
b17803bb34
gsdx-ogl: wipeout of GL_ARB_bindless_texture
...
Code is completely broken. It doesn't help to improve speed.
Remove 200 lines ;)
2015-08-08 09:16:49 +02:00
Gregory Hainaut
b3919fde95
gsdx-linux: remove an old delay that pollute my benchmark mode
...
Also add a glFinish to ensure rendering is done
2015-08-08 09:16:13 +02:00
Miguel A. Colón Vélez
0e533e1630
Fix Unicode issues in SPU2-X with PortAudio.
2015-08-07 15:51:54 -04:00
gabest11
d826d925db
gsdx: eliminated a few bugs in the texture size changer algorithm
2015-08-07 02:08:29 +02:00
Jonathan Li
c09501ad9a
gsdx:linux: Add GSDrawingContext.cpp to CMakeLists.txt
...
Fixes the missing symbol error.
2015-08-06 18:17:28 +01:00
Gregory Hainaut
39ce8835f7
gsdx:linux: use unordered hash
...
It seems a bit faster on 'perf' tool
2015-08-05 22:55:12 +02:00
Gregory Hainaut
921b22ac31
gsdx-ogl: drop useless parameter of OMSetDepthStencilState
2015-08-05 22:55:12 +02:00
Gregory Hainaut
b7e16b5989
gsdx-ogl: clean the blending management
...
Intially GSBlendStateOGL was an alias of the m_blendMapD3D9 array
The object was replaced by an index in the array. Save 2k of memory duplication.
And too much useless code.
v2: push/pop blending state in DATE stuff
v3: remove m_state which is useless now
2015-08-05 22:55:12 +02:00
Gregory Hainaut
717f0fcb4d
gsdx-ogl: optimize fbmask setup
2015-08-05 22:55:12 +02:00
gabest11
49b3acea72
gsdx: texture size reduction in sw mode, fixes Stolen, less memory usage in general.
2015-08-05 19:11:41 +02:00
Gregory Hainaut
73e2ff6ff6
gsdx-ogl: change PrimitiveOverlap algo from O(n^2) to O(n)
...
+ only enable this optimization when it is useful (date or sw blending)
Less impact on the perf even for big vertex array
2015-08-05 17:59:55 +02:00
Miguel A. Colón Vélez
6462393aaf
Introduce end-of-line normalization
...
Signed-off-by: Gregory Hainaut <gregory.hainaut@gmail.com>
2015-08-04 23:52:48 +02:00
Miguel A. Colón Vélez
a42a236961
Gsdx: Move the stdext namespace declaration.
...
This will eventually lead to
error C2871: 'stdext' : a namespace with this name does not exist.
might as well fix it now.
2015-08-04 22:16:15 +02:00
Miguel A. Colón Vélez
30c6389ed9
VS2015: Fix compilation
...
Error C2338 The C++ Standard forbids containers of const elements
because allocator<const T> is ill-formed. (compiling source file GS.cpp)
2015-08-04 22:16:04 +02:00
Miguel A. Colón Vélez
d45676b478
Merge local changes to xbyak 4.84
2015-08-04 22:15:52 +02:00
Miguel A. Colón Vélez
41094ac22e
Update from xbyak 4.00 to 4.84.
2015-08-04 22:15:46 +02:00
Miguel A. Colón Vélez
e20768d257
VS2015: Fix w32pthreads and xpad
2015-08-04 22:15:36 +02:00
Gregory Hainaut
9d1674db99
gsdx-gui: remove useless linux ifdef
2015-08-04 22:08:55 +02:00
Gregory Hainaut
36554c3375
Merge branch 'hdr-colclip-32bits'
2015-08-04 21:55:40 +02:00
Gregory Hainaut
45bb27d6db
gsdx-ogl: extend HDR colclip to 32 bits texture
...
Unfortunately 16 bits wasn't enough for Castlevania.
2015-08-04 21:54:27 +02:00
Gregory Hainaut
c6ff7531fb
gsdx-ogl: performance boost on virtuafighter
2015-08-04 21:26:03 +02:00
Gregory Hainaut
d80aa0b0bd
gsdx-ogl: remove 2 printfs
...
GL_INS is a better tracing solution
2015-08-04 20:47:02 +02:00
Gregory Hainaut
744f9ebc09
gsdx-ogl: rare corner case when both texture shuffle and date are enabled
...
In texture shuffle mode the texture data is either RG or BA. It means
that DATE must either checks MSB of G or A.
Close #693
2015-08-04 20:10:44 +02:00
Gregory Hainaut
6cb0443227
gsdx: disable depth rendering if rt == depth
...
I used to disable the RT but it doesn't work well with 50cents. It seems
texture writes weren't propagated correctly to the depth buffer. Besides
the game write an alpha value whereas depth is 24 bits only...
2015-08-04 19:39:29 +02:00
Gregory Hainaut
3784ea768f
gsdx: check null pointer when doing a texture clear
2015-08-04 19:26:17 +02:00
gabest11
42f51591df
gsdx: lupin 3 fix, texture addressing outside the limits, only for sw and opencl yet
2015-08-04 13:27:08 +02:00
gabest11
d631030608
gsdx: fixed some of the renames where it made no sense, also added a commend about lupin 3rd.
2015-08-04 03:36:42 +02:00
Maxxus
c0f85de17f
onepad: Minimum code needed to get Dualshock 3 working on recent linux and evdev releases.
...
Commit message edited by Gregory.
Comment below from Jonathan Li
On my system, /dev/input/event13 (evdev interface) and /dev/input/js0 (joystick interface) correspond to the DS3 on my system. User/group ownership are both root.
With /dev/input/event13 at 0640 and /dev/input/js0 at 0644 - SDL2 detects no pad, SDL1 detects a 19 button, 27 axis pad
With /dev/input/event13 at 0666 and /dev/input/js0 at 0644 - Both SDL1 and SDL2 report a 19 button, 4 axis pad.
SDL2 only uses the evdev interface, SDL1 uses the evdev interface but if that fails, it uses the joystick interface.
2015-08-03 19:34:08 +02:00
gabest11
e010004f1f
gsdx: _isnan was not reliable, rewrote it as GSVector4::replace_nan, it uses cmpps and the result as the mask to blend the original value and FLT_MAX. No jumps or function calls.
2015-08-03 14:35:47 +02:00
gabest11
85117ecbdd
gsdx: simplified isnan test, it compiles to an inline sse instruction and a flag test, silent hill dump still looks fine.
2015-08-03 11:27:14 +02:00
Gregory Hainaut
6e1cd077a9
gsdx-debug: push ubo in a group
2015-08-03 08:46:25 +02:00
Gregory Hainaut
e972f4f4dd
gsdx-ogl: extend device to support an offset for normal draw
2015-08-02 21:30:19 +02:00
Gregory Hainaut
cabd7409e5
gsdx-ogl: don't validate the pipeline
...
Too noisy in debugger trace. Never catch any errors anyway.
2015-08-02 21:30:19 +02:00
Gregory Hainaut
59cdf77784
gsdx-ogl: create a new function to set the blending state
2015-08-02 21:30:19 +02:00
Gregory Hainaut
1da611fb75
gsdx-ogl: clean PS selector
2015-08-02 21:30:19 +02:00
gabest11
542dd33169
Merge branch 'master' of https://github.com/pcsx2/pcsx2
2015-08-02 20:27:33 +02:00
gabest11
a1a842b07f
gsdx: date/datm fix for 16-bit frame buffer in sw rendering mode
2015-08-02 20:21:49 +02:00
Gregory Hainaut
8424c18e9f
Merge pull request #688 from PCSX2/hdr-colclip
...
Hdr colclip
2015-08-02 18:13:28 +02:00
Gregory Hainaut
1f402b1b56
gsdx-ogl: fix bad detection of overlapping
...
avoid rendering corruption with SW blending
2015-08-01 13:29:25 +02:00
Gregory Hainaut
ec007ac8d0
gsdx-ogl: support accurate blending without geometry shader
...
For the Mesa driver
2015-08-01 13:26:15 +02:00
Gregory Hainaut
4a3c145c72
gsdx-ogl: depth support: better support of 16 bits z buffer
...
Fix issue in socom2
2015-08-01 01:28:41 +02:00
Gregory Hainaut
eb0fa8c7dc
gsdx-ogl: fix bad detection of overlapping
...
avoid rendering corruption with SW blending
2015-08-01 01:27:22 +02:00
Gregory Hainaut
8452d2ccfe
gsdx-ogl: fbmask regression! don't use bit operation with integer
2015-07-31 21:10:58 +02:00
Gregory Hainaut
fff59f547d
gsdx-ogl: fbmask regression! don't use bit operation with integer
2015-07-31 19:43:06 +02:00
Gregory Hainaut
a0edcb58af
gsdx-ogl: extend cclip blending level with destination alpha blending
...
The purpose is to emulate correctly destination alpha factor
An alpha channel of 128 is 1.0 in the GS but only ~0.5 in the GPU
I think few draw call use destination alpha so impact on perf must remains small.
2015-07-31 09:45:28 +02:00
Gregory Hainaut
97b38d9e1b
gsdx-ogl: directly set impossible mode in the blending table
...
Avoid to hack it in the creation
Allow in the future to reuse the table directly instead of converting
in a blend object
2015-07-31 09:45:28 +02:00
Gregory Hainaut
8554f32086
gsdx-ogl: clean the blend table
...
Remove old shader define
Prefix macro with BLEND_
Add some notes to explain the special symbol
2015-07-31 09:45:28 +02:00
Gregory Hainaut
cfd0fd6cc8
gsdx-ogl: remove old colclip algo
2015-07-31 09:45:28 +02:00
Gregory Hainaut
93c47feb7c
gsdx-ogl: replace old colclip algo with the HDR algo
...
Similar speed but more accurate
Allow to clean the code
2015-07-31 09:45:28 +02:00
Gregory Hainaut
83f874db93
gsdx-ogl: remove bsel.ps
...
Just clear bsel.abe to disable blending
2015-07-31 09:45:28 +02:00
Gregory Hainaut
25298c70f7
gsdx-ogl: move blending management into a separate function
2015-07-31 09:45:28 +02:00
Gregory Hainaut
25bd5f5e85
gsdx-ogl: request texture barrier to emulate accurate date
...
Actually it can partially be done with GL_ARB_shader_image_load_store
extension. However all drivers that support shader_image have
texture barrier too.
2015-07-31 09:45:28 +02:00
Gregory Hainaut
2901e94ebc
gsdx-ogl: always bind the RT as input texture
...
To avoid code duplication
2015-07-31 09:45:28 +02:00
Gregory Hainaut
1fe3e04ce3
gsdx-ogl: don't alias m_env/m_context variable
...
It is cumbersome to move code
2015-07-31 09:45:28 +02:00
Gregory Hainaut
8f27a5a92b
gsdx-ogl: only enable fast accurate colclip in level3
...
Until we drop the old method
2015-07-31 09:45:05 +02:00
Gregory Hainaut
83dfc6b633
gsdx-ogl: clean a bit selector code
...
Use countof macro (avoid to duplicate the size)
Fix the size of array
Remove useless alpha_stencil case
2015-07-30 18:36:05 +02:00
Gregory Hainaut
e026f1bac6
gsdx-ogl: implement a fast accurate colclip algo
...
The idea is to use a floating texture to accumulate the data and
then do a final postprocessing pass to apply the modulo
v2:
* use bounding box to
* fix vertex corruption issue
* use negative number in shader which allow to use half float (+12
fps@4x)
2015-07-30 18:34:52 +02:00
Gregory Hainaut
aa8f5848d1
gsdx-ogl: always issue a barrier when requested
...
Safer this way
2015-07-30 18:24:36 +02:00