Shader
Shader sind Filter in Form von kleinen Softwaremodulen, die bestimmte Grafikeffekte erzeugen können. Im Rahmen der Emulation von klassischen Computer- und Videospielen werden sie häufig zur Verbesserung der Bildqualität bei 2D-Spielen eingesetzt, um diese auf modernen Fernsehern oder Bildschirmen in höherer Auflösung darstellen zu können (rescaling). Verbreitet ist der Einsatz von Shadern auch, um die Darstellungsqualität von Röhrenfernsehern oder -bildschirmen (insbesondere die sogenannten scanlines) oder LCD-Displays (Subpixel) zu simulieren. Zusätzlich können Shader verwendet werden, um Rahmen um das Bild anzuzeigen, z.B. in Form einer Handheld-Konsole. Je nach Emulator ist es auch möglich, mehrere Shader miteinander zu kombinieren (stacking).
Shader-Formate
Für die Module gibt es veschiedene Programmiersprachen. Verbreitete Formate sind:
- CG (C for Graphics): Älteres, überholtes Format
- GLSL (OpenGL Shading Language): Shader-Sprache von OpenGL
- HLSL (High-Level Shading Language): Shader-Sprache von DirectX
- Slang: Erweiterte, von HLSL inspirierte Shader-Sprache, kompatibel u.a. mit den Schnittstellen Vulkan, Direct3D und OpenGL
Shader-Unterstützung
Welche Shader-Formate unterstützt werden, ist vom verwendeten Emulator abhängig. Eine umfangreiche Auswahl an Shadern gibt es z.B. in RetroArch oder unter RetroPie für Libretro-Cores.