/// <summary> /// Called when a remote user sends a Cube transform. /// </summary> /// <param name="msg"></param> private void UpdateCubeTransform(NetworkInMessage msg) { // Parse the message long userID = msg.ReadInt64(); Vector3 CubePos = CustomMessagesMyHolographicAcademy.Instance.ReadVector3(msg); Quaternion CubeRot = CustomMessagesMyHolographicAcademy.Instance.ReadQuaternion(msg); RemoteCubeInfo CubeInfo = GetRemoteCubeInfo(userID); CubeInfo.CubeObject.transform.localPosition = CubePos; CubeInfo.CubeObject.transform.localRotation = CubeRot; }
/// <summary> /// Gets the data structure for the remote users' Cube position. /// </summary> /// <param name="userId">User ID for which the remote Cube info should be obtained.</param> /// <returns>RemoteCubeInfo for the specified user.</returns> public RemoteCubeInfo GetRemoteCubeInfo(long userId) { RemoteCubeInfo CubeInfo; // Get the Cube info if its already in the list, otherwise add it if (!remoteCubes.TryGetValue(userId, out CubeInfo)) { CubeInfo = new RemoteCubeInfo(); CubeInfo.UserID = userId; CubeInfo.CubeObject = CreateRemoteCube(); remoteCubes.Add(userId, CubeInfo); } return(CubeInfo); }