Henrik Rydgard
9c799b773d
Don't use glTexStorage2D, see issue #6075
...
Probably didn't help much anyway.
2014-06-08 18:36:18 +02:00
Henrik Rydgård
fe58f8daa9
Merge pull request #6254 from unknownbrackets/framebuf-clamp
...
Correct framebuf clamping, tex projection from framebuf
2014-06-08 11:22:38 +02:00
Henrik Rydgård
be02ea7769
Merge pull request #6255 from unknownbrackets/gpu-blocktransfer
...
Enable "simulate block transfer" by default
2014-06-08 11:15:22 +02:00
Henrik Rydgard
4b9823c0ea
Let's see if there are any remaining fog INF/NAN issues out there
2014-06-08 11:06:34 +02:00
Unknown W. Brackets
4effd15fcb
Support Grand Knight History's line-by-line xfer.
...
This is a bit hacky, but what it's doing at least makes sense enough to
heuristically detect. Still trying to avoid misdetecting God of War.
2014-06-07 23:59:34 -07:00
Unknown W. Brackets
3f8ef6dacd
Ensure stride in bytes matches FBO up/download.
...
Even if we should do the copy, we'll currntly use the wrong x/y/w/h.
This fixes incorrect uploads in God of War, which hurt performance a lot.
Unfortunately, in this game there's zero information to tell us the right
size of some small temp framebuffers it uses, so we overestimate their
sizes and the block transfer appears to fall into range.
2014-06-07 22:40:41 -07:00
Unknown W. Brackets
ed39bb7a9c
When projecting textures, flip V in frag shader.
...
Slower, but this way we actually project correctly.
2014-06-07 19:32:19 -07:00
Unknown W. Brackets
da438b7c68
Fix clamping to the correct texel.
...
This fixes things when edges bleed in from a larger framebuffer. We need
to clamp to the internal texels of the range.
2014-06-07 19:30:46 -07:00
Unknown W. Brackets
7226aad903
Don't allow the buf name cache to get too full.
2014-06-07 16:28:24 -07:00
Unknown W. Brackets
5f521bcfb0
Reuse buffer objects when possible.
...
glBufferData() recreates anyway.
2014-06-07 16:20:12 -07:00
Unknown W. Brackets
4971206e92
Allocate vertexcache buffer names in chunks.
...
Partially implements #6045 .
2014-06-07 16:15:37 -07:00
Unknown W. Brackets
0896c3412d
Allocate textures names in blocks.
...
May improve performance slightly when loading or recycling textures.
Probably uploading the texture is bigger anyway.
2014-06-07 16:13:53 -07:00
Unknown W. Brackets
33b4cc2bcc
Apply clamp and wrap to tex projection as well.
...
Not sure if this is the correct method or not, since it doesn't really
work properly right now.
2014-06-07 14:19:53 -07:00
Unknown W. Brackets
cc841bbe4c
Apply tex wrap/clamp in shader for render-to-tex.
...
Fixes graphical artifacts in Wild Arms XF (which depends on how you get
there, because it's based on the size of the framebuffer.)
2014-06-07 13:13:58 -07:00
Unknown W. Brackets
a53f165c06
Oops, update render size when resizing down too.
...
Hopefully #6247 .
2014-06-07 06:26:03 -07:00
Unknown W. Brackets
d8e98786f7
Oops, fix logging on FBO creation.
2014-06-07 01:35:39 -07:00
Unknown W. Brackets
cda98334f8
Fix some crashes when switching rendering mode.
2014-06-07 00:52:58 -07:00
Henrik Rydgård
2696710dbd
Merge pull request #6245 from unknownbrackets/gpu-minor
...
Support displaying from an offset in a framebuf
2014-06-07 09:25:29 +02:00
Unknown W. Brackets
2a2935003d
Oops, fix stencil upload at non-1x resolutions.
2014-06-07 00:18:49 -07:00
Unknown W. Brackets
0bbeab28ec
Verify fbo exists when copying depth.
...
Should fix #5343 based on stack trace.
2014-06-06 22:35:34 -07:00
Unknown W. Brackets
7a299fb1f2
Avoid displaying a wrong-format framebuf.
2014-06-06 21:11:58 -07:00
Unknown W. Brackets
8ec87040df
Detect staggered/interleaved rendering.
...
Not sure why you'd do this, maybe to simultaneously render? Should help
the Silent Hill games which seem to do this.
2014-06-06 21:08:14 -07:00
Unknown W. Brackets
8d1b3ae7aa
Fix a vertexdec crash from the ge debugger.
2014-06-06 21:06:29 -07:00
Unknown W. Brackets
171629ba48
Separate fbo resize logic from creation.
2014-06-06 20:54:16 -07:00
Henrik Rydgård
96787a95d7
Merge pull request #6239 from unknownbrackets/bof3-workaround
...
Try to workaround Breath of Fire 3's render-to-tex
2014-06-06 20:42:13 +02:00
Unknown W. Brackets
48d0b8fb0b
Fix a crash in non-buffered rendering.
2014-06-06 10:28:18 -07:00
Unknown W. Brackets
3d8f078b6c
Try to workaround Breath of Fire 3's render-to-tex.
...
It renders to two areas but textures with a high V to reach the second
texture. We've been wrapping the V around but this may show the right
buffer.
2014-06-06 00:28:12 -07:00
Henrik Rydgard
a64fe6324a
Remove report I don't think we need anymore
2014-06-05 21:18:08 +02:00
Unknown W. Brackets
5ab416981c
Ignore vfb->format for older display buffers.
...
Fixes video in Tales of Phantasia X.
2014-06-05 00:29:32 -07:00
Unknown W. Brackets
115b959ef7
Stop clearing the buffer after blitting to it.
...
This only appeared to work because destroying an fbo unbinds the active
one.
2014-06-05 00:29:04 -07:00
Unknown W. Brackets
42eb4c978a
Support block transfer bpp mismatch on gles2.
...
When we don't have GLES2.
2014-06-05 00:14:31 -07:00
Unknown W. Brackets
eda5d785fa
Don't rebind if there's nothing to rebind.
2014-06-04 00:58:44 -07:00
Unknown W. Brackets
d111a8d3ff
Remove video size hack when uploading fb data.
...
Seems like this was only helping because we were stretching some
framebuffers before, it only causes problems now.
2014-06-04 00:21:52 -07:00
Unknown W. Brackets
e67c2e7328
No need to report this anymore, hopefully.
2014-06-03 22:54:36 -07:00
Unknown W. Brackets
7839f39c13
Allow block xfer upload when using read fb to mem.
2014-06-03 22:52:32 -07:00
Unknown W. Brackets
8b46faed50
Implement intra-buffer block transfer.
2014-06-03 22:51:16 -07:00
Unknown W. Brackets
fcb70a00b3
Fix incorrect scale in fbo download.
...
This caused some videos and scenes to show at the wrong resolution.
2014-06-03 22:29:42 -07:00
Unknown W. Brackets
b9652c2112
Ignore sizes with unreasonable heights.
...
God of War sets region to 1024x1024, but doesn't draw in that whole space.
2014-06-03 07:52:05 -07:00
Henrik Rydgård
e6d3a9c1b6
Merge pull request #6211 from unknownbrackets/framebuf-estimate
...
Another attempt at framebuffer size estimate changes
2014-06-03 10:50:21 +02:00
Unknown W. Brackets
238bdce2b8
Detect if framebuffer clut uses alpha.
...
It's not a perfect check but it may allow skipping alphatests sometimes.
2014-06-03 01:06:02 -07:00
Unknown W. Brackets
bf788e278d
Change CheckAlpha() to apply to any pixel data.
...
For example, cluts. But not yet, just changing it here.
2014-06-03 00:59:34 -07:00
Unknown W. Brackets
a18eceac71
Don't skip alpha in 565/clut framebuffers textures.
2014-06-03 00:45:15 -07:00
Unknown W. Brackets
b069462bea
Relax display buffer / GetVfbAt() requirements.
...
Castlevania actually uses a display buffer of 420, it seems. Since we no
longer allow multiple FBOs at the same address, this should be safe.
2014-06-02 22:51:37 -07:00
Unknown W. Brackets
304d372f48
When clamping height to 512, try region/scissor.
2014-06-02 21:46:22 -07:00
Unknown W. Brackets
78c83e122d
Force 481x273 to 480x272, it's seen in a few games.
2014-06-01 23:47:37 -07:00
Unknown W. Brackets
3021640897
Correct widths in stencil upload too.
2014-06-01 21:24:33 -07:00
Unknown W. Brackets
c2ccfd5629
Stop stretching things to the FBO size.
...
Instead, draw in the top corner. This way, even if framebuffers get
smaller things stay consistent.
2014-06-01 21:20:04 -07:00
Sacha
319c0efcb2
Remove MAY_HAVE_GLES3
2014-06-02 12:08:49 +10:00
Unknown W. Brackets
cfb21707b6
Take the tallest estimate, scissor may be short.
...
Even if it's wider but short, it should not reduce the height of the
buffer.
2014-06-01 18:45:25 -07:00
Unknown W. Brackets
d64d2afcb3
Don't allow a zero framebuf stride in estimation.
2014-06-01 18:45:03 -07:00