public void sendMessage(Vector3[] vertices, Vector2[] uvs, int[] triangles) { PointsMessage message = new PointsMessage(); message.vertices = vertices; message.uvs = uvs; message.triangles = triangles; NetworkServer.SendToAll(CustomMessage.hiMessage, message); }
public void sendSpatialMesh(Vector3[] vertices, Vector2[] uvs, int[] triangles) { PointsMessage message = new PointsMessage(); message.vertices = vertices; message.uvs = uvs; message.triangles = triangles; myClient.Send(SpatialMeshMsg.meshMsg, message); }
public void TransferMesh(NetworkMessage netMsg) { Debug.Log("Received spatial mesh message"); PointsMessage message = netMsg.ReadMessage <PointsMessage>(); // line object GameObject surfaceObject = new GameObject("Surface Object"); surfaceObject.transform.SetParent(SpatialMeshVR.transform); Mesh mesh = new Mesh(); surfaceObject.AddComponent <MeshFilter>().mesh = mesh; mesh.vertices = message.vertices; mesh.uv = message.uvs; mesh.triangles = message.triangles; surfaceObject.AddComponent <MeshRenderer>().material = surfaceMaterial; }
void Update() { if (isAtStartup) { if (Input.GetKeyDown(KeyCode.S)) { Debug.Log("Server"); SetupServer(); } if (Input.GetKeyDown(KeyCode.C)) { Debug.Log("Client"); SetupClient(); } if (Input.GetKeyDown(KeyCode.B)) { Debug.Log("Both"); SetupServer(); SetupLocalClient(); } } else { if (Input.GetKeyDown(KeyCode.M)) { if (myClient == null) { Debug.Log("Sending message from server to client"); Vector3[] points = new[] { new Vector3(1, 2, 3), new Vector3(4, 5, 6) }; // sendMessage(points); } else { Debug.Log("Sending message from client to server"); Vector3[] points = new[] { new Vector3(3, 2, 1), new Vector3(6, 5, 4) }; PointsMessage message = new PointsMessage(); // message.points = points; myClient.Send(CustomMessage.hiMessage, message); } } } }
public void onClientReceiveMessage(NetworkMessage msg) { PointsMessage message = msg.ReadMessage <PointsMessage>(); // line object GameObject line = new GameObject(); Mesh mesh = new Mesh(); line.AddComponent <MeshFilter>().mesh = mesh; mesh.vertices = message.vertices; mesh.uv = message.uvs; mesh.triangles = message.triangles; line.AddComponent <MeshRenderer>().material = lineMaterial; //Vector3[] points = message.points; //Debug.Log(points.Length + " points received"); //foreach (Vector3 point in points) //{ // Debug.Log(point); //} }
void Update() { if (isAtStartup) { if (Input.GetKeyDown(KeyCode.S)) { Debug.Log("Server"); SetupServer(); } if (Input.GetKeyDown(KeyCode.C)) { Debug.Log("Client"); SetupClient(); } if (Input.GetKeyDown(KeyCode.B)) { Debug.Log("Both"); SetupServer(); SetupLocalClient(); } } else { if (Input.GetKeyDown(KeyCode.M)) { if (myClient == null) { Debug.Log("Sending message from server to client"); } else { Debug.Log("Sending message from client to server"); PointsMessage message = new PointsMessage(); myClient.Send(CustomMessage.hiMessage, message); } } } }