86 Commits

Author SHA1 Message Date
Unknown W. Brackets
adee76cd62 Add a matching PerformMemoryUpload().
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Unknown W. Brackets
089ee41d9c Implement a very basic stencil upload.
This is not fast or efficient, but works.
2014-05-31 21:48:09 -07:00
Unknown W. Brackets
1433b98c46 Clean up the framebuffer force downloads. 2014-05-31 10:03:03 -07:00
Unknown W. Brackets
8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
Unknown W. Brackets
8275f613ce UpdateMemory() now returns whether to skip the cpy.
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Unknown W. Brackets
4cc4cfed4c Note that VADDR/IADDR are not updated on PRIM.
Even though they do increase the addresses, they don't affect the CMD
registers.

Also, make sure not to use a crazy bytesRead for a zero-sized prim.
2014-05-04 18:24:49 -07:00
Henrik Rydgard
16f4622ac7 Remove cached light variables to reduce work when parsing DLs.
Also removes some duplication between GL and the inactive D3D code.
2014-04-21 12:51:19 +02: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
b800762ceb Add a NEON-optimized version of XXH32.
This takes at least 40% less time to hash on NEON/ARM devices.
2014-03-25 00:34:55 -07:00
Unknown W. Brackets
b44d10a91e Move texture unswizzling to decoder, use NEON. 2014-03-22 21:35:16 -07:00
Unknown W. Brackets
1ce6bf399a Buildfix for 32-bit x86, arg. 2014-03-17 21:52:45 -07:00
Unknown W. Brackets
996fa39684 Reduce some unnecessary includes in Core/. 2014-03-15 10:41:07 -07:00
Unknown W. Brackets
15a608a6b9 Check for kernel textures in kernel ram properly.
Textures can perfectly legitimately be in volatile ram.
2014-03-01 16:11:56 -08: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
Unknown W. Brackets
60cf5df571 Consider the texture changed when framebuf changes.
Needed to properly consider render to self (should rebind if the
framebuffer is later used with a separate target.)
2014-01-20 07:52:09 -08:00
Unknown W. Brackets
0f5aae9c49 Cleanup differences in DirectX9 texcache code. 2014-01-01 15:49:10 -08:00
Unknown W. Brackets
db77dcd149 Fix some includes on Windows/etc. 2013-12-29 15:59:36 -08:00
Unknown W. Brackets
473fb866e6 softgpu: Implement vertex preview.
And move ConvertMatrix4x3To4x4() into a common place since there were
differing implementations, which was only confusing.
2013-12-29 13:45:10 -08:00
Unknown W. Brackets
25bc394284 Ignore the material update flag w/o vertex color.
Instead of using materialambient for all of them.

Fixes #3918, and seems to match tests with 3dstudio.
2013-12-29 12:57:30 -08:00
raven02
2e7609b084 Cleanup ClearmodeDepthMask 2013-12-10 20:48:20 +08:00
Unknown W. Brackets
c6a441965e Move shared clut check to gstate. 2013-12-08 23:11:56 -08:00
Henrik Rydgard
ca1d4172ca Tiny optimization in block copies 2013-12-04 11:34:54 +01:00
Henrik Rydgard
eea8413a82 Make the texcoord speedhack a bit less aggressive at eliminating uvscaleoffset uniform updates.
Should fix #4688 and the new problem in #2919 while keeping Frontier Gate Boost working.
2013-11-30 15:54:20 +01:00
Sacha
c71186b35a Partial Stretch: This setting is needed on other devices too. 2013-11-28 14:59:17 +10:00
Unknown W. Brackets
1e65a691f4 Cap the number of vertexes per flush.
Might not be realistic, but we crash if we go over.  Pretty unlikely to
happen in real games, but I suppose not impossible.  Happens in the vertex
speed demo (#3106.)
2013-10-27 14:43:58 -07:00
Sacha
ecfe43c149 CityHash is not used anymore, so we won't compile it. 2013-10-28 03:26:00 +10: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
Unknown W. Brackets
9fe1a99ab3 Fix some warnings. 2013-10-14 22:09:21 -07:00
Henrik Rydgard
0c2c1751f5 Windows: Let's not link with D3DX, requiring that DLL, until we actually use the D3DX shader compiler. 2013-10-15 01:16:43 +02:00
Unknown W. Brackets
d49ad5f114 Use an accessor for depth/frame addresses. 2013-10-06 22:17:53 -07:00
Unknown W. Brackets
75f2995f25 Move some texture deindexing to GPU/Common/. 2013-09-27 22:46:07 -07:00
Unknown W. Brackets
b4b0b33f57 Move DXT decoding to GPU/Common/. 2013-09-27 22:46:06 -07:00
Henrik Rydgard
bd8cb4b02d Start work on implementing bbox, add a comment with some thoughts.. 2013-09-24 14:14:05 +02:00
Henrik Rydgard
424b4cbd5f Move GE_CMD_BJUMP to GPUCommon. Add the flag. (no actual bbox impl yet) 2013-09-24 14:14:04 +02:00
Unknown W. Brackets
eabd8b5302 Add GPU debugging hooks to Host, not yet in use. 2013-09-22 08:14:55 -07:00
Henrik Rydgard
01def3b6cc Missed these 2013-09-21 23:44:11 +02:00
Henrik Rydgard
82e5787bbe Preparation for proper spline/bez: Convert control points to a simple format.
The bezier/spline code will no longer need to handle morph and splines,
when it's finally written. This is done by pre-skinning in software and
pre-decoding to get rid of the morph.
2013-09-21 23:37:14 +02: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
Ced2911
d495cdbdf9 fix 8888 texture decoding 2013-09-18 14:40:33 +02:00
The Dax
e8263523a8 Build fix for VS 2012. 2013-09-17 22:37:49 -04:00
The Dax
d102baacd0 Prep PPSSPP for Visual Studio 2013. 2013-09-17 10:27:06 -04:00
Henrik Rydgard
fce5067279 Show a warning message on game start if Chainfire3D is installed. 2013-09-17 10:27:42 +02:00
Ced2911
5c4ed26442 Make the dx9 renderer working in headless mode 2013-09-16 09:42:30 +02:00
Unknown W. Brackets
5617f07462 Fix dx9 so it builds on Windows (DOES NOT WORK.) 2013-09-15 23:22:10 -07:00
Unknown W. Brackets
ad4bd8ed74 softgpu: small optimization, precompute tex info. 2013-09-15 21:39:28 -07:00
Unknown W. Brackets
f43997a47f Update bufw handling in all gpus.
This fixes the softgpu as well, at least.
2013-09-15 21:27:13 -07:00
Unknown W. Brackets
f55b6a0dbc Put the DirectX9 stuff into a namespace.
This makes it almost build on Windows, but not quite.  Some required files
excluded from build, still.
2013-09-15 08:56:12 -07:00
Henrik Rydgard
cc6681cd0b Compile Ced's DX9 GPU on Windows. Not hooked up yet.
This needs work, has several problems that must be fixed to run on Windows.

Ced, you'll have to fix up your xb project file a bit, sorry.
2013-09-15 12:52:44 +02:00
Ced2911
0a29202e12 sync gpu with gles 2013-09-12 09:54:48 +02:00
Ced2911
4f54c683f5 update gpu 2013-09-12 09:54:32 +02:00