private void ValidateRelativeBounds(NavGrid parent) { if (Math.Abs(_relativeBounds.size.magnitude - parent.GetNavUnitSize()) > 0.001) // If size has changed { ComputeRelativeBounds(parent); } }
private void ComputeRelativeBounds(NavGrid parent) { float navUnitSize = parent.GetNavUnitSize(); Vector3 unitLocalCenter = new Vector3(navUnitSize, navUnitSize, navUnitSize) / 2f; Vector3 unitCenter = Vector3.zero; unitCenter += Vector3.right * Row; unitCenter += Vector3.up * Col; unitCenter += Vector3.forward * Depth; unitCenter *= navUnitSize; unitCenter += unitLocalCenter; _relativeBounds = new Bounds { center = unitCenter, extents = unitLocalCenter }; }