Commit graph

282 commits

Author SHA1 Message Date
raven02
3d12a00fe1 Get rid of glstate.viewport.restore() for Mali/Adreno Soc 2014-04-23 22:47:59 +08:00
Unknown W. Brackets
f4458edc76 Avoid unbinding the current fbo on block transfer.
Improves God of War performance by 25% (at least in the demo.)
2014-04-13 21:11:17 -07:00
Unknown W. Brackets
6cfc61665d Switch to a bitmask instead. 2014-04-13 14:45:55 -07:00
Unknown W. Brackets
4c1c694d4b Use flags to avoid hashing textures when unchanged.
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.

Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Unknown W. Brackets
0d59fc0d2e Oops, forgot to reset the frame when unchanged.
Fixes #5861.
2014-04-13 08:15:48 -07:00
Unknown W. Brackets
f462721394 Rather than only enlarging, watch for persistence.
If the game keeps using something at a new size, we know it's time to make
some adjustments.
2014-04-12 23:12:35 -07:00
Unknown W. Brackets
1a53be45cc When uploading video pixels, detect w/h by size.
Sometimes the framebuffer size is incorrect, but kinda works... but this
is a problem for the video.  Using the size gets us better.

In Wild Arms XF, the framebuffer is 512x512, but that's not right.  It's
clear it should be 480x272.
2014-04-12 22:02:47 -07:00
Unknown W. Brackets
1f76adb7a3 If a larger framebuffer is needed, upgrade it once.
This should prevent issues where it gets larger and smaller like in the
past.
2014-04-12 20:46:38 -07:00
Unknown W. Brackets
7c70d8b04e Oops, remove some duplicate code.
Moved this to the inlined SetRenderFrameBuffer().
2014-04-01 02:09:21 -07:00
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
be9194b887 Try harder to show a useful post shader error.
It's worth seeing the error quickly, but mostly will need to look at the
log.
2014-02-16 01:25:33 -08:00
Henrik Rydgard
8b6b491820 Remove obsolete outputWidth/outputHeight 2014-02-10 12:44:35 +01:00
Unknown W. Brackets
d2108a962e Switch from USING_GLES2 to MOBILE_DEVICE.
Still using USING_GLES2 for, well, GLES2.  But for things that are really
about mobile, we need a new define.  Devices are coming that don't use
GLES2.
2014-02-08 16:37:58 -08:00
DanyalZia
afc36d557e Properly show OSD information of resolution 2014-01-27 11:46:09 +05:00
DanyalZia
61a15c1465 Fix a bug where changing resolution wouldn't make a difference on a fly 2014-01-26 19:02:21 +05: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
c6dc6b46e5 Clear the duplicate FBO on shutdown. 2014-01-20 07:54:39 -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
a132b54c01 Put depth copy as BindFramebufferDepth() 2014-01-20 22:02:20 +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 Rydgard
c55578367f Add option "Small Display", useful for large tablets to avoid overlapping touch controls with the screen.
Will later replace with a multiselect of different sizes, or something more advanced
like multitouch drag & zoom of the screen to get it exactly where you want it.
2014-01-16 00:22:39 +01:00
Unknown W. Brackets
79864a5ee0 Fix some initialization order warnings. 2014-01-10 22:21:24 -08:00
Henrik Rydgard
ad951bc0d4 Symbian buildfix 2014-01-06 19:21:27 +01:00
Henrik Rydgard
43a93f086d Enable depth buffer copies on GLES3 devices without breaking any desktop 2014-01-06 18:03:57 +01:00
Henrik Rydgard
aaf219d063 Only copy the depth buffer if the framebuffer size matches. 2014-01-05 13:00:57 +01:00
Unknown W. Brackets
2a56c76f55 Fix crash in non-buffered rendering. 2014-01-04 17:29:00 -08:00
Unknown W. Brackets
202842d690 On desktop, blit depth when not cleared.
Workaround for #1283, makes Jeanne d'Arc playable.
2014-01-04 11:27:01 -08:00
Henrik Rydgård
431395eceb Merge pull request #4905 from raven02/patch-23
Bind framebuffer to 0 if framebuffer status is incomplete
2014-01-03 03:47:42 -08:00
raven02
6467c70f08 Exclude PowerVR chipset only 2014-01-02 19:21:22 +08:00
raven02
e84a7b1586 Viewport restore only for Adreno GPU 2014-01-02 12:17:41 +08:00
Henrik Rydgard
91531a9792 Get rid of "ATIClampBug", it's not a bug, it's just lack of full non-pow-2 texture support 2014-01-02 00:09:01 +01:00
Henrik Rydgard
a9832fb79a Set cleardepth the traditional way on desktop. 2014-01-01 23:40:35 +01:00
W.MS/王京
032f40b5a1 fix the typo, maybe
LOL
2014-01-02 01:30:24 +08:00
raven02
5d05b4f16a ClearBuffer(): Clear depth to 1.0 2014-01-01 22:49:50 +08:00
Henrik Rydgård
87f203a5b8 More include untangling 2013-12-29 23:44:35 +01:00
raven02
cf50ace328 bind framebuffer to 0 if framebuffer status is incomplete 2013-12-22 16:03:39 +08:00
raven02
4f81d97624 emnu fix#2 2013-12-21 16:18:38 +08:00
Henrik Rydgård
34f2f5db98 When drawing the displayed FBO to the screen, always use bilinear.
Might want to make this an option in the future.
2013-12-16 16:04:08 +01:00
Unknown W. Brackets
a2d91ee26d softgpu: Don't mask out so much of fb stride.
Seems like anything from 4 is supported in 8888, most likely it just needs
to align to 16 bytes.  Values above 1024 work, but e.g. 2044 seems buggy.

Fixes the map on Hexyz Force (rendered at 80 stride.)
2013-12-15 11:59:24 -08:00
raven02
5c6dbb8a31 Restore viewport when switching render targets 2013-12-14 04:14:59 +08:00
raven02
a1fd9eb149 Render correct fog in 3rd birthday and transparency in Kurohyou 2 2013-12-11 23:37:28 +08:00
Unknown W. Brackets
9de7b34d1c Cut down on reporting of FBO misuse.
These cases are likely to be okay.
2013-12-08 00:38:10 -08:00
Henrik Rydgard
c738364f67 Make sure to disable scissor when doing the initial clear of a new FBO.
Minor cleanups.
2013-12-06 23:08:37 +01:00
Henrik Rydgård
3fb973af90 GL_NV_draw_texture requires more testing, turn off temporarily.
Fix the V coordinates sent in while at it.
2013-12-06 13:01:34 +01:00
Henrik Rydgard
3983144c42 Make sure that blending is disabled when doing DrawPixels.
Add a comment about a potential texture scaling problem with splines.
2013-12-04 14:02:40 +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 Rydgard
e1657fec96 Get rid of WipeFramebufferAlpha ini-only option. 2013-12-04 09:41:25 +01:00
Henrik Rydgard
39b632b279 Copy the stencil value in REPLACE mode to fragment alpha (but only when it's safe)
This is cheap but incomplete.
To do it more "right", we need multipass when blending or alpha test is enabled, ugh. That's for later.

Anyway, this improves the glow situation in Wipeout somewhat. Still lots of stuff that glows that shouldn't, but a little less overwhelmingly bright.
2013-12-03 00:13:21 +01:00
Henrik Rydgard
198e230cdc Re-add uniform location checks even though they aren't needed
Spec says that setting uniform -1 does nothing.
2013-12-02 23:35:49 +01:00