Unknown W. Brackets
b4496f1975
Core: Move config enums to separate file.
...
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik Rydgård
dbe52c8135
Remove some obsolete checks - software skinning is now supported even if morphcount isn't 1.
2018-04-10 13:09:01 +02:00
Henrik Rydgård
00f3bf6102
Revert "Start removing support for hardware skinning."
...
This reverts commit dcb773d62436525b4719555ce23a38a1342b45f7.
2018-04-10 12:31:21 +02:00
Henrik Rydgård
ccd594dae7
Revert "VertexLoader: Remove now-unused weights translation code"
...
This reverts commit 44100c6c1d38bf2318b157cd28a1cbf7aab5270d.
2018-04-10 12:30:49 +02:00
Henrik Rydgård
8953d7ff73
Revert "Comment fixes, reindentation."
...
This reverts commit 6fa9fcefb2893d1e9f3250337aa4f8243b6e3b6d.
2018-04-10 12:14:23 +02:00
Henrik Rydgård
1c99ebcbcc
Fix DecFmt bug
2018-04-10 12:12:47 +02:00
Henrik Rydgård
69309aa400
Revert "Remove some remains of software skinning"
...
This reverts commit 2d33d526b8b15f46ac0fe15ba182dae608a7cf13.
2018-04-10 11:21:56 +02:00
Unknown W. Brackets
d70568abd2
GPU: Fix s8 norm with skin and morph.
...
Fixes #10851 .
2018-04-02 19:18:16 -07:00
Henrik Rydgård
614cabb115
Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
...
The raw pipeline cache got pretty large. Instead, store IDs like GL.
There's still a disabled option to store the pipeline cache objects.
2018-03-16 21:03:03 +01:00
Henrik Rydgård
2d33d526b8
Remove some remains of software skinning
2018-03-16 20:38:05 +01:00
Henrik Rydgård
6fa9fcefb2
Comment fixes, reindentation.
2018-03-05 00:03:47 +01:00
Henrik Rydgård
44100c6c1d
VertexLoader: Remove now-unused weights translation code
2018-03-05 00:03:47 +01:00
Henrik Rydgård
dcb773d624
Start removing support for hardware skinning.
2018-03-05 00:03:47 +01:00
Henrik Rydgård
66cbad443a
Add necessary decode functions to support morph+skin
2018-03-05 00:03:47 +01:00
Henrik Rydgård
45cfda4aa0
Small refactoring in VertexDecoderCommon
2018-03-05 00:03:47 +01:00
Henrik Rydgård
5c50c007b7
Minor fix for previous commit.
2018-01-03 18:21:50 +01:00
Henrik Rydgård
e7893001e9
VertexDecoderCommon: A few more cases.
2018-01-03 17:02:07 +01:00
Henrik Rydgård
e472947488
VertexDecoderCommon: Avoid reading the destination during vertex decode, might be some kind of memory that's not good to read from...
2018-01-03 16:31:01 +01:00
Unknown W. Brackets
db300da1d7
Reporting: Improve no pos verts message.
2017-12-01 09:45:58 -08:00
Henrik Rydgård
3e749a94ce
Vulkan: Fix bug where we ended up creating duplicate pipelines even if vertices decoded to the same format, if they were created from different formats.
...
This can cut down the number of pipelines to a third or less in some
games. However, benefit is likely smaller since Vulkan drivers will
deduplicate shaders inside each vkPipelineCache object.
Helps #10106 while not actually implementing any of the suggestions inside.
2017-11-13 11:22:33 +01:00
Henrik Rydgård
6a1fa728d8
Remove Globals.h
2017-08-31 17:15:22 +02:00
Henrik Rydgård
22e65ba80d
Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11
2017-08-31 01:14:51 +02:00
Henrik Rydgård
2f85e6516e
Minor optimizations (use the new hashmap in a few more places)
2017-08-20 19:18:46 +02:00
Henrik Rydgård
0ec1e5e3b2
Don't erase and rewrite the dispatcher when the cache is cleared. Fixes #9708
2017-05-26 15:48:03 +02:00
Unknown W. Brackets
257f8dbbc6
GPU: Remove now-unused vertex decoder funcs.
...
We always convert to float now, so these functions are no longer used.
2017-05-06 18:55:16 -07:00
Henrik Rydgard
c54999d26a
Even the vertex interpreter, not just the jit, can crash from misaligned vertex data.
2017-04-02 23:57:59 +02:00
Henrik Rydgard
8956a823bb
If the main CPU JIT is not enabled, don't try to vertex-jit. See #9404
2017-03-10 00:18:53 +01:00
Henrik Rydgard
a272a4ee3f
Improve error message on vertex decoder compile fail. Also disable a broken vertex JIT function until it can be fixed.
2017-03-03 14:19:36 +01:00
Henrik Rydgard
389650e2a7
Need to include getUVGenMode in vertex cache hash. Fixes #9263
2017-02-04 11:15:47 +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
Henrik Rydgard
5d5f10d956
Attempts to counter crashes seen in the Google Play developer console
2016-12-01 22:07:03 +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
2e1986d0c8
Fix a few reorder warnings.
2016-05-01 09:50:03 -07: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
614665068a
Implement morphing for texcoords.
...
Tests show that this can be used.
2016-04-16 18:38:06 -07:00
Unknown W. Brackets
a0397bce4c
Hopefully fix prescale in remasters.
...
Don't actually have a remaster to test, though.
2016-04-13 23:15:41 -07:00
Unknown W. Brackets
1e0051a792
Add support for 32-bit indices.
...
Not clear how often these are used by games. Let's find out.
2016-04-10 02:24:58 -07:00
Henrik Rydgard
a995dd2ff4
Get rid of strange offset in Vulkan matrix converter
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
d165680ee7
Don't assume _MSC_VER / _WIN32 mean x86/x64.
2016-01-03 15:07:36 -08:00
Sacha
bbc4f64999
MIPS: Fix build so we can compile this again.
2015-10-29 02:46:43 +00: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
72a73045bb
Add uv range to arm64 and non-jit decoders.
2015-09-13 10:01:37 -07:00
Unknown W. Brackets
327ca4c96e
Stub invalid vertex decoder colors to avoid crash.
...
These values are invalid, but before we'd call a null pointer if we hit
them. Should do tests to see what actual behavior is.
2015-04-17 23:24:21 -07: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
4bd95b0cb7
ARM64: Fixup software skinning. Now seems to work, at least in a bunch of games..
2015-04-06 18:13:45 +02:00
Henrik Rydgård
fbaffdceab
Remove some outdated comments, minor stuff
2015-04-06 18:13:36 +02:00
Henrik Rydgard
5496b3d3b1
ARM64: Some minor vertex decoder work. Hm, I think SCVTF will actually divide by 128.0, not 127.0 :/
2015-04-06 18:13:20 +02:00