How do I make a grain effect?

Like the title says, I want to achieve a grainy/VHS style look. Something like this game: No Players Online - Roblox I previously didn’t think it was possible on Roblox, but once I played that game, I realized it was. Please tell me how to achieve the effect.

6 Likes

Start with an image that’s full of static (make sure ScaleType is set to Tile). Then make it a bit transparent (maybe like 0.8). Then use RunService and the Heartbeat event. Every time a frame is rendered, change the TileSize to something a little random. You can try this untested code:

game:GetService("RunService").Heartbeat:Connect(function()
	script.Parent.TileSize = UDim2.new(math.random(400, 600) / 1000, 0, math.random(400, 600) / 1000, 0)
end)
30 Likes

Thank you SO much! I wanted to make a horror game and I needed this. You’re a lifesaver😃!

1 Like

Also, the code worked the first time. I might play around with the numbers, though.