private void SetNewMesh(GeneratedRect targetRect, Mesh newMesh) { MeshFilter meshFilter = targetRect.GetComponent <MeshFilter>(); if (meshFilter != null) { Undo.RecordObject(meshFilter, "MeshFilter mesh change"); meshFilter.mesh = newMesh; } }
private void AdaptCollider(GeneratedRect targetRect, RectMeshGenerator meshGenerator) { BoxCollider col = targetRect.GetComponent <BoxCollider>(); if (col != null) { Undo.RecordObject(col, "Collider bounds change"); meshGenerator.AssignRectVariables(col); meshGenerator.AdjustCollider(col, heightProperty.floatValue); } }
private void RecreateRectAndSetColliderCenter(GeneratedRect targetRect) { RecreateRect(targetRect); BoxCollider col = targetRect.GetComponent <BoxCollider>(); if (col != null) { targetRect.ColliderCenter = col.transform.TransformPoint(col.center); } }
private void ResizeToColliderBounds(GeneratedRect targetRect) { BoxCollider col = targetRect.GetComponent <BoxCollider>(); if (col != null) { Vector3 newCenter = col.transform.TransformPoint(col.center); xProperty.floatValue = col.size.x; zProperty.floatValue = col.size.z; heightProperty.floatValue = col.size.y; RecreateRect(targetRect); targetRect.MoveToColliderCenter(newCenter); } }