private static getPoints ( |
||
collider | source box collider | |
Результат | List |
/// <summary> /// Turns Gameobject into multiple fragments /// </summary> private void generateFragments() { fragments = new List <GameObject> (); switch (shatterType) { case ShatterType.Triangle: fragments = SpriteExploder.GenerateTriangularPieces(gameObject, extraPoints, subshatterSteps); break; case ShatterType.Voronoi: fragments = SpriteExploder.GenerateVoronoiPieces(gameObject, extraPoints, subshatterSteps); break; case ShatterType.Cave: pointsResult = SpriteExploder.getPoints(gameObject, extraPoints); fragments = SpriteExploder.GenerateCavePieces(gameObject, pointsResult, subshatterSteps); break; default: Debug.Log("invalid choice"); break; } //sets additional aspects of the fragments foreach (GameObject p in fragments) { if (p != null) { p.layer = LayerMask.NameToLayer(fragmentLayer); p.GetComponent <Renderer> ().sortingLayerName = sortingLayerName; p.GetComponent <Renderer> ().sortingOrder = orderInLayer; } } foreach (ExplodableAddon addon in GetComponents <ExplodableAddon>()) { if (addon.enabled) { addon.OnFragmentsGenerated(fragments); } } }