5.1Water buoyancy not working?
Hey there @cuizhipeng! Welcome to the community! On the buoyancy component, did you set up any of the pontoons? They are necessary to get the location/force of the buoyancy, so it doesn’t work without any of them set!
I’ve set the pontoons, It works in version 5.03, I think there may be a 5.1 bug
Understandable! I couldn’t replicate the issue on my end. Sometimes if the boat is too heavy it won’t even look like the buoyancy is effecting it. Your collision channel can also change if you even make contact with the water volume.
I’ll also attach the settings I had for my test.
Pontoon Settings:
Boat SM Settings:
please share your world setting, waterbody and waterzone settings.
i had this issue also. using ocean on the landscape the buoyancy is not working. even using the sample bp_BuoyanncyExample
Both are completely default, I’ll leave their info anyway, but I’ll put together a little video of creating a new world, then the water, then setting up buoyant objects, then testing them all in 5.1. I’m heading to bed at the moment since it’s 5am where I am, but I’ll update you when I put it together. Hopefully this will help us figure out which part of the new update could be causing this and we can submit a good report!
All possible world settings that can effect water:
Entire default ocean details (even the irrelevant bits):
Default Water Zone:
thank you for this. everything in my setting are also same and default. maybe its because im using the simulator template.
i got this error.
i had try using the 3rd person template. same setting. still not working on my ue5.1
they just stock there with an invisible plane. not on the water
after a couple of turning on and off “WaterBodyCollision” from water body collision presets. The cube now react with the water surface.
the character now also react with the water
That is likely the issue. I’ve been seeing more projects not having the collision profiles set up and it’s causing far more issues. I’m not sure if it’s 5.1 changes to how col profiles are set up breaking plugins and how they did it previously. It’s in my big book of things to dig into better, but there’s multiple reports out on it for now so I’ll just see if my little fix solves it for you here and now. If not I have a much less fun workaround that I know works.
So first the possible fix:
Head over to your project’s folder-> config → DefaultEngine.ini
Slide down to your collision profiles and search for WaterBodyCollision. You likely won’t find it, we can add it here directly.
+Profiles=(Name="WaterBodyCollision",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="",CustomResponses=((Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="Default Water Collision Profile (Created by Water Plugin)")
Copy and paste that under the collision profile list, then launch the project and check for it in the water as well as in the project settings.
If that fails, then I’ve got a long and convoluted version. Which is quite literally making a project in 5.03, making the landscape and water, then make sure buoyancy is functioning then upgrade the project to 5.1 and migrate things if you aren’t that far along.
I also made the video but everything worked out of the box so it was… less useful than expected.
thanks for this. it will be a big help to the community.
I hope so! The fix has been effective for some users, ineffective for others. Which points to a separate underlying issue.
Forgot to mention in the post (I’ll edit it there as well) to remember to set your water to the new profile if it’s not already on it. (which I believe it will be due to it pitching that error but in some cases I’ve seen the contrary.) Also check and make sure it’s in your project settings when you reopen the project.
If it comes down to it and that fails, you can do the workaround. Once I can clear my plate a bit I’ve blocked out some time to look into this a bit deeper and make a more clear report than we’ve been getting for this.
Let me know how it goes!
i had change also the project i made with the simulator preset and it work. we just need to add it from the .ini file
once its added and we need to change the collision presets to waterbodycollision.
Hi there, I’m trying to get an iceberg to float in unreal engine 5.1…used de Waterline plugin . I have created a static mesh with physics, mass and a buoyancy component with a pontoon. But when I run the game the iceberg floats in this direction. Physics work, the iceberg drops but I can’t find the way to make it float on its base. Any idea what I am doing wrong? Thank you
Multiple buoyancy points needed on it?
I agree with MostHost, it seems to be reacting like there’s not enough spread between the pontoons or it requires more pontoons in general. It’s recommended to at minimum have 4 for solid stability. If that’s not the case, we could take a look at the settings for the pontoons and their buoyancy to see where the discrepancy may be.
Buoyancy takes center of mass into account (your main collider shape, attached meshes also affect it). Additionally I’m under impression that before 5.1 submerged bodies used to balance themselves out to adhere to flat plane, now they keep their weird rotations above and below.
That too would depend on how many buoyancy points are present for calculations.
Really it’s not rocket science:
If there is only one point on an object you can retain rotations/positions. It’s assumed that buoyancy is to be simulated without any regard for the object shape - as you wouldn’t have the necessary data points to do otherwise.
If you have multiple points, you can calculate how forces are to be applied to the different locations and shared across the object to more properly simulate its physics.
In all cases, do keep in mind that the engine now using chaos will always be wrong and not offer any sort of realistic simulation. (I somewhat doubt people are, but if you are into physics and are trying to use the engine to support some sort of actual ice/even boat floating theory, just don’t. This isn’t the right tool for it / by design it never will be).
Hi all, so we are working on a game and we work with 5.1. The water body ocean is not working correctly even though the water body collision is selected. The buoyancy example cube just lands on the water as if it is a plane and the character can walk on the water as if it is a regular floor. I’m not sure what else I/we can do? Any tips?