Dieser Shader kombiniert einen Oil-Paint-Effekt mit einer Sobel-Edge-Detection, um ein stilisiertes, malerisches Aussehen zu erzeugen. Mithilfe eines benutzerdefinierten HLSL-Codes werden die Farbwerte innerhalb eines definierten Radius analysiert und in Intensitätsbereiche unterteilt, um weiche, pinselstrichartige Farbflächen zu erzeugen. Die Edges heben dabei markante Konturen hervor. Eine besondere Herausforderung war für mich die Klassifizierung der Farbwerte in Intensitätsbereiche und die Berechnung des bestimmenden Farbmaximums beim Oil-Paint-Effekt. Dieses Projekt diente mir daher als praktische Übung, um tiefere Einblicke in die Shader-Programmierung und das Arbeiten mit Convolution-Filtern in Echtzeit-Rendering zu gewinnen.
Für eine modularere Anwendung habe ich für den Oil-Paint-Effekt und den Sobel-Edge-Detector separate Nodes genutzt. EdgeThreshold, EdgeOpacity und EdgeColor sollen als Parameter in einer Materialinstanz dynamisch anpassbar sein.