子オブジェクトを全て削除する拡張メソッド

特定のオブジェクトの子オブジェクトを全て削除(破棄)する拡張メソッドを作成しました。

作成したソースコード

ObjectUtilities.cs

using UnityEngine;

public static class ObjectUtilities
{
    public static void DestroyChildren(this Transform parent)
    {
        for (var i = parent.childCount - 1; i >= 0; i--)
        {
            Object.Destroy(parent.GetChild(i).gameObject);
        }
    }
}

使い方

使い方は非常に簡単で、
上記ObjectUtilities.csを作成したうえで

(任意のTransform).DestroyChildren();

とするだけです。

【例】 自身の子オブジェクトを全て削除

private void Start(){
    transform.DestroyChildren();
}

コメント