void UpdateMesh() { m_trackedPlane.GetBoundaryPolygon(ref m_points); int[] indices = TriangulatorXZ.Triangulate(m_points); m_mesh.Clear(); m_mesh.SetVertices(m_points); m_mesh.SetIndices(indices, MeshTopology.Triangles, 0); m_mesh.RecalculateBounds(); m_meshCollider.sharedMesh = null; m_meshCollider.sharedMesh = m_mesh; }
void UpdateMeshIfNeeded() { m_trackedPlane.GetBoundaryPolygon(m_points); if (AreVertexListsEqual(m_previousFramePoints, m_points)) { return; } int[] indices = TriangulatorXZ.Triangulate(m_points); m_mesh.Clear(); m_mesh.SetVertices(m_points); m_mesh.SetIndices(indices, MeshTopology.Triangles, 0); m_mesh.RecalculateBounds(); m_meshCollider.sharedMesh = null; m_meshCollider.sharedMesh = m_mesh; }
void UpdateMeshIfNeeded() { if (EazyARCoreInterface.isSimulated) { if (createdSimulatedMesh) { return; } //Mesh meshToCopy = ARCoreInterface.instance.simulatedTrackedPanel.GetComponent<MeshFilter>().sharedMesh; //m_mesh.Clear(); //m_mesh.vertices = meshToCopy.vertices; //m_mesh.triangles = meshToCopy.triangles; //m_mesh.uv = meshToCopy.uv; //m_mesh.normals = meshToCopy.normals; //m_mesh.colors = meshToCopy.colors; //m_mesh.tangents = meshToCopy.tangents; //m_mesh.RecalculateBounds(); //createdSimulatedMesh = true; } else { detectedPlane.ARcoreDetectedPlane.GetBoundaryPolygon(m_points); if (AreVerticesListsEqual(m_previousFramePoints, m_points)) { return; } int[] indices = TriangulatorXZ.Triangulate(m_points); m_mesh.Clear(); m_mesh.SetVertices(m_points); m_mesh.SetIndices(indices, MeshTopology.Triangles, 0); m_mesh.RecalculateBounds(); } m_meshCollider.sharedMesh = null; m_meshCollider.sharedMesh = m_mesh; }