A project through which I'm exploring the structure of Unreal Engine 5, its rendering pipeline, and how to extend it.
I make use of the SceneViewExtension class, custom engine subsystem and a compute shader.
FNoiseGenerationModule
is responsible for mapping the custom shader source directory to the engineFNoiseGenSceneViewExtension
inherits fromFSceneViewExtensionBase
, intializes and adds the renderpass and subscribes it to the PostProcessingPass. SeeGenerateNoise()
in NoiseGenSceneViewExtension.cppUNoiseGenerationSubsystem
is responsible for initializing theFNoiseGenSceneViewExtension
SVE- Shader creation happens in NoiseGenerationShaders.h & .cpp
The noise generation is based on The Book of Shaders
It currently displays animated splatter noise from The Book of Shaders. I am planning to improve the noise generation, adding more variations (Perlin, White, Blue) and animating them.
splatter.mp4
Sources: