Commit Graph

2773 Commits

Author SHA1 Message Date
Henrik Rydgård
524854ac16 Merge pull request #9233 from xebra/spline_bezier
[spline/bezier]Remove wasted code.
2017-01-24 23:33:51 +01:00
xebra
133a9d78a8 [spline/bezier]Remove wasted code. 2017-01-25 06:35:36 +09:00
Henrik Rydgard
d85888dc2b Table-driven dirty-flags for Vulkan and D3D9. Minor Vulkan optimization. 2017-01-24 18:12:20 +01:00
Henrik Rydgard
1fe32d380b Update lots of dirty-flag table entries 2017-01-24 18:12:20 +01:00
Henrik Rydgard
c70265d7f2 Use table-driven dirtying instead of callbacks in GPU_GLES 2017-01-24 18:12:20 +01:00
Henrik Rydgard
e4cb44c243 Merge the texture flags into the dirty flags 2017-01-24 18:12:20 +01:00
Henrik Rydgard
c289a2c7bf Split TextureChanged into two bools, so we can later convert to dirtyflags 2017-01-24 18:12:20 +01:00
Henrik Rydgard
7d60ec73be Move framebufChanged into the dirty flag field 2017-01-24 18:12:20 +01:00
Henrik Rydgard
b423998c36 Move uniform dirty-flag to gstate_c, opening up for other uses. 2017-01-24 18:12:20 +01:00
xebra
3ecff41908 [spline/bezier]Fix to avoid temporarily texture animation bug with hardware tessellation. 2017-01-24 14:39:19 +09:00
Henrik Rydgard
f111767315 Workaround the lack of support for software skinning in Vulkan 2017-01-23 22:06:30 +01:00
Henrik Rydgard
69267d4cd6 Minor optimizations 2017-01-23 21:14:27 +01:00
Henrik Rydgard
ae37df0a8c Further centralization of EstimatePerVertexCost, now moved to GPUCommon 2017-01-23 21:11:39 +01:00
Henrik Rydgard
daf02f1de6 Centralize the matrix load functions, no need to duplicate them for each backend. 2017-01-23 21:11:39 +01:00
Henrik Rydgard
3c221a7ebd Extract the dirty flag from the shader managers so code that dirties uniform flags can be shared. 2017-01-23 21:11:39 +01:00
Henrik Rydgard
097638f4fd Fix crash bug 2017-01-23 21:09:20 +01:00
Henrik Rydgard
59d80a3785 Share the set of dirty flags between the backend, to let use share more code. 2017-01-23 20:39:17 +01:00
Henrik Rydgard
63c00ec528 Don't need to take vertex format into account when applying UV scale for spline/bezier 2017-01-23 17:44:13 +01:00
Henrik Rydgard
bd4436c6eb Centralize EstimatePerVertexCost and Execute_BlockTransferStart 2017-01-23 17:22:17 +01:00
Henrik Rydgard
d9acd27126 Rename GLES files to match the convention the other backends use. 2017-01-23 17:08:58 +01:00
Henrik Rydgård
f111eede85 Some GLSL syntax fixes 2017-01-23 14:31:44 +01:00
xebra
7530e35ab6 Fix 64bits shader dirty flags properly. 2017-01-23 14:13:28 +01:00
xebra
de253a6aef [spline/bezier]Revert #ab9c1d4 about spline/bezier. 2017-01-23 14:12:46 +01:00
xebra
deea258383 [spline/bezier]Fix to avoid crashing when activated hardware tessellation with dx9 and vulkan. 2017-01-23 14:12:03 +01:00
xebra
334afbd1ae [spline/bezier]Fix again about compatibility with GLES. from @LunaMoo. 2017-01-23 14:12:03 +01:00
xebra
67503ed160 [spline/bezier]Small fixes for compatibility with GLES 2.0. 2017-01-23 14:12:03 +01:00
xebra
5aeaa95f2c [spline/bezier]Implement hardware tessellation on OpenGL. 2017-01-23 14:12:02 +01:00
xebra
38293adc78 [spline/bezier]Expand shader dirty flags to 64 bit, and add some flags for hardware tessellation. 2017-01-23 14:12:02 +01:00
Henrik Rydgard
ab9c1d4dc0 Centralize the spline/bezier/bbox execute functions into GPUCommon 2017-01-21 20:43:05 +01:00
Henrik Rydgård
5af8b152e1 Further buildfixes 2016-12-27 11:59:12 +01:00
Henrik Rydgård
674937a520 Extend some enums with potentially useful values 2016-12-27 11:59:12 +01:00
Henrik Rydgard
dc5c0c0d2d Centralize ProcessEvent 2016-12-21 20:02:05 +01:00
Henrik Rydgard
7634ff7f09 Centralize a few more functions, fix DX9 2016-12-21 18:51:19 +01:00
Henrik Rydgard
98ebf9ed6f Centralize PerformStencil* and Invalidate* functions 2016-12-21 18:33:08 +01:00
Henrik Rydgard
866d4a645f Centralize "PerformMemory*" functions 2016-12-21 18:26:06 +01:00
Henrik Rydgard
e15cba0e1b Centralize "Resized()" 2016-12-21 18:13:58 +01:00
Henrik Rydgard
7e46a153c0 Centralize DoBlockTransfer between the GPUs.
Required adding a pointer to the framebuffer manager and texture cache in
GPUCommon, which took a little bit of refactoring.
2016-12-21 18:07:17 +01:00
Henrik Rydgard
0fa2f2c7ae Remove more now-unused code 2016-12-20 13:50:07 +01:00
Henrik Rydgard
1dbeca0618 Only support decoding UV to float in vertex formats. Supporting u8 and 16 was more complexity than it's worth. 2016-12-20 13:42:54 +01:00
Henrik Rydgard
9d7983eee8 Remove the ability to turn off prescaleUV entirely. It's simply better to do it in the vertex decoder. 2016-12-20 13:27:44 +01:00
Julian
c92ec20811 Fixed Inconsistent texture filtering in Disgaea 2 #4235 2016-12-16 22:53:55 +02:00
Henrik Rydgård
705627d6d3 Merge pull request #9053 from Orphis/android_define
android: Change preprocessor define to standard __ANDROID__
2016-10-12 13:12:14 +02:00
Florent Castelli
e0ff68b3f6 c++11: Remove compat header base/functional.h
We want a proper C++11, not tr1. We don't target those compilers anyway.
2016-10-12 11:32:45 +02:00
Florent Castelli
70593d1004 android: Change preprocessor define to standard __ANDROID__
ANDROID is only standard to the old Makefile buildsystem, not the platform.
2016-10-12 11:14:09 +02:00
Unknown W. Brackets
4d0c457ddc Cleanup display vs. output screenshot terminology. 2016-09-25 16:35:43 -07:00
Unknown W. Brackets
fa0e88f1b7 Add a flag to use the display vfb for screenshots.
This fixes proportions of reporting, savestate screenshots, and TAS
recording for PS1 ports, mainly.
2016-09-25 16:32:18 -07:00
Unknown W. Brackets
f5f9b5227d Tweak 565 buffer clearing. 2016-09-18 20:38:19 -07:00
Unknown W. Brackets
ee0bc6c04d Clear memory when clearing drawing.
This should help synchronize block transfers better.

Should improve #8973.
2016-09-18 20:38:19 -07:00
Henrik Rydgard
2337523fe9 Try to avoid a commonly reported crash in TextureCache, though not sure what really to do here 2016-09-18 23:11:41 +02:00
Unknown W. Brackets
26809c1d7a Determine alpha test texture after texture.
Because, of course, this reads texture alpha parameters for blending
optimizations.

Fixes #8970.
2016-09-11 11:05:04 -07:00