Upgraded shorelines causes extremely inaccurate water collisions

Description:
After upgrading shorelines in a place, an issue starts to form where any query about whether a given position is filled by water or not produces an inaccurate result. This can most notably be seen by putting your camera near a water body and observing whether the underwater effect is displayed however this isn’t limited to this API as it also impacts the default character buoyancy scripts and BuoyancySensor


Screenshots of the issue:
I have provided the place file containing the exact water set-up in the private message.

With underwater effect:


Both of the following examples use a script which attempts to float the character to the surface of the water so this position is being seen as the surface:
With default character set-up:

With BuoyancySensor (part is outlined):


System Info:
CPU: Intel(R) Core™ i5-8400 CPU @ 2.80GHz
GPU: NVIDIA GeForce GTX 1050
Memory: 16GB

While this was always an issue with water implementation, the issue is much worse with upgraded shorelines in comparison to the ~1 stud inaccuracies seen in the non-upgraded shorelines.

Expected behavior

I expect accurate-enough collisions to be formed for water when shorelines have been upgraded rather than the collisions seemingly conforming to the old voxel-based grid previously seen before the upgrade.

A private message is associated with this bug report

4 Likes