Commit graph

73 commits

Author SHA1 Message Date
Unknown W. Brackets
e7639f666c Ensure stuff run on every prim are inlined.
These both get a ton of calls and show up on profiles.
2014-03-30 00:42:26 -07:00
Unknown W. Brackets
b034b992df Only copy dirty depth buffers between FBOs.
We can remove this if/when we track them separately.  This may break a
game that depends on the depth carrying over between several FBOs, but
that's not extremely likely.

This improves performance in Gods Eater Burst.
2014-01-24 01:44:24 -08:00
Unknown W. Brackets
9cfb8648c0 Keep a map of temporary buffers for self renders. 2014-01-20 07:54:40 -08:00
Unknown W. Brackets
b48de952fd Duplicate framebuffers textured onto themselves.
This fixes #2917.

I verified that, at least for my card, blitting is much faster than
glReadPixels (by quite a margin.)
2014-01-20 07:54:39 -08:00
raven02
ee3c3bca4a Add BindFramebufferDepth() 2014-01-20 22:03:12 +08:00
Unknown W. Brackets
b0a1340a80 Report block transfers we don't support.
Ones involving framebuffers.
2014-01-20 01:47:20 -08:00
Henrik Rydgård
87f203a5b8 More include untangling 2013-12-29 23:44:35 +01:00
Henrik Rydgard
9e109e16d9 Android buildfix.
Also, this warning flag appears not supported. (4.6?)
2013-12-21 13:06:29 +01:00
Henrik Rydgard
127864b679 Prevent post shaders from getting applied twice in some circumstances when playing video. 2013-12-04 11:46:42 +01:00
Henrik Rydgård
7c7c4aaadc Add "u_time" uniform to postprocessing shaders. 2013-12-02 17:24:55 +01:00
Henrik Rydgård
07a868910e Add a temporary hack option that may help debugging the wipeout glow.
It reduces the glow problem by a lot but is obviously incorrect.
2013-10-30 22:47:36 +01:00
danyalzia
950c961dbc Shader Improvements and cleanup
Added sharpen shader

Added support for bloom and sharpen shader

cleanup

cleanup
2013-10-30 00:33:21 +05:00
Unknown W. Brackets
f9352ad0b8 Update fbos even if they're not the display.
But only when coming from a video or other safe source, to ensure we don't
hurt speed.  Although, might be interesting to do it always?

With the previous commit, fixes #4273.
2013-10-26 00:36:37 -07:00
Henrik Rydgard
7d8aed096a Add proper support for upscaling shaders, add Spline36 upscaling
Spline36 isn't as amazing as I had hoped heh. And it will need work to
work in GLSL ES. Anyway...

