Commit Graph
2369 Commits
Author SHA1 Message Date
Henrik Rydgård 43744b0239 Merge pull request #7741 from hrydgard/frame-profiler
Frame profiler overlay
2015-05-26 00:42:01 +02:00
Henrik Rydgard 0b2a1dfe53 Profile a few more scopes 2015-05-26 00:39:27 +02:00
Unknown W. Brackets c75010931c Use SSE in CheckAlpha scanning. 2015-05-24 22:55:43 -07:00
Henrik Rydgard 6f4cea860c Split texture load profiling into decode and load/replace. Make profiler work on Android. 2015-05-24 23:45:40 +02:00
Henrik Rydgard 6b1df631a6 Move the texcache measurements to strictly include only actual texture loading, and not framebuffer shenanigans etc. 2015-05-24 23:45:39 +02:00
Henrik Rydgard 2e26a4798e Scale the frame profiler graph dynamically 2015-05-24 23:45:37 +02:00
Henrik Rydgard 26624709f7 Hook up the frame profiler to a few measurements 2015-05-24 23:45:36 +02:00
Unknown W. Brackets ded92aa977 Resize here just to be safe.
Not that a texture ought to be > 2MB, but in case we lower that initial
buffer size or something.
2015-05-24 11:06:34 -07:00
Henrik Rydgård 83182a0469 Merge pull request #7739 from hrydgard/screen-rotation
Implement basic screen rotation as requested in #297
2015-05-18 16:31:19 +02:00
Unknown W. Brackets 1767bd958c Move color conversion funcs to ColorConv.
This paves the way a bit for NEON conversion funcs.
2015-05-17 13:45:30 -07:00
Unknown W. Brackets 425ff3d78f Track bone matrix updates for future morph usage.
This makes them upload later, if/when they're needed.

