Commit Graph

76 Commits

Author SHA1 Message Date
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
Florent Castelli 8c3552de74 cmake: Detect features at compile time
Instead of relying on manually passed down flags from CMake,
we now have ppsspp_config.h file to create the platform defines for us.
This improves support for multiplatform builds (such as iOS).
2016-10-19 12:31:19 +02:00
Henrik Rydgard b264657d56 Implement W^X-compatible path. Works on Windows and Android, hopefully iOS (untested).
Disabled block linking in this mode, can re-enable with some more work later.

To enable W^X on other platforms than iOS, simply change PlatformIsWXExclusive.
2016-08-28 14:52:08 +02:00
Unknown W. Brackets ebce8d2753 Don't convert to float with prescale off.
Since we assume we need to normalize, it seems.
2016-04-16 19:00:34 -07:00
Unknown W. Brackets ff802a983a vertexjit: Implement x86 tc morph decoding. 2016-04-16 18:38:08 -07:00
Henrik Rydgard 0a8d74728a x86/64: Add a couple of more cases to very minor vertex skinning optimization 2016-03-28 18:40:23 +02:00
Henrik Rydgard e270b955bb x86/x64: Minor vertex decoder optimization 2016-03-22 23:56:55 +01:00
Henrik Rydgard 56814ad52d SW skinning (ARM32, x86): Don't convert more bone matrices than necessary
Was already fixed on ARM64.
2015-10-25 00:51:47 +02:00
Henrik Rydgard 6a373fe09a Make it possible to view vertex decoders through the shader viewing mechanism (even though they aren't strictly shaders, they fit the model). 2015-10-24 10:41:31 +02:00
Unknown W. Brackets dff4aeb30f Correct uv bound pointers in arm vertexjit. 2015-09-13 14:55:10 -07:00
Unknown W. Brackets 5c233fa545 Add initial decoding check for uv bounds. 2015-09-13 10:00:33 -07:00
Unknown W. Brackets c6b55459b1 vertexjit: Skip soft skinning setup when morphing.
This makes x86 match arm.
2015-05-16 21:47:13 -07:00
Henrik Rydgard 4422b3deb7 x86: Minor soft-skinning optimization 2014-11-16 17:43:29 +01:00
Unknown W. Brackets c02172ebd5 vertexjit: Oops, this wasn't supposed to be there.
Fixes #7081.
2014-11-11 08:31:27 -08:00
Unknown W. Brackets a838459627 vertexjit: Optimize weights on x64 (not 32-bit.)
A few percent in Gods Eater Burst and Kingdom Hearts.
2014-11-08 15:16:02 -08:00
Henrik Rydgard 8177b4c43b Avoid an ifdef using PTRBITS 2014-10-12 19:35:55 +02:00
Unknown W. Brackets 4210ba44eb Clean up a few more ImmPtr() cases. 2014-09-21 08:34:27 -07:00
Unknown W. Brackets 967df9c018 vertexjit: Use SSE4 in tc u8/u16 code.
It's not much different for non-SSE 4, might as well be common.
2014-09-17 23:15:24 -07:00
Unknown W. Brackets 5276487611 vertexjit: Use SSE for all weights, u8/u16. 2014-09-17 23:14:36 -07:00
Unknown W. Brackets 4c1061ff4a vertexjit: Optimize the d3d9 weights a bit.
Only used without skinning on, or with morph, of course.
2014-09-17 08:39:56 -07:00
Unknown W. Brackets 062bcceeee Oops, forgot to multiply. 2014-09-17 08:27:44 -07:00
Unknown W. Brackets f426be59b4 vertexjit: Initial u8/u16 weights for d3d9. 2014-09-16 23:28:35 -07:00
Unknown W. Brackets 37f90597e3 vertexjit: Optimize u8/u16 weights a little.
Only for uncommon values.
2014-09-16 23:28:28 -07:00
Henrik Rydgard 1407648b59 D3D vtxdec: Convert weights and normals to float 2014-09-12 02:00:33 +02:00
Henrik Rydgard 0727df6f0a Jit the most common of the "ToFloat" texcoord conversions 2014-09-12 02:00:33 +02:00
Henrik Rydgard 37e3cf362f Move vertexdecoder files into GPU/Common 2014-09-12 02:00:32 +02:00