This also renames u_texcoordDelta to u_texelDelta to fit in with u_pixelDelta.
2013-10-22 12:18:49 +02:00
Unknown W. Brackets
edb4472927 Fix some formatting warnings. 2013-10-19 14:57:45 -07:00
Henrik Rydgard
80702109f5 Move gpu vendor detection to native with the rest of the gl init.
Also disable vertical layout for mainscreen entirely.
2013-10-16 00:48:44 +02:00
Henrik Rydgard
e0b19decca Add generic "PostShader" functionality, replacing FXAA (it's one of them).
Replaces #4018, sorry DanyalZia :)
2013-10-12 02:05:55 +02:00
Henrik Rydgård
95fda8dffa Set line width in constructor too. 2013-10-09 19:01:28 +02:00
Henrik Rydgard
a5d30d2f02 Enable FXAA on mobile. Hopefully the buildbot will copy the shader, too... 2013-09-28 23:51:10 +02:00
Unknown W. Brackets
14efcbcc9b Add an interface to grab the depth/stencil buffers.
Not sure yet how to show in UI, not well tested...
2013-09-28 02:23:07 -07:00
Henrik Rydgard
b10e2bce3c Add FXAA antialiasing on non-mobile. Works best when render resolution = window size. 2013-09-26 12:41:59 +02:00
Unknown W. Brackets
6af44910c1 Add an interface to return the current framebuffer. 2013-09-22 19:03:31 -07:00
Henrik Rydgard
5bdb9e976b Track copies of framebuffers in ram created through sceDmacMemcpy, so that we can display them.
Fixes MotoGP while also, in effect, committing #3859.
Removes the horrifying ramDisplayFramebufferPtr hack.
2013-09-21 18:53:55 +02:00
Unknown W. Brackets
0e6f58853a Try to use the most recently rendered fb. 2013-09-01 11:55:03 -07:00
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
raven02
1eaada15df Reference and modified code from @arnastia 2013-08-12 02:30:17 +08:00
Unknown W. Brackets
89349eae7e Consistently use a proper type for GE fb format. 2013-07-29 23:05:59 -07:00
Unknown W. Brackets
4dde7276c6 Don't use PspDisplayPixelFormat at all. 2013-07-29 22:58:37 -07:00
Unknown W. Brackets
2f94977efe Don't include gfx/gl* outside the OpenGL GE. 2013-07-29 22:47:38 -07:00
raven02
d836527254 NewUI fix and add selectable frameskipping/Resolution to winUI 2013-07-26 22:10:03 +08:00
raven02
76bd4e3120 Fix rendering mode switching issue in old & new UI 2013-07-22 08:41:58 +08:00
raven02
0216f52359 Merge remote-tracking branch 'upstream/master'
Conflicts:
	UI/GameSettingsScreen.cpp
	UI/MenuScreens.cpp
	Windows/ppsspp.rc
2013-07-22 00:03:54 +08:00
raven02
87fc81e56d Consolidate Rendering Mode 2013-07-21 23:17:42 +08:00
raven02
7ac496529b Vendor Based Alpha and Color Testing 2013-07-21 01:14:36 +08:00
Henrik Rydgard
81411a74ed Experimental: Make orientation change possible on Android. 2013-07-16 22:51:25 +02:00
Henrik Rydgard
25392cd408 More android buildfixin' 2013-07-06 00:40:01 +02:00
arnastia
b5cc23d018 Try to guess GPU to differentiate pixel type to request in glReadPixels(); changed ConvertFromRGBA8888 to iterate linearly. 2013-07-05 02:31:31 +01:00
arnastia
7747fc9ca7 Some changes around pixel format conversion, should work on all cards and Android/OpenGL ES devices now (only fully tested on Nvidia); commenting and code cleanup. 2013-07-04 15:24:37 +01:00
arnastia
2e5e5e7a62 Pixel format switch (should work for both ATI/AMD and Nvidia);
Code cleanup;
Update submodules.
2013-07-01 21:51:24 +01:00
arnastia
7824f3c09f Merge remote-tracking branch 'upstream/master' 2013-07-01 18:59:44 +01:00
Unknown W. Brackets
0e5f741a48 Properly scale FBOs on copy to output.
Fixes Tales of Destiny 2 and Star Ocean when buffered rendering is on.
Should only draw the top left 480x272.
2013-06-30 23:56:22 -07:00
arnastia
ad5df976bd Blit framebuffers using screen aligned quads (buggy);
Implement asynchronous framebuffer readback for OpenGL and optional CPU-side pixel format conversion (needs optimization);
Add OpenGL ES support (untested).
2013-06-28 14:48:36 +01:00
arnastia
4fa30ce6ec Add support for reading framebuffers to memory.
Signed-off-by: arnastia <arnastia@gmail.com>
2013-06-25 13:50:35 +01:00
Unknown W. Brackets
03cab6edf7 Centralize destruction of FBOs, use std::vector. 2013-06-23 08:19:36 -07:00
Henrik Rydgard
fcd9168ff9 Change vfbs_ back to a list for now. 2013-06-23 17:10:55 +02:00
Henrik Rydgard
67ef7fea3e Various FBO-related fixes, hopefully reducing or removing the related crashes... 2013-06-23 17:05:59 +02: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
2694343243 Another attempt at reusing bigger framebuffers. Doesn't solve everything but hopefully won't break much like the last attempt. 2013-06-20 22:19:20 +02:00
Henrik Rydgard
112f1b4901 Wipe all FBOs on device lost. May help app switching issues on Android. 2013-06-11 11:28:41 +02:00
Unknown W. Brackets
dbb2dfdcff Invalidate FBOs when it's obvious they should be.
This fixes videos not being visible in for example Star Ocean.
Most likely any games doing a copy directly from the mpeg decode.
2013-06-08 04:51:57 -07:00