Я импортировал несколько .obj, у каждого из них разное количество детей, у некоторых из них 1, а у некоторых больше.В моей игре я могу использовать мышь, чтобы выбрать один из этих .obj, и он обводит контур вокруг того, который я выбрал.
Моя функция отмены выбора работает неправильно.При попытке удалить сценарий для контура из одного из этих объектов он не будет делать это, если у объекта есть только один дочерний элемент.Кажется, 2 ребенка работают хорошо каждый раз, а 1 ребенок - нет.Это точно вход в дочерний цикл удаления, который я недавно отлаживал, но он входит в него только один раз, в отличие от объектов с двумя дочерними элементами, трижды входящих в цикл.
Есть идеи, в чем здесь проблема?
if(selected != null){
Transform[] ts = selected.GetComponentsInChildren<Transform>();
foreach (Transform child in ts){
Destroy(child.gameObject.GetComponent<cakeslice.Outline>());
}
Destroy(selected.GetComponent<cakeslice.Outline>());
selected = null;
}