Serhii Kozlov Serhii Kozlov

> Shader Programming

Three custom shaders built in UE5 for the Shader Programming coursework. Solo project (2026).

UE5 | HLSL | Material Editor

Three custom shaders built in Unreal Engine as part of the Shader Programming module, each exploring a different visual style and technical approach using UE5's material editor.

Cyberspace

Inspired by the Blackwall cyberspace from Cyberpunk 2077 and the hologram jittering effect from Death Stranding 2. The shader combines a surface material with a post-processing material - the surface uses scrolling lines multiplied with a dot map for fine detail and a cheaper vertex transform, while the post-processing layer applies a depth-based jittering effect using a literal brick texture.

Melting GPU

Inspired by a graphics bug that I encountered in Battlefield 6 on the Eastwood map, where corrupted rendering made it look like the GPU was dying. The shader recreates that effect using Voronoi noise driven by a panner for animated distortion, a normal map for surface roughness, and vertex displacement to deform meshes since I wanted to emphasise that effect. Different material instances control the intensity per object.

Matrix

Inspired by the original 1999 Matrix film and its iconic falling green code. The shader uses a line texture to separate binary digits, combined with a scrolling glow texture that lights active numbers from top to bottom. The output is masked through the red channel, then layered with a panning binary texture and tinted green.

Optimisation

All three shaders were built with real-time performance in mind, verified using UE5's shader complexity view. The Matrix and Cyberspace shaders consistently show low shader complexity. The Melting GPU shader is the most expensive due to vertex transform on high-poly meshes - an alternative vertex solution was developed and successfully applied in the Cyberspace shader to reduce that cost.

[Source unavailable]