コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】GetComponentsInChildrenで自分自身を含まないようにする拡張メソッド

ソースコード

using System.Linq;
using UnityEngine;

public static class GameObjectExtensions
{
    public static T[] GetComponentsInChildrenWithoutSelf<T>(this GameObject self) where T : Component
    {
        return self.GetComponentsInChildren<T>().Where(c => self != c.gameObject).ToArray();
    }
}

使い方

gameObject.GetComponentsInChildrenWithoutSelf<UIWidget>();

関連記事