Fixes #7746, Shadow of Destiny artifacts when software skinning is
enabled.
2015-05-16 21:49:25 -07:00
Henrik Rydgard 95b6b50fd5 Disable screen rotation in non-buffered rendering (as it won't worK) 2015-05-12 22:44:18 +02:00
Henrik Rydgard 3f7830743a Implement basic screen rotation as requested in #297 . Does not work correctly in non-buffered rendering yet. 2015-05-12 21:01:15 +02:00
Henrik Rydgard 5d0d67140f Reverse Y when checking for rotated rects in Direct3D 9. Fixes #7738. 2015-05-12 20:01:04 +02:00
Unknown W. Brackets 4fa50a9a50 Reduce clut allocation size a bit.
Really think this probably should only be 1024 bytes, but need to work out
some more details before shrinking all the way.
2015-04-26 00:50:47 -07:00
Unknown W. Brackets ab67c49ae9 Make sure we don't hash outside max bytes.
If we've never even loaded that much, play it safe.
2015-04-26 00:43:36 -07:00
Unknown W. Brackets 6e50a0b274 Allow depal palette entries to repeat.
This is what happens if the base is 0x10 in 8888 mode (means | 0x100.)
2015-04-26 00:36:08 -07:00
Unknown W. Brackets c8fc9b0bf3 Cleanup some incorrect handling of clut offset. 2015-04-26 00:31:00 -07:00
Henrik Rydgård a4a10588ed Merge pull request #7697 from unknownbrackets/texcache
Include texture size in the cache key
2015-04-20 00:08:44 +02:00
Unknown W. Brackets b726a414d7 Log a reason when invalidating textures.
Makes debugging easier.
2015-04-18 12:42:13 -07:00
Unknown W. Brackets 58563324bd Include texture size in cache key.
This makes Tales of Destiny 2's towns significantly faster.  It may
however cause us to keep textures around for longer - but we still account
for them in our metrics and invalidation.
2015-04-18 12:42:13 -07:00
Unknown W. Brackets ce9f404bef Unswizzle when reading from the swizzled mirror. 2015-04-18 12:39:04 -07:00
Unknown W. Brackets 42bcea7b41 Report when minz/maxz is used in an effective way.
As long as it's outside the viewport it should be clipped anyway.

One concern is, does clipenable affect z?  A game could depend on that.
2015-04-17 12:59:59 -07:00
Unknown W. Brackets 1e8f2c2630 Allow clut load outside valid mem, fill with zero.
And only for the parts outside memory.
2015-04-12 22:38:17 -07:00
Henrik Rydgard a19ea78b4b Consolidate the texture scaler code. 2015-04-08 22:52:49 +02:00
Henrik Rydgard 6660985210 Extract a bunch more color conversion loops. 2015-04-08 22:52:48 +02:00
Henrik Rydgard b5acf15cc9 Extract some explicit loops into calls to color conversion functions. 2015-04-08 22:52:48 +02:00
Henrik Rydgard c2cf2bd97e Move some more color conversion functions to ColorConv 2015-04-08 22:52:47 +02:00
Henrik Rydgard 31961eace9 Color conv attempt 2. Start consolidating simple color conversion functions in a single header+cpp. 2015-04-08 22:52:46 +02:00
Henrik Rydgård a67f009679 Merge pull request #7668 from hrydgard/consolidate-spline
Consolidate spline code
2015-04-08 22:20:55 +02:00
Henrik Rydgard 058499e5bf De-dupe the spline code 2015-04-08 21:44:54 +02:00
Henrik Rydgard 2002576e9d DrawEngineCommon: Make it possible to call Flush from shared code. 2015-04-08 21:37:54 +02:00
Henrik Rydgard ed8a3eaf6d Move the vertex decoder cache into DrawEngineCommon 2015-04-08 21:35:00 +02:00
Unknown W. Brackets 10626e356d Avoid a potential divide by zero. 2015-04-08 11:57:59 -07:00
Unknown W. Brackets 5285f977e4 Initialize a member that was missed.
Oops, this didn't matter much but it should start at 0.
2015-04-08 11:29:28 -07:00
Unknown W. Brackets 2450724be2 Make Memory::Memcpy() execute memchecks directly.
This makes it easier to handle breakpoints in HLE.
2015-04-05 18:09:20 -07:00
Henrik Rydgård 79fc557ad1 Merge pull request #7626 from sum2012/GPU-minor
GPU:Avoid "decimate" the usageFlags corrupted memory
2015-03-23 15:22:08 +01:00
sum2012 3549705195 Use better solution from @Bigpet 2015-03-23 20:29:51 +08:00
Unknown W. Brackets 5fa3bf0eb9 Move the viewport transform to the proj matrix.
The viewport has an implementation defined maximum size.  On some devices,
it's as low as 2048 or 4096.

Tales of Destiny 2, for example, uses a large viewport, which may be
outside this range at 1x or 2x on such devices.  This makes it work much
better.  It may also have better subpixel precision.
2015-03-22 23:35:24 -07:00
sum2012 433347e3b6 GPU:Do not "decimate" the usageFlags.
Fix #7625
2015-03-23 07:25:44 +08:00
Henrik Rydgård cf7115aa17 Merge pull request #7599 from unknownbrackets/texscaling
Avoid constant reload of frequently changed textures
2015-03-18 18:11:30 +01:00
Unknown W. Brackets 0dda098b2b Oops, forgot to actually reset vertex shader. 2015-03-15 17:05:23 -07:00
Unknown W. Brackets d00f6adf11 Avoid querying attrib locations in depal runtime. 2015-03-15 14:44:13 -07:00
Unknown W. Brackets 8f8aeaef77 Improve depal shader failure cases.
Primarily, this handles lost (e.g. Android sleep) better, in that it
recreates the vertex shader.  Previously, this would simply cause all
future depal operations to fail, and to constantly retry compiling and
linking the failed program.
2015-03-15 13:15:16 -07:00
Unknown W. Brackets 7ee9112425 Avoid constant reload of frequently changed tex.
If we detect that it's frequently changing, this will cause it to spiral
into an infinite loop of staying frequently changing and reloading to try
to scale.
2015-03-15 09:10:09 -07:00
Henrik Rydgård 085ecc0a64 Merge pull request #7591 from unknownbrackets/gpu-framebuf
Better glInvalidateFramebuffer usage, track usage flags better
2015-03-15 11:18:30 +01:00
Unknown W. Brackets 6b26e1a591 Read pending vertex data before exiting gpu loop.
Fixes save pictures in Crimson Gem Saga.
2015-03-14 18:11:24 -07:00
Unknown W. Brackets 0f38a1f459 Invalidate buffers after using for post shaders. 2015-03-14 16:16:32 -07:00
Unknown W. Brackets e7b830ff61 Invalidate buffers used for download. 2015-03-14 16:11:20 -07:00
Unknown W. Brackets d8478255d4 Invalidate temp FBOs each frame.
These are used for depal and render-to-self, as well as shader blending.
2015-03-14 16:02:04 -07:00