Commit Graph

5483 Commits

Author SHA1 Message Date
gabest11 f68f007f00 GSdx: the promised index buffer update, needed a lot of changes, expect bugs in the next dozen revisions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5045 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-05 02:40:24 +00:00
gregory.hainaut 0e80e0adca gsdx-ogl:
* add some define to enable/disable SDL so we could build gsdx without SDL
* debug: dump data based on frame count rather from draw count


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5044 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 23:19:17 +00:00
arcum42 4c5d1e11a8 gsdx-ogl: Fix a few glsl errors I missed last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5043 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 11:14:57 +00:00
arcum42 0116402620 gsdx-ogl: Fix a few glsl errors. Comment out line 218 of GSDevice.cpp. Mess with the fifo hack a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5042 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 10:42:53 +00:00
gregory.hainaut 76542f89c9 gsdx-ogl: code seems compatible with an opengl 3.3 context. Only load some shader extensions.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5041 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 17:17:04 +00:00
gregory.hainaut cc6e486742 gsdx-ogl:
* add a new define (DISABLE_DUAL_BLEND) to easily test blend mode


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5040 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 16:12:34 +00:00
gregory.hainaut 90c52c27f6 gsdx-ogl:
* replace hexa debug value with nice string for standard human
* move things around


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5039 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 13:11:40 +00:00
gregory.hainaut c1d7b81a55 gsdx-ogl:
* Use a geometry shader pass-through to replace previous AMD workaround
* various cosmetic change


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5038 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-02 20:08:11 +00:00
arcum42 bffde4fd5e Get rid of some irritating warnings in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5037 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-31 18:50:17 +00:00
gabest11 5325f9b490 GSdx: Small optimizations here and there, just saving changes before trying to add an index buffer, that might help reducing load on the main gs thread a bit. That's where I think the bottleneck currently is in games with high polygon count.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5036 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-31 15:41:07 +00:00
gregory.hainaut 2f4e2d8b6b GSdx-ogl: happy new years commit :)
* move all vertex buffer stuff into the class
* Bypass FIFO2 because of multithread issue with OGL(temporary workaround until we found a nicer solutions)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5035 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-31 14:38:58 +00:00
gregory.hainaut 9ca65c9cc6 gsdx-ogl: LINUX-ONLY
* invert the index of fragment output. Seem to work better on Nvidia (strangely no impact for AMD)
* opengl support pitch too, so remove useless copy to an fbo


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5034 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-30 22:25:17 +00:00
gregory.hainaut ea33beb360 gsdx-ogl: LINUX-ONLY
* Fix the Geomtry shader to output 2 triangles for quad primitive (ie 2R rendering)
- There is an AMD  driver bug on geomtry shader input interface (well could be the spec too). Tell me if it still working on nvidia
* Add a workaroung to a previous AMD bug. It is impossible to unattach a shader so destroy the full shader pipeline...
* Be more strict on FBO management. Would optimize it later
* use a texture insted of a render buffer for depth-stencil management.
* add more dumping capabilities (in particular depth buffer)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5033 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-30 13:55:33 +00:00
ramapcsx2 b97dff6c89 Added a workaround for the savestate freeze bug in Gust games when the MTVU speedhack is active.
Aligning GIF packets on state save actions seems to cause some issues with the hack.

Still hope to find a better solution.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5032 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-29 17:08:17 +00:00
gregory.hainaut 000220f93f gsdx-ogl: LINUX-ONLY
* It works with the HW renderer !!!
* Not sure this fix will work with dual blending but we will see later
* screen is vertically flipped again...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5031 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-29 14:39:53 +00:00
gregory.hainaut aa499f4bfd gsdx-ogl: LINUX-ONLY
* fix vertex shader for HW renderer :) Remains the fragment part...
* add some dumping infrastucture (DUMP_START and DUMP_LENGTH)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5030 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-29 14:24:26 +00:00
avihal f550ffe991 GUI: Exclude Turbo/SlowMo factors from the presets. (Now can keep custom turbo/slowmo speeds while still using the presets)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5029 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 22:59:16 +00:00
gabest11 6f97ca35e2 GSdx: GSOffset::GetPages was caching a ridiculous amount of data, it isn't that much slower without it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5028 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 20:21:32 +00:00
gabest11 03bca19d99 GSdx: vs2008 fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5027 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 14:41:07 +00:00
gabest11 eaf06e8b1d GSdx: bit less idle time by refcouting used texture pages.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5026 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 14:10:20 +00:00
avihal 95b1c260af @gigahertz: some sensitivity is required when touching a small plugin! Let's hope I got it right :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5025 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 23:03:31 +00:00
gigaherz c9c94978e5 <avih> hmm.. this is wrong(-ish). I've updated portaudio, but spu2x still shows as version r4949 ... can this be fixed? or maybe i didn't compile it properly?
...
<avih> so, come on, touch spu2x to have recent rev number

Touched... hopefully I touched right. Felt awkward.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5024 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 21:03:53 +00:00
gigaherz 5483473da0 portaudio: Updated codebase from svn 1748 to svn 1802.
Notable changes:
 - Changes to buffer size calculations and latency calculations.

