As a Roblox developer it’s way too hard to create a streamlined boat using Unions or MeshParts. This is because buoyancy calculations for terrain water don’t take into account collision fidelity of objects and treat them as boxes.
It would be great if buoyancy calculations took into account the shape of Unions or MeshParts whether it would be cheaper to just calculate Hull fidelity calculations instead of Default fidelity, it would just be nice for it take into account the rough shape of an object. This would make boat creation for my game SharkBite much easier and save a lot of time trying to make mesh boxes somewhat streamlined.
Non-cancollide parts do not contribute to buoyancy calculations.
It will be less expensive on the buoyancy calculations if you made a representation of the ship out of parts instead of having tens or a hundred decomposition hulls.
This is an interesting suggestion! An accurate solution for the amount of a model’s volume that is below the surface could be computationally intensive, but I can imagine a few ways to estimate the ratio which would be scalable solutions–ones where you could easily dial up accuracy at the expense of performance–and probably get better-than-box results. You could decompose the bounding box by subdivision into smaller weighted boxes (weighted in the statistical sense, by how much of the model occupies them), or do the same with uniform voxels, or you could sample points inside the hull, either on a uniform 3D grid or randomly, Monte Carlo style. With a crude enough and convex hull, even summing tetrahedrons from a point on the dividing plane to vertices on either side could be doable. There are probably quite a few numerical integration methods that could be applied.