raven02
2dd75b5b97
ClearBuffer()
2013-08-15 03:32:43 +08:00
raven02
9f0ca16df7
boolean fix
2013-08-15 03:21:42 +08:00
raven02
f49e5535a7
Few more boolean fix
2013-08-15 03:20:06 +08:00
Henrik Rydgard
96373132bb
Android buildfix
2013-08-14 20:42:13 +02:00
Henrik Rydgård
b66bd085ce
Merge pull request #3108 from raven02/patch-13
...
Fix wrong size generated FB which uses for render-to-texture
2013-08-14 08:38:27 -07:00
Unknown W. Brackets
f53426db9d
Obviously no reason for this to be virtual.
2013-08-13 21:42:48 -07:00
raven02
fad8b77044
Merge remote-tracking branch 'upstream/master' into patch-13
2013-08-14 07:29:56 +08:00
Unknown W. Brackets
8a59463351
Disabling warnings you don't understand = bad.
2013-08-13 01:01:40 -07:00
Unknown W. Brackets
49c7b9628a
Fix some correctness warnings.
2013-08-12 23:40:22 -07:00
Unknown W. Brackets
008052e6d6
Fix some variable hiding warnings.
2013-08-12 23:32:38 -07:00
Unknown W. Brackets
49ab98c7fd
Use atomic operations on Android + warning fixes.
2013-08-12 08:51:49 -07:00
Unknown W. Brackets
24203b1a5d
Improve performance on x86 as well using movq.
2013-08-12 08:40:54 -07:00
Unknown W. Brackets
5c96782f29
Improve performance on x64 at least.
...
Maybe can just ignore for 32? I'm not sure how bad it would be if it read
in between...
2013-08-12 02:42:30 -07:00
Unknown W. Brackets
cf7c718706
Use a timer to keep gpu/cpu in sync periodically.
...
Fixes Diva Extend demo, at least, losing FPS.
2013-08-11 13:41:42 -07:00
Henrik Rydgard
9109882c04
More microoptimization
2013-08-11 22:12:14 +02:00
Henrik Rydgard
8e2c485373
Some microoptimization
2013-08-11 22:12:14 +02:00
Henrik Rydgård
12275d0e3a
Merge pull request #3125 from raven02/patch-15
...
Some games like FF Type-0 inits viewport as 0x0
2013-08-11 13:01:11 -07:00
Unknown W. Brackets
e6b42768fe
Add a class to manage IO on a separate thread.
...
Also separate the logic for exiting the loop based on coreState. IO and
audio won't necessarily be tied to the frame.
2013-08-11 11:46:55 -07:00
raven02
1eaada15df
Reference and modified code from @arnastia
2013-08-12 02:30:17 +08:00
raven02
c2a86d647f
Fix wrong size generated of FBO for some games which uses it as render-to-texture
2013-08-12 02:20:55 +08:00
raven02
6c889e556b
Some games like FF Type-0 inits viewport as 0x0
2013-08-12 02:15:42 +08:00
Unknown W. Brackets
e0f699fd5f
Use a possibly harmless hack to prevent hangs.
...
Not sure where the problem is, but this fixes it pretty consistently for
me... seems like lists are somehow not being processed after becoming
processable?
2013-08-10 20:03:43 -07:00
Unknown W. Brackets
639ab8306b
SyncThread before deciding if the fbo is dirty.
...
Fixes fps drops in yet other games with multithreading enabled.
2013-08-10 18:45:07 -07:00
Unknown W. Brackets
26c072df51
Don't wait directly from GPUCommon, do it in sceGe.
...
Makes debugging a bit easier.
2013-08-10 18:24:40 -07:00
Unknown W. Brackets
cfb1d02182
Oops, left these here.
2013-08-10 17:18:31 -07:00
Unknown W. Brackets
55c07bdc73
Avoid a possible thread sync issue.
...
Could be that it's about to wake listsync, does, and then we wait.
2013-08-10 17:18:31 -07:00
Unknown W. Brackets
abc396cbe1
Sync the GPU thread on list/draw sync.
...
Otherwise, the CPU gets ahead (inside the frame) and games get confused.
I don't think there's any good workaround to avoid this.
2013-08-10 15:16:49 -07:00
Henrik Rydgård
85e17f03cc
Merge pull request #3118 from unknownbrackets/io-async
...
Prep work for pspFileSystem and two small fixes
2013-08-10 14:32:59 -07:00
Henrik Rydgard
a517b8d53f
Fix #3117 (by reverting part of a previous change), plus a minor change that might speed GT up.
2013-08-10 23:25:55 +02:00
Henrik Rydgard
8ba8b3ddd2
gcc warning fix
2013-08-10 18:39:28 +02:00
Henrik Rydgard
4d4b2990ec
GPU ShaderManager: Naming convention, inline a function
2013-08-10 18:39:27 +02:00
Unknown W. Brackets
1b838c4403
Move ThreadEventQueue to its own file.
2013-08-10 09:08:31 -07:00
raven02
6f994ec05f
Fix texture broken in God of War
2013-08-10 21:56:52 +08:00
Unknown W. Brackets
450e4c7fea
Factor out event queue logic to a template mixin.
2013-08-10 03:33:09 -07:00
Unknown W. Brackets
a80a7690c8
Fix SyncThread() not syncing during last event.
2013-08-09 23:18:37 -07:00
Unknown W. Brackets
5e363bcbd2
Don't allow gpu->Flush() to be called publicly.
2013-08-09 22:57:54 -07:00
Unknown W. Brackets
e82bae3708
Simplify easy_guard to avoid coding errors.
2013-08-09 22:57:53 -07:00
Unknown W. Brackets
1226c3dbd9
Try to prevent a deadlock if CPU doesn't NEXTFRAME.
2013-08-09 22:57:53 -07:00
Unknown W. Brackets
e71cf2ec7e
Don't queue Flush() etc. while on GPU thread.
...
Oops, that makes it not actually flush properly of course.
Also made a simpler guard wrapper to avoid extra braces in too many
places. Reduced contention areas slightly.
2013-08-09 22:57:52 -07:00
Unknown W. Brackets
68fb78e203
Be more careful with the stall address.
...
In case it's moved while running the list.
2013-08-09 22:57:52 -07:00
Unknown W. Brackets
8c69020fa8
Use separate condition vars/locks for GPU sync.
2013-08-09 22:57:51 -07:00
Unknown W. Brackets
b0e6967697
Rename UseCPUThread to SeparateCPUThread.
2013-08-09 22:41:33 -07:00
Unknown W. Brackets
a56cac1eb3
Bail when CPU thread disabled to ensure good perf.
2013-08-09 22:41:32 -07:00
Unknown W. Brackets
3819886e2e
Add a way to synchronize with the GPU thread.
2013-08-09 22:41:32 -07:00
Unknown W. Brackets
02e301e5fe
Add a simple message event system to the GE.
...
With this, the CPU thread feature now mostly works.
2013-08-09 22:41:31 -07:00
Unknown W. Brackets
52ca93aab2
Add mutex locks around list management.
...
This way we can safely execute lists on a separate thread.
2013-08-09 22:41:31 -07:00
Unknown W. Brackets
e7c7c5b3db
Add a setting to launch a separate CPU thread.
2013-08-09 22:41:30 -07:00
The Dax
01e9111ac5
Remove Stream VBO option.
2013-08-09 05:18:24 -04:00
Henrik Rydgård
f01279f2cf
Merge pull request #3082 from raven02/patch-12
...
Fix black/missing textures in few games
2013-08-09 00:58:38 -07:00
Henrik Rydgard
bc00a7e302
Process frame timing on frame boundaries instead of flips. Frameskipping works better in many games.
2013-08-07 23:32:28 +02:00