Commit Graph

2880 Commits

Author SHA1 Message Date
Unknown W. Brackets
de2c951665 Detect EXT_gpu_shader4 to use bitwise ops pre-3.3.
This may allow it to work on more cards, and should fix a (probably driver
bug) error we've had reported in GL 3.0 / GLSL 1.3.
2014-09-04 00:39:54 -07:00
Henrik Rydgård
94ee0c5a01 Merge pull request #6815 from unknownbrackets/gpu-minor
Eat cycles during GE block transfers
2014-08-31 09:29:09 +02:00
Unknown W. Brackets
e1d2e72480 Add block transfer to null gpu.
For tests, better to have it here.
2014-08-30 22:14:58 -07:00
Unknown W. Brackets
514772e18e Avoid some magic numbers. 2014-08-30 22:06:25 -07:00
Unknown W. Brackets
337b34ef6a Eat cycles during block transfers.
Tests show this takes a number very close to 1.9 times the number of bytes
in cycles @222.

Using that value caused a tiny fps drop in one area of the God of War
demo, which may be correct but might also cause complaints.  A lot of our
other timing is not accurate, so using a lower value (1.6) to be on the
safer side.

This may cause things to reschedule more accurately when games drawsync,
and improves the gpu/commands/blocktransfer test.
2014-08-30 22:02:28 -07:00
Unknown W. Brackets
9ce5c49978 d3d: Add basic stencil mask handling.
Mostly so we have it in dxstate, will probably reorganize stuff later.
2014-08-30 11:18:18 -07:00
Unknown W. Brackets
5e07a40a83 Oops, buildfix Android/etc.
This is not declared there.
2014-08-30 07:13:36 -07:00
Unknown W. Brackets
361b9a2572 Use 8888, always, for Danganronpa's FBOs.
This should fix dithering on draw causing problems for Adreno 3xx devices.
2014-08-30 02:05:51 -07:00
Henrik Rydgård
c5e80d0999 Merge pull request #6801 from unknownbrackets/d3d
d3d: Avoid rewriting textures to BGRA from RGBA, just swizzle
2014-08-28 11:21:19 +02:00
Unknown W. Brackets
4e5778d714 d3d: Correctly disable stencil testing. 2014-08-28 01:21:29 -07:00
Unknown W. Brackets
1f51fe7843 d3d: Avoid rewriting textures, just swizzle.
Luckily A is in the same place and the same width, so we can do this for
all but framebuffers easily.

Technically we could do it in OpenGL as well.

