# 子供のアクターを取得したい

**URL:** <https://forums.unrealengine.com/t/topic/389504>\
**Category:** Blueprint\
**Tags:** unreal-engine, Blueprint, question\
**Created:** [March 30, 2017, 5:06pm UTC](https://forums.unrealengine.com/t/topic/389504 "2017-03-30T17:06:27Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![gottu](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@gottu](https://forums.unrealengine.com/u/gottu)\
**Post date:** [March 30, 2017, 5:06pm UTC](https://forums.unrealengine.com/t/topic/389504/1 "2017-03-30T17:06:27Z")

</div>

image01のようにいくつか階層に親子付けされているアクターがいて、一番上のブループリントアクターのスクリプトで、自分の子供すべての表示/非表示等を制御したいと思っています。

取得しようとして、image02のようにブループリントを書きましたが、  
"Get Attached Actors"だと直下のアクター(画像ではCubeのみ)しか取得されません。  
"Get All Child Actors"だと取得されません。

どうしたら子供・孫以下まで取得できるか教えてください。  
また、親のみを制御して子供以下はそれに従うような制御(非表示にしたらそれにぶら下がる子供たちも非表示になるとか）方法はないでしょうか。

よろしくお願いします。

 ![132232-image01.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/a/b/7ab47fa921f6dfcde033cc0118fa32c0f047168b.jpeg)

 ![132233-image02.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/8/1/5/815b0c925fd305243a1d608bd75e9c43385a1d05.jpeg)

---

<div class="post-metadata">

**Author:** ![tamfoi](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tamfoi/32/984280_2.png) [@tamfoi](https://forums.unrealengine.com/u/tamfoi)\
**Post date:** [March 30, 2017, 5:51pm UTC](https://forums.unrealengine.com/t/topic/389504/2 "2017-03-30T17:51:18Z")

</div>

GetChildrenComponentsで取得できました。孫、ひ孫…と取得したい場合はIncludeAllDescedantsにチェックをいれてください。

---

<div class="post-metadata">

**Author:** ![tamfoi](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tamfoi/32/984280_2.png) [@tamfoi](https://forums.unrealengine.com/u/tamfoi)\
**Post date:** [March 30, 2017, 6:20pm UTC](https://forums.unrealengine.com/t/topic/389504/3 "2017-03-30T18:20:22Z")

</div>

親をActor継承のものに変えたらダメでした。申し訳ありません。

親のActorに次のようなCustomEventを作り、LevelBPなどで呼べば子供以下の表示非表示を制御できました

 ![132238-ce.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/9/6/1/96109063e05eb844cb3ca2eb28175bd5a9921c56.png)

---

<div class="post-metadata">

**Author:** ![gottu](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@gottu](https://forums.unrealengine.com/u/gottu)\
**Post date:** [March 31, 2017, 5:32pm UTC](https://forums.unrealengine.com/t/topic/389504/4 "2017-03-31T17:32:04Z")

</div>

早速の回答、ありがとうございました。  
サンプルで試してみたところできました。  
作成中のものでも試してみます。

意味的には親だけActorのHiddenで、子供以下はコンポーネントのHiddenで、制御しているということでしょうか。

---

<div class="post-metadata">

**Author:** ![gottu](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@gottu](https://forums.unrealengine.com/u/gottu)\
**Post date:** [March 31, 2017, 6:09pm UTC](https://forums.unrealengine.com/t/topic/389504/5 "2017-03-31T18:09:18Z")

</div>

作成中のプロジェクトで試してみたところ、希望通りに表示・非表示の制御はできたのですが、階層の中にOnBeginCursorOver, OnEndCursorOver, Onclickedのイベントを持たせたアクターがいて、Onclickedのイベントが発生してしまいます。  
コンポーネントがHiddenの時～、と判断すれば大丈夫だと思うのですが、あまり複雑にしたくなく・・・。  
なのでActorのHidden制御はできないものでしょうか。

---

<div class="post-metadata">

**Author:** ![gottu](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@gottu](https://forums.unrealengine.com/u/gottu)\
**Post date:** [April 8, 2017, 2:29pm UTC](https://forums.unrealengine.com/t/topic/389504/6 "2017-04-08T14:29:16Z")

</div>

get childrencomponents の後にget ownerしてActorをHiddenすることができました。  
Hiddenにしてもonclickedのイベントが発生するので、そこは条件分岐することにしました。  
ありがとうございました。
