public void RebuildShadow() { _visiblitySet = _visiblitySet ?? new VisiblitySet(); _visiblitySet.Clear(this); _meshFilter = _meshFilter ?? GetComponent <MeshFilter>(); AddSegments(_visiblitySet); _visiblitySet.PrepareSegments(); _visiblitySet.UpdateAngles(); _visiblitySet.Sweep(); _bounds = new Bounds(transform.position, new Vector3(size, size, size)); CreateShadowPolygonPoints(); Mesh mesh = _visiblitySet.CreateOrUpdateMesh(); if (_meshFilter != null) { _meshFilter.sharedMesh = mesh; } if (_drawGizmos) { Gizmos.color = Color.blue; Gizmos.DrawWireMesh(mesh, transform.position, transform.rotation); } }
public void RebuildShadow() { _visiblitySet = _visiblitySet ?? new VisiblitySet(); _visiblitySet.Clear(this); _meshFilter = _meshFilter ?? GetComponent<MeshFilter>(); AddSegments(_visiblitySet); _visiblitySet.PrepareSegments(); _visiblitySet.UpdateAngles(); _visiblitySet.Sweep(); _bounds = new Bounds(transform.position, new Vector3(size, size, size)); CreateShadowPolygonPoints(); Mesh mesh = _visiblitySet.CreateOrUpdateMesh(); _meshFilter.sharedMesh = mesh; if (_drawGizmos) { Gizmos.color = Color.blue; Gizmos.DrawWireMesh(mesh, transform.position, transform.rotation); } }