Changes

Jump to navigation Jump to search

Shaders and filters

2,477 bytes added, 18 March
Notable ReShade shaders
|.slv/.slf, .vp/.fp
|Requires Pete's OpenGL2 or gpuBladeSoft.
|-
| style="text-align: center;"|[[DuckStation]]
| .glsl, .fx
|
|-
| style="text-align: center;"|[[PCSX2]]
|GLSL equiv. of cgp - possible to stack several shaders with this.
|}
 
;Before diving in;
;*Some of the shaders and filters listed below are already included in the chain for some of the [[Shader Presets]] or present as an enhancement/adjustment option (such as [https://www.nvidia.com/content/Control-Panel-Help/vLatest/en-us/mergedProjects/nvdsp/To_use_Digital_Vibrance_to_make_your_desktop_colors_richer.htm digital vibrance]) from [https://www.pcgamingwiki.com/wiki/Category:Graphics_Adaptor GPU driver control panel] or from your digital [[displays|display]] OSD. Some of those things may cause color clipping, exposure issues (due to using excessive digital adjustments to image) and [[Input lag]]. It's recommended to avoid usage of color or excessive image options/filters. But you can use [[Displays|analog device/CRT]]'s OSD adjustments. Another proper option for this using the RTX Dynamic Vibrance option (see [[#AI-powered filters]]) to avoid color crashing and top of that using a HDR device with [[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping]].
==Types==
===Dithering===
{{Main|Dithering#Shaders}}
These are shaders designed to detect and smooth [[dithering]]. [https://github.com/libretro/common-shaders/tree/master/dithering mdapt] is a popular one. There is also a newer gdapt.
A tone mapping shader allows you to use an external LUT texture to do tone mapping and other color adjustments.<ref name="tonemapping">http://filthypants.blogspot.com/2017/06/retroarch-tone-mapping-lut-shader.html</ref> The LUT texture is PNG image that can be edited in any image editing software to have the desired color adjustment. When the modified LUT is used in the shader, the color adjustment gets applied to the game's video output.
 
:See [[High_dynamic_range#Inverse_tone_mapping|this page]] for Inverse tone mapping.
==Shaders on real CRTs==
You can combine those things with these two shader presets: [https://github.com/libretro/common-shaders/blob/master/cgp/tvout/tvout.cgp tvout.cgp] for 240p and [https://github.com/libretro/common-shaders/blob/master/cgp/tvout%2Binterlacing/tvout%2Binterlacing.cgp tvout+interlacing.cgp] for 480p. Both of these allow you to have adjustable signal resolution blur applied horizontally, as well as color controls like gamma, saturation, and the option to use TV color range (16-235) instead of PC color range (0-255), while the 480p version provides a scanline shader that is interlaced on 480-line content. The signal resolution blur works best if you use a large horizontal resolution (1280 or higher recommended) while keeping your vertical resolution at 240 or 480, and setting the aspect ratio of the emulator to stretch to fit. The higher horizontal resolution will make it look natural and convincing, avoiding banding issues. Can be combined with NTSC filters/shaders for maximum authenticity, check out the shader presets in [https://github.com/libretro/common-shaders/tree/master/cgp/tvout /cgp/tvout] and [https://github.com/libretro/common-shaders/tree/master/cgp/tvout%2Binterlacing /cgp/tvout+interlacing] for some examples.
 
==AI-powered filters==
:[https://www.nvidia.com/en-us/software/nvidia-app/ New Nvidia app features AI-powered filters]
:[https://www.nvidia.com/en-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-article/ Nvidia FreeStyle]
:[https://nvidia.custhelp.com/app/answers/detail/a_id/5521/~/nvidia-app-beta-faq What are the requirements to enable RTX Dynamic Vibrance?]
AI-powered filters are a new technology with the potential to further improve the emulation experience. These filters use machine learning to automatically enhance the visuals of content. Nvidia recently release their new Nvidia App[https://www.nvidia.com/en-us/software/nvidia-app/] which comes with new AI-powered filters called "Nvidia FreeStyle", one of the filters is RTX Dynamic Vibrance which is an AI-powered dynamic image enhancement without crashing colors. AI-powered filters offer exciting possibilities for the future of emulation. As the technology matures, expect even more advanced features and use cases to emerge, further improving the way we experience various content such as classic video games.
==Notable ReShade shaders==
These are not [[Shader_Presets|shader presets]]. But you can create your own custom preset using these .fx shaders. As some of the effects (RTGI and Motion Estimation etc.) require depth access, make sure to have your [https://wwwyoutu.youtube.combe/watch?v=zMceMD9OzIE 6C_NuhBVdXc depth buffer correctly configured] if you want to use them. See [https://reshade.me/forum/general-discussion/5442-release-misc-emulators-with-depth-buffer-access this thread] for using reshade and depth buffer access for emulators.
;[https://www.martysmods.com/rtgi/ Pascal Gilcher's RTGI shader] ($)
:Developed by [https://twitter.com/mcflypg Pascal "Marty McFly" Gilcher], RTGI & '''Screen-Space''' Ray Traced Global Illumination is a shader for ReShade which make use of Path Tracing to bring Real Time Global Illumination to every gamesgame. Global Illumination is certainly not something new for games , but unlike conventional Baked / Precomputed Realtime GI, Marty McFly's Path Traced solution can provide a way more realistic and physically correct Global Illumination for every game.
:[https://www.youtube.com/watch?v=ZOPgXRZSvzQ Ray Tracing Revolution's video about RTGI]
;[https://www.martysmods.com/physical-depth-of-field/ qUINT Physical DOF] ($)
:Games use a pinhole lens camera model to render their images. As such, they do not exhibit the same visual effects seen in real cameras, and effects exclusive to those have to be artificially reintroduced. A Depth of Field (or DOF) filter simulates the blurring of out-of-focus areas in the image. In a real camera, many factors influence the appearance of of the DOF blur, or so-called “Bokeh”, which photographers and film makers filmmakers use extensively as an artistic tool. This physical Depth of Field shader recreates this effect as faithfully as possible.
;[https://www.martysmods.com/clarity/ qUINT Clarity] ($)
:Effects like unsharp mask are designed to sharpen or soften the image in a wider range, to enhance medium -sized details in the image and give the content some grip. The balanced, yet contrasty look of movie posters and magazine covers is quite often partially achieved through this effect. Much research is going into the type of filters that enhance local contrast, from the most basic unsharp mask to state of the art “Local Laplacian” filtering. Using this effect in realtime on video games allows to give blurry textures some bite, enhance the overall contrast of a scene or produce some pseudo Depth of Field effect to give the scene some depth. Clarity contains 2 different types of image enhancements, which can be used together.
;[https://github.com/martymcmodding/ReShade-Optical-Flow qUINT Optical Flow]
:[[Wikipedia:Motion_estimation#Related_terms|Optical Flow]] for games in realtime. The nature of optical flow is to detect/compare changes between frames over time , and then it gives us the motion vector in pixel color like flow map or normal map.
;[https://gist.github.com/martymcmodding/69c775f844124ec2c71c37541801c053 qUINT Motion Estimation]:
:;[https://github.com/MajorPainTheCactus/AutoHDR-ReShade AutoHDR]
::This add -on is ideally intended to be used with the Sony Megatron ReShade Port Presets.
;[https://forums.libretro.com/t/crt-guest-advanced-hd-and-ntsc-for-reshade/41880 DevilSingh's CRT-Guest-Advanced, HD and NTSC for ReShade]
:*[[CRT_shaders|CRT shaders]]
:*[[NTSC_filters|NTSC filters]]
*[[High dynamic range]] (HDR)
==References==
10,795
edits

Navigation menu