Other Connected Players vanish when you look away

Options
I've tried searching for an answer to this for hours and I cant find anything that applies.

If i look at the game in the inspector both players are still there and connected. There is a mechanic in my game that shows when there is a collision with another player and this still works correctly.

So you can see each other as long as you dont turn away, once you turn away and look back the other player is gone.

There are no errors in the console, everything looks normal.

Comments

  • Looking back this problem started happening after adding a rigidbody to the character, im trying to set up ragdoll physics so when players are hit they turn into ragdolls.
    My best guess is that even though i implemented the IPunObservable interface and sent the rigidbody info over OnSerializeView, there were some parts missing or not updating or some wires were being crossed and so it just stopped rendering the avatar on the opposing player side.

    I still dont have an actual solution yet, so still looking for help!
  • OK so hopefully this helps anyone in a similar situation.
    Removing the top level RigidBody of the player was the solution really. I could ragdoll the player without a top level rigid body so it wasnt needed at all.
    Then to get the player to ragdoll on the other players sides i just called the method in an RPC call.
  • To anyone who has come across this same issue, the above wasnt the problem. After a couple more play tests it started happening again.

    The real problem was not to do with photon but to do with the Animator component. On the animator there is a culling mode option, in my characters case this was set to Cull Update Transforms -
    "Retarget, IK and write of Transforms are disabled when renderers are not visible."

    In this case the renderer is the other players cameras, so when you go out of view of the camera it tells the camera to stop rendering, for some reason - possibly because of the network play - the renderer does not receive an update when the animator comes back into view.