Hi all, apologies for the delay in getting this up here but a mystery illness since last Thursday has kept me at bay - I managed to get this working a week ago but I'm only just getting round to sorting it out. I'll try to sort a screenshot at some point. A few notes:
This is adapted from code originally done and kindly shared by Martins Upitis http://devlog-martinsh.blogspot.fi/2013/05/image-imperfections-and-film-grain-post.html with the exception that I have removed the element that crates coloured noise. I did this because I didn't personally feel the extra processing is necessary, and film grain should be kept subtle. I've always preferrred mono noise/grain. It wouldn't be difficult to add this back in, however - this is the first time I've ever looked at a shader and I was just keeping things simple.
I also borrowed a little bit of code from the implementation here http://www.html5gamedevs.com/topic/8393-phaser-filterkit-vignette-and-filmgrain/ which was ported from the same source but adapted slightly. I can't remember exactly what the additions were but I think there was a slightly different function for randomising/rotating some coordinates - I left it in as I was experimenting with the various methods. There were some issues while testing where the noise would create repeating distracting patterns and I thought this might have been the cause - it likely wasn't, so it might just be adding unnecessary processing.
Another slight change I made was altering the luminence coefficients to Rec 709 - the original is still commented out in the code, as are a few other things, if you want to experiment. Hope you find it useful.
Default settings for params are 0.05 for grain amount (0 to 0.10 is a logical range for intensity), 2.5 for grain size (1.5 to 4.0 and beyond if you like, bigger would probably suit a nightvision effect) and luminance stays at 1.0, but can be tweaked - experiment.
Also many thanks to Gigatron for the effort put into converting despite me having already finished it, apologies for not responding sooner - see above And to chrisbrobs
Link to zip containing fx and xml file
If anyone has any optimisations or ideas, please feel free to improve and share with the community.
Cheers