eden/src/common
CamilleLaVey ed566919f4
[vulkan, android] Add feature of post-processing shaders on Android (#4348)
Very self-explanatory; implementation of the feature for post-processing shaders for Android (at least for now); will allow users to enhance the graphic quality of video games based on the use of multiple shaders adjustable, presets and more, inspired on the PPSSPP implementation, this feature adds 22 customizable shaders (1 pass) that lives on the overlay of the screen, which means that aside of the capability to chain multiple shaders on the screen, this doesn't have depths (pixel/ depth z-buffer) so it ensures the performance with it's use. Few shaders were a faithful port from PPSSPP with their respective attribution on the shader headers for their respective owners; and there are adaptations from public references/ cinematographic (Anime4K) and the rest are my own addition.

_Special Credits:_

1.- PPSSPP Team for their contribution on the public references for shaders: Henrik Rydgard, ShadX, SimoneT, KillaMaaki and guest(r).
2.- Niklas Haas.
3.- bloc97.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4348
Reviewed-by: lizzie <lizzie@eden-emu.dev>
Reviewed-by: Maufeat <sahyno1996@gmail.com>
2026-09-10 15:14:02 +02:00
..
android [android] Replace Oboe audio with SDL3 audio (#4338) 2026-09-02 00:29:58 +02:00
container [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
fs [vulkan, android] Add feature of post-processing shaders on Android (#4348) 2026-09-10 15:14:02 +02:00
net [common/net] fix linking errors due to C++11 ABI typedef mishandle (#4260) 2026-08-29 20:59:57 +02:00
windows [port] windows 7 support (#3105) 2025-11-30 06:04:36 +01:00
x64 [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
CMakeLists.txt [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
address_space.cpp general: Format licenses as per SPDX guidelines 2022-10-06 21:00:54 +02:00
address_space.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
address_space.inc [fmt] use {#:x} instead of 0x{:#x} (#4170) 2026-07-25 21:47:07 +02:00
adpf.cpp [core, gpu, threads] Multithreading refactor (#4254) 2026-08-08 04:39:47 +02:00
adpf.h [core, gpu, threads] Multithreading refactor (#4254) 2026-08-08 04:39:47 +02:00
algorithm.h General: Fix compilation for GCC 2022-10-06 21:00:53 +02:00
alignment.h [core/hle/kernel/svc] add missing CanContain check for {Un}MapProcessCodeMemory, remove 4KB align func (#4164) 2026-07-07 20:02:26 +02:00
announce_multiplayer_room.h [chore] Fixed a couple memory leaks using up ~15 MB each iteration (#398) 2025-12-26 02:55:52 +01:00
assert.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
assert.h [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
atomic_ops.h [common] provide fallback for lack of atomic u128 support (#2999) 2025-11-13 13:27:32 +01:00
bit_field.h [common] rework BitField and BitUtil, use concepts whenever possible (#4076) 2026-07-09 03:47:04 +02:00
bit_util.h [common] rework BitField and BitUtil, use concepts whenever possible (#4076) 2026-07-09 03:47:04 +02:00
bounded_threadsafe_queue.h [video_core] reduce SPSC/MPSC queue contention for commands (#289) 2025-11-16 22:39:46 +01:00
cityhash.cpp chore: add missing SPDX tags 2022-04-28 18:24:11 +02:00
cityhash.h chore: add missing SPDX tags 2022-04-28 18:24:11 +02:00
common_funcs.h [common] rework BitField and BitUtil, use concepts whenever possible (#4076) 2026-07-09 03:47:04 +02:00
common_types.h [tools, cmake] refactor: update/hash check scripts, use tags for some more deps, proper CPMUtil separation (#2666) 2025-10-05 03:04:53 +02:00
concepts.h [common] replace Common::(DerivedFrom, IsArithmetic, Size, ConvertibleTo, IsIntegral) with libstdc++ equivalents (#290) 2025-11-07 17:03:01 +01:00
container_hash.h [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
cpu_features.cpp [*] basic in-house cpp linting (#4039) 2026-06-04 05:49:07 +02:00
cpu_features.h [core/core_timing] better MWAITX and WAITPKG delays (#3984) 2026-05-30 21:59:10 +02:00
demangle.cpp [ci] Fix macOS "no type named 'free' in namespace 'std' (#4347) 2026-09-04 13:32:36 +02:00
demangle.h [common] use abi::__cxa_demangle for demangling using the system's glibcxx/libc++ (#3894) 2026-06-03 22:53:09 +02:00
device_power_state.cpp Add Device Power State (Windows, Linux, Mac and Android) (#197) 2025-06-18 08:34:54 +00:00
device_power_state.h Add Device Power State (Windows, Linux, Mac and Android) (#197) 2025-06-18 08:34:54 +00:00
div_ceil.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
dynamic_library.cpp Revert "[common/dynamic_library] fix AUR build error (#4156)" (#4157) 2026-07-02 22:07:37 +02:00
dynamic_library.h common: dynamic_library: Add ctor for existing handle. 2023-06-03 00:05:31 -07:00
elf.h jit: add support for relr-type relocations 2023-10-11 11:13:19 -04:00
error.cpp [*] basic in-house cpp linting (#4039) 2026-06-04 05:49:07 +02:00
error.h chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
fiber.cpp [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
fiber.h [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
fixed_point.h [common] replace Common::(DerivedFrom, IsArithmetic, Size, ConvertibleTo, IsIntegral) with libstdc++ equivalents (#290) 2025-11-07 17:03:01 +01:00
free_region_manager.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
hash.h Refactor VideoCore to use AS sepparate from Channel. 2022-10-06 21:00:52 +02:00
heap_tracker.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
heap_tracker.h Partial revert "[common] remove HeapTracker (#3001)" (#3107) 2025-11-27 15:31:34 +01:00
hex_util.cpp [fs] fix crash on '#' comments in pchtxt patches (#4124) 2026-07-25 21:20:04 +02:00
hex_util.h Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
host_memory.cpp [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
host_memory.h [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
httplib.h [cmake, deps] conjure common/httplib.h and remove global def for httplib macros (#3800) 2026-04-06 19:13:09 +02:00
input.h [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
intrusive_list.h common: add intrusive list type 2023-04-29 17:46:26 -04:00
intrusive_red_black_tree.h general: fixes for gcc 13 2023-04-02 19:02:04 -04:00
literals.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
log_classes.inc [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
logging.cpp [common/logging] Fix long logs, remove clutter on Android logcat (#4310) 2026-08-30 08:24:00 +02:00
logging.h [common/logging] eliminate uneeded std::string{} allocations per each logging (#4273) 2026-08-23 22:37:17 +02:00
lru_cache.h [texture_cache] Fix a rare visual corruption under specific conditions (#3986) 2026-05-24 01:03:20 +02:00
lz4_compression.cpp fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
lz4_compression.h fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
make_unique_for_overwrite.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
math_util.h [hid_core, input_common] use std::numbers::pi{_v} instead of re-defining (#4160) 2026-07-07 20:13:33 +02:00
memory_detect.cpp general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
memory_detect.h Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
multi_level_page_table.cpp general: Format licenses as per SPDX guidelines 2022-10-06 21:00:54 +02:00
multi_level_page_table.h General: address feedback 2022-10-06 21:00:54 +02:00
multi_level_page_table.inc [memory] coalesce redundant remappings of MultiPageLevel (#3857) 2026-04-28 01:17:56 +02:00
overflow.h [common] replace Common::BitCast with libc++ provided one (#2774) 2025-10-22 02:56:28 +02:00
page_table.cpp [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
page_table.h [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
param_package.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
param_package.h [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
parent_of_member.h Silence std::aligned_storage warnings as it's deprecated in C++23, 2022-09-01 16:50:41 +01:00
point.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
polyfill_thread.h [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
random.cpp [android] fix crash due to ctor/dtor ordering for std::random_device being uninitialized when used in other static ctor/dtors (#3806) 2026-03-31 23:45:06 +02:00
random.h [common] unify std::random_device (#3801) 2026-03-31 20:12:41 +02:00
range_map.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
range_mutex.h smmu: use new range mutex construction for protecting counters 2024-01-31 16:38:51 +01:00
range_sets.h Common: Rename SplitRangeSet to OverlapRangeSet 2024-02-05 23:01:17 +01:00
range_sets.inc [cmake] enable clang-cl and WoA builds (#348) 2025-09-09 20:47:49 +02:00
ring_buffer.h [common] rework BitField and BitUtil, use concepts whenever possible (#4076) 2026-07-09 03:47:04 +02:00
scm_rev.cpp.in [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
scm_rev.h [frontend] Built-in auto updater (#3845) 2026-04-28 20:42:23 +02:00
scope_exit.h scope_exit: Make constexpr 2024-02-19 16:00:46 +01:00
scratch_buffer.h [cmake] Fix some macOS compilation errors (#4350) 2026-09-05 23:43:46 +02:00
settings.cpp [common/logging] Fix long logs, remove clutter on Android logcat (#4310) 2026-08-30 08:24:00 +02:00
settings.h [vulkan, android] Add feature of post-processing shaders on Android (#4348) 2026-09-10 15:14:02 +02:00
settings_common.cpp Fix more typos 2024-01-15 23:26:53 +00:00
settings_common.h [cmake, common] allow build with -fno-rtti and /GR-, to disable gen of rtti and save some bytes in vtables (#359) 2026-02-22 03:09:03 +01:00
settings_enums.h [android] Replace Oboe audio with SDL3 audio (#4338) 2026-09-02 00:29:58 +02:00
settings_input.cpp core: hid: Split SL and SR buttons 2023-11-11 21:03:15 -06:00
settings_input.h android: Input mapping 2024-02-17 12:32:33 -05:00
settings_setting.h [*] Fix compilation on fmt 12.2.0 (#4107) 2026-06-19 22:50:46 +02:00
signal_chain.cpp android: Add cpu bakend gui toggle 2023-11-25 00:47:28 -05:00
signal_chain.h Address some review comments 2023-11-25 00:47:35 -05:00
slot_vector.h [video_core] fix redundant resize-copy overload and just use default-init resize, to reduce stutter on Mario BP (#3874) 2026-05-29 03:28:47 +02:00
socket_types.h [net] support SCTP protocols (+all base FBSD protos), ban more NS domains (#3955) 2026-05-21 21:24:18 +02:00
sparse_large_vector.cpp [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
sparse_large_vector.h [common/core/dynarmic] Optimize page table allocations (#4219) 2026-09-09 21:35:49 +02:00
spin_lock.h [common] move spinlock to pure header def (#3287) 2026-01-13 04:17:27 +01:00
stb.cpp [common/stb] remove unused I/O funcs from non-LTO builds, use common/stb.h on ns service (#4282) 2026-08-28 02:29:52 +02:00
stb.h [common/stb] remove unused I/O funcs from non-LTO builds, use common/stb.h on ns service (#4282) 2026-08-28 02:29:52 +02:00
steady_clock.cpp [common] remove presumed 'hot path' for QPC of 10MHz on SteadyClock::Now() (#4162) 2026-07-07 20:03:27 +02:00
steady_clock.h steady_clock: Introduce a real time clock 2023-03-07 21:17:46 -05:00
stream.cpp general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
stream.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
string_util.cpp [*] basic in-house cpp linting (#4039) 2026-06-04 05:49:07 +02:00
string_util.h [common, fs] include missing header introduced on #330 (#370) 2025-08-31 08:40:46 +02:00
swap.h [*] basic in-house cpp linting (#4039) 2026-06-04 05:49:07 +02:00
thread.cpp [core, gpu, threads] Multithreading refactor (#4254) 2026-08-08 04:39:47 +02:00
thread.h [core, gpu, threads] Multithreading refactor (#4254) 2026-08-08 04:39:47 +02:00
thread_queue_list.h chore: add missing SPDX tags 2022-04-28 18:24:11 +02:00
thread_worker.h [core, gpu, threads] Multithreading refactor (#4254) 2026-08-08 04:39:47 +02:00
threadsafe_queue.h [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
time_zone.cpp [common/logging] Simplify logging logic and fix issues when logging before system is created (#3688) 2026-03-12 18:29:15 +01:00
time_zone.h common: Move system time zone string detection 2023-06-05 15:15:11 -04:00
tiny_mt.h [common] unify std::random_device (#3801) 2026-03-31 20:12:41 +02:00
tree.h [common] Use U8 for colour of RB-tree instead of integer to save space (#228) 2025-08-15 23:21:15 +02:00
typed_address.h [common] rework BitField and BitUtil, use concepts whenever possible (#4076) 2026-07-09 03:47:04 +02:00
uint128.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
unique_function.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
uuid.cpp [core/file_sys] implement IApplicationFunctions::GetPseudoDeviceId; common PatchManager::GetNACP for base|updates (#4159) 2026-08-04 01:50:54 +02:00
uuid.h [cmake] Fix some macOS compilation errors (#4350) 2026-09-05 23:43:46 +02:00
vector_math.h [common] remove unused vector_math.h fluff (#4333) 2026-09-08 20:39:39 +02:00
zstd_compression.cpp zstd: Use ZSTD_getFrameContentSize instead of ZSTD_getDecompressedSize 2023-03-23 22:16:20 -04:00
zstd_compression.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00