I have just about finished with this, I think. I now have a lake as the water object instead of a plane, the foam also has volume now.
My idea to have a radial displacement method
worked but it increased the render time severely because I needed to compute the normal of the water object. This really isn't practical as it triples(at least) the render time of the same scene. I didn't let an entire render finish but all of my crop-tests were at least 3x as long.
So, to keep it simple and still working on each shore when required, I have decided to just create a switch for whichever shore it needs viewed from. The default settings are for the North/South shores, while the displacement switch can be used to alternate the lapping wave function when the East/West shores are to be viewed in a shot, I realise not everyone builds a scene around their camera POV, like I do, and it might be required to drop into a scene where the POV isn't North. It will be fine.
I'm just rendering out a final HQ test and will post it soon as it's done. It's looking much better, I think. I expect it to take maybe just over an hour to render at 1120x700px, considering most of the scene is water with transparency and volumetric functions and I only have 2x 2ghz cores to work with, that's not too shabby, eh?
Back soon with a render and, I'll post the object once I've tidied it up a bit...
* Edit: I SO wish for a 'group nodes' parameter(meaning that If I moved a node, any other node in the group I choose could be translated to the parents' position, like with an object and its individual parts).
Now, can anyone help in creating such a function with conditionals(or such) that will translate a coord's parameter to that of another? Answers on an ePostcard to;
TG2impossibilitysolvers.R.us.com. We can usually figure out seemingly impossible things here, when we all muck-in and add our inputs to a given problem. Cheers in advance, if anyone can help me out with this problem.
I bloody hate asking for help! It's like admitting defeat to me!

*