how to use SetSynchronizedValues()
Options
Hi, I am trying to get a smooth movement of my player characters in multiplayer, and by reading this page http://doc.exitgames.com/en/pun/current/tutorials/rpg-movement I have decided that using Interpolare opstion SynchronizeValues with SetSynchronizedValues should be the right option as my player characters has quick direciton changes.
In my players movement script I run Move() in an Update() like this:
In the end of this function we can see that I am trying to synchronize the velocity value (it's a 2D game and I have no turn speed) but the players are still choppy on the other client. Am I doing this right?
In my players movement script I run Move() in an Update() like this:
public void Move() { // fix decending speed issue (this makes you stop completly if you release the keys) if (Input.GetKey(KeyCode.W) == false && Input.GetKey(KeyCode.S) == false && Input.GetKey(KeyCode.A) == false && Input.GetKey(KeyCode.D) == false) { runSpeed = 0; } else { runSpeed = gameObject.GetComponent<PlayerProperties>().runSpeed; } float moveH = Input.GetAxis("Horizontal"); float moveV = Input.GetAxis("Vertical"); Vector3 velocity = new Vector3(moveH * runSpeed, moveV * runSpeed).normalized; velocity *= runSpeed; rigidbody2D.velocity = velocity; gameObject.GetComponent<PhotonTransformView>().SetSynchronizedValues(velocity, 0f); }
In the end of this function we can see that I am trying to synchronize the velocity value (it's a 2D game and I have no turn speed) but the players are still choppy on the other client. Am I doing this right?
0
Comments
-
the move script is placed on the player character0