A hint for producing bubbles:
1. Make a simple terrain based on a PFS
2. Calculate Normals
3. Apply a Displacement Shader, the function input can be either a constant scalar or any noise function.
4. Play around with the parameters until you get the bubbles
Have Fun!
DJ