I am messing with 8mm old film effect post process for a while in unreal engine 4. I have set up the material, but the effect just looks so wrong. I have heard you can make scratched film effect with Perlin noise, so I've generated one with GIMP and I am using a texture sample to move around on the screen. What I want is to move the texture in random direction seamlessly and smoothly, but instead the lines are just flickering everywhere... Can I ask a suggestion what am I doing wrong? What can I do to make this effect better?

For information this is the shader code what I am using. It is not the exact code. Later I will add screenshot and blueprint how it looks like realtime...

// Extern variables
float SpeedX = 0.01;
float SpeedY = 0.03;
float Intensity = 0.65;
float IS = 0.01;
float RandomValue;
// Calculate UV
// Get the direction where scratches should move next
float Direction = sign(RandomValue);
// Calculate horizontal movement
float Scan = (Timer*SpeedX*Direction);
// Calculate vertical movement - it is always downward
float Scroll = (Timer*SpeedY);
// Compose new UV here
// Texture UV should be 1D only
float2 Position = float2(UV.x+Scan,Scroll);

// Load perlin texture
float scratch = tex2D(Noise2DSamp,Position).x;

// Transform perlin texture according to the inputs given
scratch = 2.0f * (scratch - Intensity) / IS;

// Calculate the scratch line
scratch = 1.0-abs(1.0f-scratch);
scratch = clamp(scratch, 0,1);
// How am I supposed to coordinate thickness of the line? 

// Add grunge?
float4 grunge = tex2D(Noise2DSamp, GrungePosition);
scratch *= grunge.b;
scratch = lerp(scratch, 0, 1.0-grunge.b);


This topic seems so difficult for me. I spent so many times to adjust the material... I am a starter, so I don't wonder.

Thank you in advance for your help!

  • \$\begingroup\$ Welcome to the Game Dev Stack Exchange. I've taken the liberty of editing your question as requests for resources (i.e. "where can I find good texture masks") are not considered on-topic here. The remainder looks fine though. Good luck with the rest of your question & your project! \$\endgroup\$
    – Pikalek
    Jan 8 at 15:54

You must log in to answer this question.

Browse other questions tagged .