Small (1-2%) performance improvement in FF2.
2014-08-28 01:20:21 -07:00
Unknown W. Brackets
5a3a972d95 Perform intra-buffer blits directly.
As far as I can tell, this doesn't need a temp fbo.
2014-08-27 23:13:08 -07:00
Unknown W. Brackets
9cab344026 Rebind the fbo after inter-buffer copy.
Might be needed if the list is stalled, a copy is done, list unstalled,
and then something happens to flush a pending prim.
2014-08-27 23:10:07 -07:00
Unknown W. Brackets
fc5d62804e Avoid unbinding the draw fbo where possible.
If we're just going to bind another one, no need to trade around.
2014-08-27 23:08:17 -07:00
Unknown W. Brackets
77e050d044 Only unbind the read fbo id draw can be skipped. 2014-08-27 23:07:11 -07:00
Unknown W. Brackets
a8b78a46bd Forget the bound texture on fbo_create().
Just in case, since it overrides the texture.
2014-08-27 23:05:21 -07:00
Unknown W. Brackets
140eb82821 d3d: Don't flip render-to-tex.
Fixes flipped screens and objects in a bunch of games.
2014-08-27 07:19:41 -07:00
Unknown W. Brackets
2191382a7a d3d: Scale positions by 128/32768. 2014-08-26 08:18:24 -07:00
Unknown W. Brackets
d987cfea37 d3d: Cache sampler/render state like in GL.
Small 3% performance improvement.  Also, would prefer to have the bugs
from this now rather than later.
2014-08-26 08:08:02 -07:00
Unknown W. Brackets
5e528f673d d3d: Set the lod bias for textures.
Why aren't these caching?
2014-08-26 07:58:09 -07:00
Unknown W. Brackets
b8e768066f d3d: Remove another use of D3DCOLOR.
Fixes more colors.
2014-08-26 07:46:22 -07:00
Unknown W. Brackets
b4b81744ee Use dst factor w/ dst in reverse sub blending. 2014-08-26 00:39:14 -07:00
Unknown W. Brackets
2448386e8a d3d: Specify clamping incr/decr of stencil. 2014-08-26 00:23:34 -07:00
Henrik Rydgård
44df3cee06 Merge pull request #6784 from unknownbrackets/d3d
Clean up some normal handling and a shader error in D3D
2014-08-25 18:32:08 +02:00
Unknown W. Brackets
a34bf158e3 d3d: Clean up some normal handling.
So hardware and software transform match gles.
2014-08-25 07:43:19 -07:00
Unknown W. Brackets
170036e171 d3d: Fix another shader compile error. 2014-08-25 07:31:10 -07:00
Henrik Rydgård
caa34c4db8 Merge pull request #6777 from unknownbrackets/gpu-blend
Use blending to approximate incr/decr/invert
2014-08-25 11:38:08 +02:00
Unknown W. Brackets
78c342889e d3d: Prevent crash on Release() of render-to-tex.
Might be safer to do as we do in GLES and always have a texture...
2014-08-25 02:15:02 -07:00
Unknown W. Brackets
a533d76c8e d3d: Convert DXT texture colors.
Doesn't seem like this is 100% correct though, not sure.
2014-08-25 02:00:55 -07:00
Unknown W. Brackets
5e829f06e8 d3d: Fix a shader compiler error. 2014-08-25 01:39:04 -07:00
Unknown W. Brackets
41d699ba98 d3d: Unbreak hardware transform, oops.
This was broken by my earlier commit.  Now we can send colors directly.
2014-08-25 01:16:49 -07:00
Henrik Rydgård
64100dc642 Merge pull request #6780 from unknownbrackets/ge-debugger
Welcome Direct3D9 to the GE debugger family
2014-08-25 09:59:46 +02:00
Unknown W. Brackets
c65f9603bd d3d: Fix some RGBA / ARGB color issues.
I wonder if we should just send floats here?  We denormalize and then
renormalize in software...
2014-08-24 23:34:48 -07:00
Unknown W. Brackets
d2018f4aea d3d: Copy over the vertex preview stuff.
Really need to just centralize, I know.  But want a debugger that works
first.
2014-08-24 22:19:59 -07:00
Unknown W. Brackets
4a615dc46c Support BGRA formats in the debugger previews. 2014-08-24 22:08:28 -07:00
Unknown W. Brackets
42aa494aeb d3d: Get some initial GE previews working.
Wrong colors.
2014-08-24 21:52:47 -07:00
Unknown W. Brackets
39ee5bb6b7 Support stencil incr/decr even without blending. 2014-08-24 10:24:30 -07:00
Unknown W. Brackets
17ab856a35 Always zero drawn pixels with zero. 2014-08-24 10:24:29 -07:00
Unknown W. Brackets
757f10d47a Oops, equation not func. 2014-08-24 10:24:29 -07:00
Unknown W. Brackets
90746fb5b2 Support INVERT with stencil alpha replacement. 2014-08-24 10:24:28 -07:00
Unknown W. Brackets
0018638458 Support INCR/DECR with stencil value replacement. 2014-08-24 10:24:28 -07:00
Henrik Rydgard
1d7642fa48 Remove most mentions of the "_XBOX" define 2014-08-24 14:21:35 +02:00
Henrik Rydgard
6011255e6f D3D: Don't display buffered rendering upside down. Support screen scaling filter setting 2014-08-24 14:04:55 +02:00
Ced2911
fdc5d02e27 [Gpu] Various speedup (texture cache not tested ...) 2014-08-24 13:43:34 +02:00
Ced2911
ef54989598 [Gpu] update code, cleanup shaders generation: fixes rr2 lighting !
Conflicts:
	GPU/Directx9/PixelShaderGeneratorDX9.cpp
	GPU/Directx9/ShaderManagerDX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
2014-08-24 13:43:09 +02:00
Ced2911
9caa783137 [Gpu] Sync with gles
Conflicts:
	GPU/Directx9/GPU_DX9.cpp
2014-08-24 10:46:41 +02:00
Ced2911
49cc8e7312 [Gpu] Sync with gles
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/TransformPipelineDX9.cpp
2014-08-24 10:40:16 +02:00
Ced2911
6ee39c9abd [Gpu] Update
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
2014-08-24 10:29:47 +02:00
Ced2911
e0c3b5a112 [Gpu] somes fixes, monster hunter 2 run between 140 and 200% with vertex cache enabled
Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/GPU_DX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/global.cpp
2014-08-24 10:21:08 +02:00
Ced2911
ace1e71456 [Misc] Windows fixes
Conflicts:
	GPU/Directx9/TransformPipelineDX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
	GPU/Directx9/helper/global.cpp
2014-08-24 10:17:11 +02:00
Henrik Rydgard
dcd8753ee1 Cherry-pick a tiny part of cf41d2af29633146e5b07c8851382efe72491091 2014-08-24 09:56:01 +02:00
Ced2911
d4adc3abb8 [dx9] don't do alpha test in pixel shader, use state mapping
hrydgard: Cleaned up a bit, disabled by default

Conflicts:
	GPU/Directx9/TextureCacheDX9.cpp
2014-08-24 09:52:34 +02:00
Henrik Rydgård
5d836bfa5a Merge pull request #6765 from hrydgard/thin3d
Switch UI drawing from GL to Thin3D. This activates the D3D9 path as well.
2014-08-23 10:52:21 +02:00
Henrik Rydgard
1556234825 Bit more d3d stuff. Can't get depth right, pretty sure it's the projection matrix calc. 2014-08-23 01:52:46 +02:00
Henrik Rydgard
a758917919 D3d cleanups and improvements 2014-08-22 22:16:46 +02:00
Henrik Rydgard
00d5793f7d D3D9: Don't crash on bad vertex formats. 2014-08-22 21:27:27 +02:00
Henrik Rydgard
e2ecbb7a4d Convert more UI code to Thin3D 2014-08-22 20:55:18 +02:00
Henrik Rydgard
e539c7009f Hook up DX9 backend. Not really working though, it seems. 2014-08-22 20:55:12 +02:00
Henrik Rydgård
f8a4236d58 Merge pull request #6679 from unknownbrackets/gpu-blend
Handle doubled alpha blending using premultiplication
2014-08-22 10:06:24 +02:00
Henrik Rydgård
d52c87d82c Merge pull request #6722 from sum2012/wwe
check for duplicated stack addresses by JimLee168
2014-08-20 16:34:02 +02:00
Unknown W. Brackets
1e057a76b5 Convert all CLUT entries ever loaded.
Some games reuse previously loaded bytes, like World Neverland.  We
displayed bad colors in these cases when we don't convert all the entries.

Technically, this means we're hashing less than used in these cases, but if
we hash more we will get lots of false cache misses.

