Hey,
Both the horizon noise and the uneven ocean surface inside/outside the container should be fixed now. Let me just underline that using the same ocean subdivs as in very early Phoenix 3 revisions would consume completely different amounts of RAM because the ocean algorithms now work in a completely different way. You will get a lot more polys with new Phoenix versions, so you should use lower ocean subdivs to get the same level of detail.
Regarding scale - indeed this is what I mean - is the simulator in real world scale. If the units are meters, is it expected that the simulator is 800 x 200 meters wide? Wouldn’t this mean that the waves are in the vicinity of 10-20 meters tall?
In this scale, it could be the huge scale making the foam appear to slide backwards over the waves. It’s just a wild guess, but would increasing the Foam’s surface lock change the behavior?
I am thinking about a better way for future Phoenix versions for stitching wild ocean waves simulators into the infinite ocean. My thoughts on this might help you figure the right direction. So there is the simulator, using wave force driven by oceantex1, producing real simulated waves, writing them and reading them from cache. There is also the infinite ocean surface, completely flat by default, which you can displace using oceantex1 as well. Now, the first problem is that the Simulator and the infinite ocean are first meshed together, and them displaced. So you have the simulated waves inside the simulator, and the infinite flat plane of the ocean, before applying any displacement. If you enable the ocean displacement now, the infinite ocean will get the waves from the ocean tex, and the simulator will add these waves on top of its simulated waves, so it will basically have double waves, stacked over one another. So you need to tell the displacement to work only on the infinite ocean surface, and to not displace the waves inside the simulator. This can happen even right now - you have the different options for displacement fade in the rendering rollout. You can use e.g. a box, covering the entire simulator, made non-solid to the simulation and not renderable, and set it as fade geometry, suppressing the displacement inside it, eventually with a smooth fade out. So this way you can have simulated waves inside the container, coming from oceantex1 and the wave force, and fake displaced waves for the infinite ocean, again coming from oceantex1. Currently, using this method, the transition between the simulator and the ocean won’t be smooth and it might need trial and error for several reasons, the most important one being that the wave force does not create exactly the same simulated waves like the ocean texture. E.g. if you simulate using oceantex1 for the wave force, rendering with displacement Off would look one way, and the ignoring the simulated cache by using Pure Ocean and then enabling displacement from oceantex1 would look differently. I currently have a test code branch where I made the wave force create simulated waves looking very much like the displacement and this would allow better blending between a stormy sim and stormy ocean.
In summation - you would have some issues at the border currently; the waves inside the simulator and outside it would not behave quite the same with a current Phoenix but I think this can be improved in the future; and also depending on the resolution of the sim - you would have different detail between it and the infinite ocean.
You could bring the detail between the infinite ocean and the sim closer by applying another displacement over the entire thing - both the ocean and the simulator. Say an oceantex2, with much smaller waves and finer detail. However, if you use displacement fadeout to suppress the large waves of oceantex1 inside the simulator, the question is where to plug oceantex2? I think you should be able to do this entirely in the material editor - after turning off displacement fade, you should be able to use the Scaling texture slot of oceantex1 and plug a V-Ray distance tex there, which would do the same thing as the displacement fade - you can use it to create a grayscale mask where the simulator would be black and the ocean would be white. And then, finally, you can plug this oceantex1 + scaling distance tex into a comp tex, together with the fine-detailed oceantex2, and plug the result into the simulator’s displacement.
This is how I imagine it would work currently and I hope to have time to get back to making the wave force produce closer result to displacement. Will also check the docs - you can have a seamless transition between flat simulator and infinite ocean right now, but when the wave force comes into play, the transition will not be smooth and you might have to count on low camera angles or post, in addition to what I wrote above.
Hope this helps!