Black Bear Studio
blackbearstudio
Hello everyone,
We’re happy to share that we’ve finally solved the problem with the sand ripples. Previously, they were all aligned in just one direction, which often looked wrong: in some places they weren’t parallel to the shoreline waves, and in others they were even perpendicular. For a long time, we tried different solutions — including rotating the entire sand texture along with the player’s movement. But this approach looked awkward, since you could actually see the ground rotating as the player moved. Eventually, we abandoned that idea altogether.
Step by step, we realized the only way forward was to use sand “patches” and carefully place them across the beach. But that came with three big challenges:
- The beach surface isn’t flat, so each patch had to perfectly follow the uneven terrain,
- The patches needed to be seamlessly blended together,
- We had to eliminate z-fighting (when the terrain “bleeds through” the patch),
And after a week of hard work, we made it! The sand ripples now naturally follow the shoreline, the patches blend together seamlessly, and there’s no z-fighting. To achieve this, we wrote a custom script that presses a subdivided plane tightly against the terrain in a special way — it completely avoids z-fighting while still following every detail of the surface. On top of each plane, we apply a custom material with a shader we specifically developed for this task. The shader can smartly blur individual edges, which allowed us to achieve a perfect and invisible connection between the patches.
We’re continuing work on the global island update. Fixing the sand ripple problem slowed us down a bit more than we expected, but now the development pace will be much faster. We believe the update will be ready in about two weeks.
Thanks for your support!