概要
using System.Collections.Generic; using UnityEngine; public class Example : MonoBehaviour { private void Awake() { var spriteRenderer = GetComponent<SpriteRenderer>(); var sprite = spriteRenderer.sprite; var polygonCollider2D = GetComponent<PolygonCollider2D>(); var physicsShapeCount = sprite.GetPhysicsShapeCount(); polygonCollider2D.pathCount = physicsShapeCount; var physicsShape = new List<Vector2>(); for ( var i = 0; i < physicsShapeCount; i++ ) { physicsShape.Clear(); sprite.GetPhysicsShape( i, physicsShape ); var points = physicsShape.ToArray(); polygonCollider2D.SetPath( i, points ); } } }