- Home /
Network sync problem
Hi! I have two different player prefabs, they are tanks, first is T90, second is Abrams, they use same scripts with little bit different values. And now I have problem, only second player prefab have problem with sync.
There syncing code:
function OnSerializeNetworkView (stream : BitStream, info : NetworkMessageInfo) {
if (stream.isWriting) {
pos = transform.position;
rot = transform.rotation;
stream.Serialize(pos);
stream.Serialize(rot);
} else {
stream.Serialize(pos);
stream.Serialize(rot);
transform.position = pos;
transform.rotation = rot;
}
I tried a lot of things, like equal all scripts values of second player prefab to first and etc...
After long debugging I figured out two things: 1) In Update script I wrote next code:
if (network.isMine == false) {
Debug.Log(transform.position - pos);
}
So I get next results, first player prefab gives me zero vector what means perfect sync, but second player prefab gives me (0.0, -0.5, 0.0), (0.0, -0.3, 0.0) etc.
2) If player prefab lie upside-down on terrain the problem goes away.
P.S. Sorry for bad language.
Your answer
Follow this Question
Related Questions
Show prefab's children over network 1 Answer
Network animations 2 Answers
Network.isServer / isClient not working 1 Answer
Multiplayer objects isn't equals. 1 Answer
UNet changing player prefabs int the network lobby sample. 0 Answers