Fixes #6752.
2014-08-19 22:31:09 -07:00
Unknown W. Brackets
7f61da2e5a Add a hack for Silent Hill games.
Either way has different problems, but it sounds like this will work
better for Silent Hill.  Probably still rendering wrong, unfortunately.
2014-08-18 23:20:49 -07:00
Unknown W. Brackets
a43c3771a3 More correctly blend when hitting the frame cap.
If we hit too many blits per frame, fall back correctly in the shader.
2014-08-18 23:20:48 -07:00
Unknown W. Brackets
422db25277 Optimize fixed color blending that isn't blending.
Gods Eater Burst uses this, for example.
2014-08-18 23:20:48 -07:00
Unknown W. Brackets
b79e4d22b8 Improve a possible obscure blend mode.
Seems like this would be likely to get overlap problems.
2014-08-18 23:20:47 -07:00
Unknown W. Brackets
0904085eb5 Avoid using fbo copies for the common 2a + 1-2a.
We won't even get it right that often since the copy doesn't deal with
overlap properly.
2014-08-18 23:20:47 -07:00
Unknown W. Brackets
5d1b1ab547 Dirty the fixed color when premultiplying. 2014-08-18 23:20:46 -07:00
Unknown W. Brackets
a41333c012 Avoid premultiplying easy fixed colors. 2014-08-18 23:20:46 -07:00
Unknown W. Brackets
24a0dd12ef Avoid recalculating replaceBlend so many times. 2014-08-18 23:20:45 -07:00
Unknown W. Brackets
44620c92ed Premultiply for doubled alpha blending if possible.
This makes the effect more accurate where the values were being clamped
before.  Some obscure methods of blending may be slower.
2014-08-18 23:20:45 -07:00
Henrik Rydgård
d234ab03c6 Merge pull request #6696 from LunaMoo/master
Add Buffer Scalling Filter option
2014-08-19 07:55:45 +02:00
Henrik Rydgård
671b7c351a Merge pull request #6732 from neobrain/master
Math3D: Change the vector swizzlers to return const objects.
2014-08-19 07:54:54 +02:00
sum2012
d671675027 fix bracing 2014-08-19 07:04:36 +08:00
Unknown W. Brackets
dc09875eca Refactor s8/s16 to float conversion.
It's pretty much all done the same way.  Note that normals have always
been a little inconsistent between 127/128 and 32767/32768.  But it's
probably not causing a major impact...
2014-08-18 00:47:50 -07:00
Unknown W. Brackets
385df1c54e Force positions to scale by 128/32768 as psp does.
This makes everything use floats for positions.  On some hardware/drivers,
this may be faster.  On some it may be slower.  We'll need testing to see
the performance impact.

Fixes Final Fantasy 4's pos misalignments, and probably others (like
Tekken 5 I suspect.)
2014-08-17 14:31:49 -07:00
Unknown W. Brackets
147eb92c95 Fix USE_BONE_ARRAY (currently disabled.) 2014-08-17 10:56:30 -07:00
Tony Wasserka
d09b9fa6a1 Math3D: Change the vector swizzlers to return const objects.
Otherwise, people might be tempted to do things like "some_vec4.xyz() = some_vec3", which compiles fine but does not do the expected thing because xyz() does not return references.
2014-08-17 18:39:02 +02:00
sum2012
5ac70026c7 Fix save status
Rename u32_le stackAddr to u32
2014-08-17 16:52:06 +08:00
JimLee168
8099281928 check for duplicated stack addresses
Based on https://code.google.com/p/jpcsp/source/detail?r=3569

Fix WWE SmackDown! vs. RAW 2006
2014-08-13 21:28:22 +08:00
Luna
62a1023615 Add "Screen Scaling Filter" option 2014-08-08 20:51:15 +02:00
The Dax
ee9eb00656 One last buildfix (please correct if GL_FUNC_ADD is wrong, I just wanted buildbot to work again). https://github.com/hrydgard/ppsspp/pull/6679 should replace this soon. 2014-08-05 00:34:36 -04:00
Unknown W. Brackets
cde9746dab Buildfix. 2014-08-04 21:09:58 -07:00
Unknown W. Brackets
3008b4f8a8 Also do it here, although may be removed soon. 2014-08-04 19:33:58 -07:00
Unknown W. Brackets
8d6a5fd694 Use correct stencil values with non-add blending.
Otherwise, we get the min/max/etc. value instead.
2014-08-04 19:16:10 -07:00
Unknown W. Brackets
0279aa154c Use glStencilMask() to partially simulate amask.
Alpha won't be correct, though.
2014-08-03 21:48:18 -07:00
Unknown W. Brackets
3bf88a3c9a Disable tests and etc. when destroying framebufs.
Fixes #6678.  May fix problems loading savestates as well.
2014-08-03 18:45:36 -07:00
Unknown W. Brackets
9844c6e8cc Create the stencil texture after the temp fbo.
Otherwise, we'll bind the temp fbo as a texture while creating it.
Somehow my NVIDIA driver was making this work anyway?

