Terrain! I'm using polar coordinates and simplex noise to generate some islands and its starting to feel like a real game. Also added an indicator towards the yacht when its offscreen based on feedback and it makes a big difference, I will likely keep something like that in the final game.
Positive values in the noise field are treated as land and negative values are treated as water. With thresholding we can make a "beach" of heavy but moveable obstacles on the edge of each island before you get to the static immovable core of the landmasses. It adds some chaos that I think can work.
Noise is also used to pick spawn points -- areas with very low noise values e.g. below -0.9 are likely to be far from landmasses and are picked as places for the yachts to spawn and not get stuck on the rocks. Noise opens up a lot of possibilities because of how quick it is to query, and I think I can use it for yacht pathing which is nonexistent right now. Can a noise field function as a stand-in for a navigation mesh? 🤔
This implementation is massively inefficient -- each little circle is a distinct physics object -- but I think it works for the prototype. The islands should be tesselated into polygons or similar but we will cross that bridge when we get there.