Commit graph

58 commits

Author SHA1 Message Date
Henrik Rydgard
664d74a9b7 Another frameskipping attempt. Now: 0=no frameskip, 1=auto frameskipt, 2-9=fixed frameskip.
There is still some flicker remaining in non-buffered rendering that I can't seem to get rid off.
2013-08-16 01:00:26 +02:00
Henrik Rydgard
8e2c485373 Some microoptimization 2013-08-11 22:12:14 +02: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
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
0dc6bab9ff Shouldn't be necessary to flush on drawsync. 2013-08-07 00:32:27 -07:00
Henrik Rydgard
773115bb6d GPU: tiny optimization and log fix 2013-08-06 19:08:38 +02:00
Unknown W. Brackets
89349eae7e Consistently use a proper type for GE fb format. 2013-07-29 23:05:59 -07:00
Henrik Rydgard
23ee9b8cd5 Add "Take Screenshot" to Windows version. Writes to "screenshots" subdirectory. No smart file naming yet. 2013-06-22 22:28:48 +02:00
Henrik Rydgard
e782b6f20e Add VSync option in Windows. Turns itself off when unthrottled. 2013-06-16 23:45:06 +02:00
Unknown W. Brackets
f8d6bda678 Add a better signal for VRAM copies in the GPU. 2013-06-09 23:55:32 -07:00
Henrik Rydgård
367e9bcefb Remove DrawWireframe option to save space in dialog, it doesn't really work right anyway 2013-05-16 17:18:53 +02:00
Unknown W. Brackets
3c0ed69fd2 Improve GPU invalidation interface, check fonts.
When a font is rendered, tell the GPU about it, but don't rehash.

This not only improves perf (less hashing) but makes font changes more
immediate (no deferred hashing.)  But only if they use sceFont.
2013-05-05 22:52:01 -07:00
Peter Thoman
2212e7f609 Fixed threading issue pointed out by unknownbrackets and made texture scaling changes apply immediately 2013-04-30 17:58:05 +02:00
Unknown W. Brackets
b0ce9e934e Split out the GPU vendor and the full detail.
This way we can sort things more easily.
2013-04-29 00:30:54 -07:00
Unknown W. Brackets
5cea38e405 Reporting: catch information about the GPU. 2013-04-29 00:26:43 -07:00
Unknown W. Brackets
1edbfa3212 Use a downcount and fast run loop in the GE. 2013-04-28 14:23:30 -07:00
Unknown W. Brackets
affe91cb3b Refactor some GPU methods to return errors. 2013-03-31 23:57:03 -07:00
Unknown W. Brackets
0f15a5eae6 Move the pc-management cmds to GPUCommon. 2013-03-31 23:57:02 -07:00
Henrik Rydgard
bc15617392 Make un-buffered rendering much smarter, removing flicker.
This turns it into a very viable option for many games. You do lose some FX
but it can as a result even be used as a workaround for the massive glow
in Wipeout...
2013-03-03 13:00:21 +01:00
Henrik Rydgard
7c91802e3c Add some infrastructure to be used for frameskipping 2013-02-19 00:45:26 +01:00
Xele02
2a6af9b8a3 Add displayList debug dialog 2013-02-17 01:28:43 +01:00
Henrik Rydgard
64a376516e Move all the framebuffer management out into its own file. 2013-01-30 21:09:53 +01:00
Henrik Rydgard
3b681d3854 Make GLES_GPU own texturecache 2013-01-30 20:40:26 +01:00
Henrik Rydgard
366583d34f Align some vertex arrays to page size. It's said to possibly be beneficial. 2013-01-29 00:48:13 +01:00
Henrik Rydgard
d1b3fd0e49 Better window resize handling 2013-01-27 00:15:39 +01:00
Henrik Rydgard
8a32779150 Misc GPU stats etc changes 2013-01-25 18:29:14 +01:00
Henrik Rydgard
b1bbbc44fc Add enable/disable dithering. Respect chosen framebuffer color depth. 2013-01-23 23:04:09 +01:00
Henrik Rydgard
29e422cbf1 Avoid flicker by not throwing away the last 3 FBOs. 2013-01-11 17:55:26 +01:00
Henrik Rydgard
6ab6045baf Throw away unused FBOs. This gets rid of extreme slowness of Star Soldier on Nexus S for whatever reason. 2013-01-11 02:00:51 +01:00
Unknown W. Brackets
3861ce0376 Use sceKernelDcacheWritebackAll() as a hint only. 2013-01-05 17:07:19 -08:00
Unknown W. Brackets
97bdaf5dd2 Add support for selecting the GE callback per list.
Not sure if interrupts are right, but this should be more right.
2012-12-29 15:55:05 -08:00
Unknown W. Brackets
589916fca2 Move GPU state to sceDisplay, reset GPU on load. 2012-12-29 12:49:49 -08:00
Florent Castelli
36a71eafd0 Move InterpretList and ProcessDLQueue to GPUCommon 2012-12-29 03:11:36 +01:00
Florent Castelli
6eec4f5d7f Move display list management to common GPU class 2012-12-29 03:11:35 +01:00
Henrik Rydgård
57b4d658cc Don't log display lists, instead dump them on demand.
Makes it fairly convenient to dump and look at display lists at run time
on non windows platforms. Adding a menu item on Windows should be
trivial.
2012-12-27 23:38:55 +01:00
Henrik Rydgård
d95dbca9be Cleanup GPU init/shutdown a bit 2012-12-25 22:42:19 +01:00
Henrik Rydgård
d21647bbb9 Split code from GLES_GPU to TransformDrawEngine, cleanup 2012-12-25 22:39:37 +01:00
Henrik Rydgard
e42af096c8 Merge 2012-12-21 23:43:48 +01:00
Henrik Rydgard
3b114eb24a More work on indexed draws. Not combining yet. 2012-12-21 19:16:17 +01:00
Henrik Rydgard
4c23d668e1 Cleanup and reorganize gpu code a little 2012-12-21 16:50:14 +01:00
Henrik Rydgard
4f376a2c34 Hardware vertex transform, preliminary and optional. No lighting yet. Disabled until it works right... 2012-12-20 15:07:58 +01:00
Henrik Rydgard
b8d596cbec Add some infrastructure for flexible vertex formats 2012-12-19 18:35:37 +01:00
Henrik Rydgard
4046146164 Add experimental wireframe mode for debugging. Fix texenv color. Code cleanup. 2012-12-19 15:14:41 +01:00
Henrik Rydgard
6e32b30afd DisplayDrawer->FramebufferManager 2012-12-01 10:17:34 +01:00
Henrik Rydgard
980d13fe50 Assorted GPU fixes: Advance vertex pointer, fixes missing triangles in SPT. More logging. Separate proj matrices for through and normal mode (through matrix don't need to get updated as often). Some cleanup. 2012-11-28 13:45:22 +01:00
Henrik Rydgard
2822ce2737 Temporarily disable most of the viewport code as it broke some games. Kept the flip detection. 2012-11-26 20:38:26 +01:00
Henrik Rydgard
870ea6628b Reasonably correct viewport handling. Optional debug stats overlay (not always 100% working). 2012-11-26 17:35:08 +01:00
Henrik Rydgard
02a94e52ee Do GPU ram<->vram block transfers. Could be smart enough to clear textures from cache but isn't yet. 2012-11-22 20:57:41 +01:00
Henrik Rydgard
f378f959e1 Fix issues with games that don't call sceDisplaySet mode. Add option to run without FBOs, may be useful on slow devices. 2012-11-20 10:59:23 +01:00