Fixes #6611.
2014-07-22 22:36:38 -07:00
Henrik Rydgard
c8ac26e502 Apparently a 1 pixel margin works around Assassin's Creed buffer overlap misdetection
(while still keeping BOF working).

Should take care of #6599.
2014-07-21 20:00:25 +02:00
The Dax
8a78f5e814 Pause rendering when minimized, when appropriate (hopefully? This is sort of hard to test.). 2014-07-21 10:30:51 +02:00
Unknown W. Brackets
bf01fd2185 Try to avoid false reporting of depthbuf reuse. 2014-07-13 11:59:45 -07:00
Unknown W. Brackets
d80d5beb71 Stop reporting blits when render mode is swapped. 2014-07-09 23:40:29 -07:00
Unknown W. Brackets
f553b632be Avoid a texture offset if framebuf attach fails.
But, I'm not sure in what case this could happen.
2014-07-09 08:22:57 -07:00
The Dax
97b467683a Don't crash when framebuffer is a nullptr. 2014-07-09 06:11:41 -04:00
Unknown W. Brackets
4a8d52ab1a Add a config option for the slow framebuf effects.
Like cluts, blitting, etc.  At higher render resolutions these are
expensive, and on some mobile devices they may be too much.

Of course, they're only used when needed so this is a speedhack.
2014-07-08 23:57:27 -07:00
Unknown W. Brackets
81e6f93be4 Check for access to offset framebuffers better.
Even if the height of the framebuffer doesn't exactly match the offset.
Fixes #2759 again.
2014-07-06 11:52:00 -07:00
Unknown W. Brackets
be76846679 When applying the Danganronpa hack, force 5551.
This prevents dithering from happening during the blit, and since
dithering is off during drawing, allows the colors to be correct on some
devices which always dither during blits.
2014-07-05 00:49:30 -07:00
Unknown W. Brackets
8ab33795b3 Delete temporary/blitting FBOs on device lost.
Fixes issues when the device goes to sleep with Danganronpa, block
transfers, etc.
2014-07-04 23:27:12 -07:00
Unknown W. Brackets
4cb8c414b0 Use the CPU for download on non-NVIDIA cards.
Fixes #6494.
2014-07-04 18:04:32 -07:00
Unknown W. Brackets
3a2d1ac28e Correct async packing alignment.
Only matters if a framebuffer width is not a multiple of 4, which might
not happen anyway.
2014-07-04 14:10:56 -07:00
Unknown W. Brackets
6a4269b1d0 Disable dithering (which affects pixel download.)
Fixes #6494.
2014-07-04 14:10:20 -07:00
Unknown W. Brackets
be0340bb34 Fix crash when FBO_ARB is not available.
Experienced this on a Mac / SDL with a Radeon X1600.
2014-07-04 01:54:03 -07:00
Unknown W. Brackets
edd760fe39 Oops, forgot a cast. 2014-07-03 01:30:08 -07:00
Henrik Rydgård
ed9866b212 Merge pull request #6490 from unknownbrackets/framebuffer-clut
Fix depal shaders on GLES3 devices
2014-07-03 09:53:53 +02:00
Henrik Rydgård
4972f63dfa Merge pull request #6491 from unknownbrackets/gpu-minor
Try to fix color test masking on GLES3 devices
2014-07-03 09:52:45 +02:00
Unknown W. Brackets
739c215d35 Stop reporting memcpy fbo upload/download. 2014-07-03 00:48:46 -07:00
Unknown W. Brackets
61ea20875c Fix shader blending on ARM GLES3 devices.
We currently ban them from GLES3, and this was interacting with that
incorrectly.  Should we still ban them, though?
2014-07-03 00:15:15 -07:00
Unknown W. Brackets
e364de42cb Ensure #extension is before non-# tokens.
As required by Tegra devices from reporting.
2014-07-02 23:21:52 -07:00
Unknown W. Brackets
c379169efc Try to fix colormasking on GLES3 devices.
Not tested, though, since I don't have one... from reporting.
2014-07-02 23:15:02 -07:00
Unknown W. Brackets
5ddb848d09 Fix depal shaders on GLES3 devices.
This path should have only > GL 3.3 or GLES3 so texture() is okay.
2014-07-02 22:35:47 -07:00
Unknown W. Brackets
602daf5f8a Add some missing algorithm includes. 2014-07-01 00:26:22 -07:00
Unknown W. Brackets
0a33eb4c42 Fix missing log semicolons only affecting logging. 2014-06-29 19:09:39 -07:00
Unknown W. Brackets
5db79dcf11 Fix some missing semicolons on log statements. 2014-06-29 19:09:37 -07:00
Unknown W. Brackets
32a11dc28d Minor optimization for prescale/not, fix switch. 2014-06-29 15:47:00 -07:00
Unknown W. Brackets
596abeca06 Use the same vertex decoders for splines.
Had the vert type bits at the top.
2014-06-29 15:46:59 -07:00
Unknown W. Brackets
95f4341838 Allow changing prescale uv at runtime. 2014-06-28 21:51:25 -07:00
Unknown W. Brackets
1c3b60a8ee Allow changing software skinning at runtime. 2014-06-28 21:46:43 -07:00
Unknown W. Brackets
d2d7d6e34b Destroy all FBOs/textures upon sceKernelLoadExec().
It can confuse our heuristics about size, attachment, memcpy, etc.
2014-06-28 12:29:09 -07:00
Unknown W. Brackets
63bcb65d96 Height can be equal, just not greater.
Oops.
2014-06-28 03:41:44 -07:00
Unknown W. Brackets
7d0aeb067a Make sure the conv buffer matches the used height.
May matter if bufferHeight > height.
2014-06-28 02:40:40 -07:00
Unknown W. Brackets
217d8d24ea Validate height better when downloading fbs. 2014-06-28 02:33:28 -07:00
Henrik Rydgård
9351fe44ea Merge pull request #6444 from unknownbrackets/jit-minor
Use more correct rounding in armjit, update x86jit and minor
2014-06-28 11:20:11 +02:00
Unknown W. Brackets
e57ed7d2f4 Small optimizations to stencil scanning. 2014-06-28 02:00:14 -07:00
Unknown W. Brackets
a33589b3e9 Optimize away bits in the stencil upload.
Should be faster than sending to the GPU this way, if we can help it.
Should improve delays on FBO creation at high render resolutions.
2014-06-28 01:39:18 -07:00
Unknown W. Brackets
464b453748 Use a temp FBO at 1x to upload stencil.
This improves performance at > 1x resolutions.
2014-06-28 01:19:07 -07:00
Unknown W. Brackets
89ffbd027e vertexjit: Specify round to zero in ARM rounding.
Only affects color morphs.  NEON always rounds to zero so let's be
consistent.
2014-06-28 00:38:57 -07:00
Unknown W. Brackets
b829be1bfe Require 25% of texture to overlap framebuffer.
Because it's probably wrong if only a small amount overlaps.
2014-06-26 00:48:48 -07:00
Henrik Rydgard
d040b980dd Experiment: Disable clear optimization on PVR (see #6290) 2014-06-24 23:32:40 +02:00
Unknown W. Brackets
ca2d9286e0 Notify the texcache when fb format changes.
Fixes #2094 again.
2014-06-24 00:14:56 -07:00
Henrik Rydgard
cc269488b2 Protect against bad spline patch data better.
Also fix a struct name collision.
2014-06-24 01:14:32 +02:00
Henrik Rydgård
e27e285624 Merge pull request #6396 from hrydgard/ridge-racer-hack
Ridge Racer hack: Flush after every prim if fb addr == tex addr.
2014-06-23 17:52:25 +02:00
Henrik Rydgård
14c0c019db Merge pull request #6407 from unknownbrackets/replace-funcs
Fix function replacement hooks on arm
2014-06-23 17:50:32 +02:00
Unknown W. Brackets
8a7b440933 Don't need this flag, it read from memory. 2014-06-23 08:21:20 -07:00
Unknown W. Brackets
ad060b992d Clear buffers right after creating them.
Seems like some drivers have trouble otherwise.
2014-06-23 00:17:35 -07:00
Unknown W. Brackets
6d104edb5d Make sure not to leak any enabled vertex arrays.
When returning to EmuScreen, we need to reset any enabled vertex arrays or
we could crash in EmuScreen.  Also, when starting a frame / dirting the
shader, make sure also to toggle the vertex arrays.
2014-06-22 21:42:29 -07:00
Unknown W. Brackets
b8ad665b53 Clear vertex attrib arrays before output to screen.
Doesn't seem to help the mis-enabled arrays, though.
2014-06-22 21:03:33 -07:00
Unknown W. Brackets
4c62a17f72 Allow exact render-to-tex format mismatches more.
If the right format was used recently, it's still okay.  Also check the
x/y offset to try to find the best match.
2014-06-22 21:02:43 -07:00
Henrik Rydgard
8b60fe0239 Ridge Racer hack: Flush after every prim if fb addr == tex addr.
Fixes the bloom errors. @unknownbrackets discovered this method.

Not sure if I want to merge this.. It does add yet another check
to a critical path.
2014-06-22 20:37:50 +02:00
Unknown W. Brackets
73d77d3e8a Warning fix. 2014-06-21 18:04:00 -07:00
Unknown W. Brackets
e0b4aa68d0 Typos. 2014-06-21 12:04:27 -07:00
Henrik Rydgård
5f57e7ebaf Merge pull request #6383 from unknownbrackets/gpu-minor
Check for closest render-to-tex, ignore high bits of fb addr
2014-06-21 21:03:17 +02:00
Unknown W. Brackets
0418c8071a Support more shift/masks in fb cluts on GLES2. 2014-06-21 11:10:57 -07:00
Unknown W. Brackets
e9224e9eaa Actually set the offset framebuffer.
Oops.
2014-06-21 09:04:39 -07:00
Unknown W. Brackets
1cea361c65 Remove now-unnecessary MaskedEqual() compares.
Clearer this way I think.
2014-06-21 08:30:45 -07:00
Unknown W. Brackets
2883988f22 Ignore the high bits of the framebuffer address.
And depth buffer.  On a PSP, these bits don't affect where it renders to
even slightly.
2014-06-21 08:29:38 -07:00
Unknown W. Brackets
4319d5eb28 Take the closest offset framebuffer.
There could be multiple, or even an exact match too.  Make sure to take
the closest one.
2014-06-21 08:23:10 -07:00
Unknown W. Brackets
0c31e551e7 Clear buffers before using them.
Fixes a reported crash on an AMD card.
2014-06-19 23:09:15 -07:00
Unknown W. Brackets
ef390c5c40 Double check upload/download are VRAM addresses. 2014-06-19 23:09:15 -07:00
Unknown W. Brackets
5f4a0d8174 Fix a few minor warnings. 2014-06-19 00:47:58 -07:00
Unknown W. Brackets
19f35bbac1 Clear stencil to 0, not 1.
Memory is generally initially zeros, after all.  Fixes #5205 (or at least
improves it?) and fixes #6226.
2014-06-18 00:09:01 -07:00
Unknown W. Brackets
b5eb072e64 Clear depth buffers to zero, not 1.0f.
Memory is generally initially zeros.
2014-06-17 23:56:33 -07:00