citra-nightly/src/core/frontend
GPUCode 06f3c90cfb
Custom textures rewrite (#6452)
* common: Add thread pool from yuzu

* Is really useful for asynchronous operations like shader compilation and custom textures, will be used in following PRs

* core: Improve ImageInterface

* Provide a default implementation so frontends don't have to duplicate code registering the lodepng version

* Add a dds version too which we will use in the next commit

* rasterizer_cache: Rewrite custom textures

* There's just too much to talk about here, look at the PR description for more details

* rasterizer_cache: Implement basic pack configuration file

* custom_tex_manager: Flip dumped textures

* custom_tex_manager: Optimize custom texture hashing

* If no convertions are needed then we can hash the decoded data directly removing the needed for duplicate decode

* custom_tex_manager: Implement asynchronous texture loading

* The file loading and decoding is offloaded into worker threads, while the upload itself still occurs in the main thread to avoid having to manage shared contexts

* Address review comments

* custom_tex_manager: Introduce custom material support

* video_core: Move custom textures to separate directory

* Also split the files to make the code cleaner

* gl_texture_runtime: Generate mipmaps for material

* custom_tex_manager: Prevent memory overflow when preloading

* externals: Add dds-ktx as submodule

* string_util: Return vector from SplitString

* No code benefits from passing it as an argument

* custom_textures: Use json config file

* gl_rasterizer: Only bind material for unit 0

* Address review comments
2023-04-27 07:38:28 +03:00
..
applets (zhaowenlan1779) android/applets: Implement Mii Selector 2021-10-02 16:38:32 +05:30
camera interface.h: forward declare resolution 2020-08-20 01:30:13 -03:00
emu_window.cpp Added an option to set the proportion of the screens when using layout "Large Screen Small Screen", to allow the user to define how much bigger the large screen should be with respect to the smaller screen. Currently the value must be between 1 and 16, but I could set a different maximum value if that would be desired. Thank you very much! (#6252) 2023-02-17 16:19:52 +02:00
emu_window.h video_core: Disable async shader loading with strict contexts 2023-04-03 14:32:13 +03:00
framebuffer_layout.cpp core\frontend\framebuffer_layout: GetCardboardSettings: clean up floa… (#6399) 2023-04-09 10:59:25 +05:30
framebuffer_layout.h core\frontend\framebuffer_layout: GetCardboardSettings: clean up floa… (#6399) 2023-04-09 10:59:25 +05:30
image_interface.cpp Custom textures rewrite (#6452) 2023-04-27 07:38:28 +03:00
image_interface.h Custom textures rewrite (#6452) 2023-04-27 07:38:28 +03:00
input.h core/frontend/emu_window: return true when TouchPressed is consumed 2021-12-18 16:52:24 +05:30
mic.cpp Merge generic part of Android microphone changes (#5624) 2020-12-30 19:21:03 -05:00
mic.h Merge generic part of Android microphone changes (#5624) 2020-12-30 19:21:03 -05:00