The feature I really like is the Post Processing shader feature for Scanline, but sadly compared to PC version (Linux/Windows), Duckstation for Android does not have Post-Processing Shaders. Android / Linux / Windows Version has the same core but why Android version does not have Post-Processing Shaders in them? maybe Stenzek the developer forgot about inserting this settings menu in Android Application (Duckstation for Android 0.1-4582-g47b012fd).
So, there a way to enable this Post Processing Shaders Chain in Android, since its use the same core, but its only work with Vulkan GPU renderer in my Poco X3 Pro, not in OpenGL, and sadly it need a Rooted Android since we edit the setting file in /data folder. I don't know why stenzek decided to save the settings file in a shared folder, even though it's easier to store it on SDCARD for example.
How to Enable Post Processing Shaders on DuckStation Android
*This Process Require a Rooted Android.
*In my Poco X3 Pro it only work with Vulkan GPU. If i used OpenGL backend, in the logcat its complain about AdrenoGLES-0: ERROR: Invalid #version and file bad_shader_*.txt is created in duckstation root folder, with #version 320 in the top of the file.
-
Copy
com.github.stenzek.duckstation_preferences.xml
in folder/data/data/com.github.stenzek.duckstation/shared_prefs
to SDCARD, and copy one more time for backup purpose. -
Open the copied file and insert the following line before
</map>
<boolean name="Display/PostProcessing" value="true"/> <string name="Display/PostProcessChain">dolphinfx/scanlines;A_SCANLINE_TYPE=0;B_SCANLINE_INTENSITY=0.18;B_SCANLINE_THICKNESS=0.5;B_SCANLINE_BRIGHTNESS=1.1;B_SCANLINE_SPACING=0.25</string>
The result will look like this<boolean name="Display/PostProcessing" value="true"/> <string name="Display/PostProcessChain">dolphinfx/scanlines;A_SCANLINE_TYPE=0;B_SCANLINE_INTENSITY=0.18;B_SCANLINE_THICKNESS=0.5;B_SCANLINE_BRIGHTNESS=1.1;B_SCANLINE_SPACING=0.25</string> </map>
-
Save the file and copy back to overwrite in
/data/data/com.github.stenzek.duckstation/shared_prefs
-
Open duckstation.apk file as Zip to and extract
shaders
folder to root of duckstation folder. as for me is in/storage/emulated/0/duckstation
, if its hard to extract you can download the given link to download shaders folder in the bottom of this post. - Open DuckStation App and change General > App Settings > General > GPU Renderer to Vulkan.
"Display/PostProcessChain
value.As for the manual this is the value grabbed from PC version:
if you want to use multiple shaderd, just copy and delimit using delimiter.
Syntax delimiter is : (division sign) shaderA:shaderB
Cccalibrator
Cccalibrator;LUMINANCE=1.2;ORANGECYAN=1.2;MAGENTAGREEN=1.2;BLACK=10;WHITE=240;NOISE=10;SATURATION=50
dolphinfx/bloom
dolphinfx/bloom;A_BLOOM_TYPE=0;B_BLOOM_STRENGTH=0.22;C_BLEND_STRENGTH=1;D_B_DEFOCUS=2;D_BLOOM_WIDTH=3.2;E_BLOOM_REDS=0.02;F_BLOOM_GREENS=0.01;G_BLOOM_BLUES=0.01
dolphinfx/celshading
dolphinfx/celshading;A_EDGE_STRENGTH=1;B_EDGE_FILTER=0.6;C_EDGE_THICKNESS=1;D_PALETTE_TYPE=1;E_YUV_LUMA=0;G_COLOR_ROUNDING=1
dolphinfx/scanlines
dolphinfx/scanlines;A_SCANLINE_TYPE=0;B_SCANLINE_INTENSITY=0.18;B_SCANLINE_THICKNESS=0.5;B_SCANLINE_BRIGHTNESS=1.1;B_SCANLINE_SPACING=0.25
simple-brightness
simple-brightness;BRIGHTNESS_SCALE=1
simple-gamma
simple-gamma;GAMMA_IN=2.2;GAMMA_OUT=2.2
simple-sharpen
simple-sharpen
Without Scanline |
With Scanline |
Shaderd Download from Gdrive