Mobile : Phat / Character physics

Hi.

What are the differences to using a skeletal mesh on mobile compared to pc?
The reason i am asking is that my game works great on PC. The Phat / skeleton simulation works nice. I set it up so that its nice and tight.

But on mobile its almost like the skeleton no longer obeys its constraints, and joints are flying wildly in different directions. As if the constraints are no longer applied the same.

Edit: I now managed to get it to behave the same on pc and mobile.
My confusion is this.

There are 2 nodes. Set all Bodies Physics Blend weight. And Set physics Blend Weight.
What i have experienced is i need to add both in the event graph. Occasionally it would use one and not the other.
For example.

If i add Just All bodies Physics blend weight then it will work on 3 launches. Then no longer on the 4th. Acting as if blend weights are set to 0.

So it works intermittently. Thus i added Set physics blend weight.
To me they both seem to be doing the same thing. Except both if used single, works occasionally and fails occasionally but if used in conjunction with one another works fine.

So i guess my question is, what is the difference between the 2 nodes.

I see the tooltip indicates the second one is a global setting. Still confused why it works intermittently

Hi.

Also i would like to find out why is gravity stronger on mobile than it is on Pc.
For example if you have a ragdol, on pc it would fall at 10 feet per second. But on mobile it will fall at 20 feet per second

After more investigation it seems that the values of blend weights are interpreted differently from pc to mobile.

Which is what is causing the illusion that objects are heavier.
Right now i am trying to find a work around for this. So far what i have come up with is to set the gravity lower… and increase the blend weights of the skel meshes.

This is creating the best effect thus far. My only concern with this is, iteration takes long because on the previewer it behaves completely different from on a device.

As such in order to test one change you first have to launch to device to test.

Hi,

I wonder how much of this is caused by difference in framerate. ragdoll simulation can be very sensitive to framerate, which I imagine is much lower on mobile. Have you tried turning sub-stepping on?

Hi Ori. I will enable sub stepping and give feedback here in a few hours.
Cheers

Howdy Crocopede,

Just wanted to check in with you and see how enabling sub stepping went for you. Any information would be greatly appreciated.

Thanks and have a great day!

Hi. Apologies for the delay. I ran into some major issues with my game design and had to rework a ton of stuff.

After enabling substepping i have a lot smoother ragdoll simulation. However it still appears as if blendweight leans more towards simulation than animation if on mobile.

My blendweights are set to 0.8 (Set all Bodies Physics Blend Weight) on the character blueprint.

I am not sure though if gravity is interpreted as a higher value on mobile, or if the blendweigths are leaning more to simulation.

Im attaching a picture to demonstrate.
On a device with an average of 45FPS it does the same on the android and IOS.

There is a workaround to just set blendweight value to a lower setting by checking which platform is running. But it would be nice to figure out why this behavior occurs.

I think we recently found a limitation in the way we were blending when using a value that’s not 0 or 1. I believe this is fixed for 4.6 but I’ve e-mailed the dev who’s been doing that work. She’ll be able to give more info on possible differences, though I wouldn’t expect there to be any intentional differences.

I don’t see there should be any difference. The issue I can think of is low framerate, which can cause unstable simulation, but substepping should have helped on that. Other than, it still should behave same. Does this happen when you make them sleep after simulation?

I suppose it will be very hard to trigger exactly same pose on both platform, but I would test something like this. Have very simple mesh to simulate (just drop from the top) and make sure its simulation result is same in both platform. Now add blending weight for both and check how the result is.

Thanks,

–Lina,

Hi guys n girls.
Thank you. please feel free to close this one.
I never made them sleep unfortunetly. Also the current other issue i have with rag doll now being… Faulty makes this problem something i wish i still experienced :stuck_out_tongue:

Hi Lina.
I just wanted to point out when physics were still functional, that it appeared as if the gravity was more.

I heard about the FPS having an impact. But you could see a noticeable movement difference. Like on mobile the character would be more loose than on PC. The FPS on mobile was around 45fps.

However due to https://answers.unrealengine.com/questions/115293/45-preview-breaks-rag-doll-animation-blendweight.html

I feel this one can be closed as now i am no longer capable of simulating any of it therefor feel it is no longer relevant.

Thank you for taking the time to look into the issue though. I appreciate it.

Hey Crocopede,

I am going to resolve this issue for tracking purposes. If you feel as though you run across this issue in a future build, please feel free to re-open this issue.

Thanks and have a great day!