Not a big update, just wanted to commit something before the year ended!


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5023 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 17:42:18 +00:00
gregory.hainaut 720a841cb2 gsdx-ogl: merge from trunk (4990:5021)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5022 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 17:04:28 +00:00
gregory.hainaut 4f6796916a gsdx linux:
* add the code to select the attribute (still the default but can be changed now)
* add a hidden option (condvar) to select between the 2 threads algorithm


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5021 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 13:14:30 +00:00
gregory.hainaut ba14c557ed gsdx linux:
* use memory instead of tr1 (was the experimental implementation of c++11)
* remove strict aliasing optimization because I saw some bad warnings
* Fix pthread of the previous commit. Use default attribute but it might need some tuning


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5020 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 12:22:13 +00:00
gabest11 25072b99c7 GSdx: a few minor changes, please check if I wrapped the new pthread things correctly
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5019 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 09:15:35 +00:00
avihal 3aa3b1caf6 GSdx: Improved Genji CRC hack.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5018 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 08:28:32 +00:00
gregory.hainaut 7f3b11c7db gsdx:
* fix the new extra thread option in the gui dialog
* implement condition variable on linux. Will need some benchmark.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5017 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-26 22:30:59 +00:00
gabest11 2628d5bb7d GSdx: a little refinement to the fix for the issue that come up with Bully.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5016 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-25 07:26:42 +00:00
gabest11 ed8eb53c22 GSdx: Valkyrie Profile 2 fix (discussed under r5010 and r5012), this bug could have broken much more games, strange that it did not.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5015 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 15:02:48 +00:00
arcum42 fa5fcf47de Linux-only: Quick fix to the last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5014 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 11:25:44 +00:00
arcum42 48afd2c274 Linux-only: Removed a few obsolete files. Copied in a build script to make rebuilding the project a bit easier.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5013 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 11:15:42 +00:00
gabest11 bc7a930409 GSdx: This fixes the flickering in Bully, and probably games with the same problem. Could not check Valkyrie Profile Silmeria, yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5012 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 07:00:16 +00:00
ramapcsx2 7dfff148b8 GSdx: Hack around a problem with the texture cache finding depth stencils when there can't be any.
This makes the Arc the Lad fog issue go away.

Review would be nice though :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5011 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 20:58:10 +00:00
gabest11 963a6a653a GSdx: changes of r5007 did not help as much as I thought, disabled it for the time being, plus other minor optimizations
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5010 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 15:53:53 +00:00
gregory.hainaut 33a9ac370a gsdx-ogl: LINUX-ONLY
* implement offscreen and cache (mostly a copy past of dx)
* add the missing macro selector of the shader...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5009 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 12:32:40 +00:00
gabest11 da41bcd756 GSdx: Replaced condvar/srwlock imports with getprocaddress, it should work on XP and compile on vs2010 express again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5008 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 02:49:27 +00:00
gabest11 d5dbe7e7e9 GSdx: Moved filling up rendering threads on a new thread, to not block the main, it looks like now I can replace one of the spin loops with an event. Using events results in about -5% fps, but still pretty fast.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5007 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 14:36:54 +00:00
gregory.hainaut 6f5ac7b788 gsdx-ogl: LINUX-ONLY
* go back to opengl 4.1 (nvidia driver is buggy with 4.1).
* fix the backbuffer allocation. bad order of parameter
* fix remaining glsl error


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5006 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 14:12:12 +00:00
gabest11 2421c68bee GSdx: Saving the conditional var update (vista or better) before I try a new idea again. That Sync() call is wasting too much time, if there was only one queue then the main thread could also grab and process elements instead of just waiting for the workers.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5005 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 01:48:16 +00:00
avihal 5e0e4ce6a8 Fix Dynamic CRC hacks (got broken on r4991 )
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5004 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 23:35:30 +00:00
gregory.hainaut a9927a6e33 gsdx-ogl: LINUX-ONLY
* rework a little the shader to be hopefully compatible with nvidia
* request a pure 4.2 context (all gpu 4.1 capable support 4.2 anyway)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5003 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 23:09:36 +00:00
gregory.hainaut f604ba8d7f gsdx-ogl: LINUX-ONLY
Remove foreach feature not supported on old compiler


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5002 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 20:37:24 +00:00
gregory.hainaut fff11cf207 i18n: add more fallback for some languages (thanks to pg)
cmake: implement the new XDG_STD options
It allow to move all pcsx2 data from $HOME/PCSX2 to $XDG_CONFIG_DIR/pcsx2. Clearly a matter of personnal preference.
debian: drop the useless stable packet from the trunk. Only keep a copy on branch release



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5001 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 20:27:03 +00:00
gregory.hainaut 9272be182e gsdx-ogl: LINUX-ONLY
* add the forgotten hardware renderer object.

Oh my gosh! Opengl is 20% faster than Dx!!!


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5000 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 19:08:31 +00:00
gabest11 1691ab2cf0 GSdx: fixed vs2008 build errors
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4999 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 00:08:00 +00:00
gabest11 0b62c17d9c GSdx: Renamed the sw thread setting to "extra threads".
- 0: no multi-threading
- 1: gif packet processing and texture uploads run parallel with rendering, the slowest decides the fps, dual-cores can still suffer by the spin loops, I'll check that when I compile pcsx2 on my notebook
- 2: two rendering threads, on a decent cpu packet processing is going to be slower now, this is probably going to increase fps the most on quads
- 3: small fps increase
- 4+: even smaller. 

If you have a quad cpu with HT, 6 is the max, 1 + 1 is needed for pcsx2 and gsdx's basic tasks.

Also hacked palette writes to not force a read-back in hw mode (added in previous rev), it hit render targets in a surprising large number of games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4998 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-20 14:33:28 +00:00
gregory.hainaut e4c70ad229 gsdx-ogl: LINUX-ONLY
Forgot the shader file...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4997 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-19 21:04:16 +00:00
gregory.hainaut 83ad63a8a7 gsdx-ogl: LINUX-ONLY
* lay the foundation for the HW renderer on OGL


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4996 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-19 21:03:23 +00:00