gottu
(gottu)
1
image01のようにいくつか階層に親子付けされているアクターがいて、一番上のブループリントアクターのスクリプトで、自分の子供すべての表示/非表示等を制御したいと思っています。
取得しようとして、image02のようにブループリントを書きましたが、
"Get Attached Actors"だと直下のアクター(画像ではCubeのみ)しか取得されません。
"Get All Child Actors"だと取得されません。
どうしたら子供・孫以下まで取得できるか教えてください。
また、親のみを制御して子供以下はそれに従うような制御(非表示にしたらそれにぶら下がる子供たちも非表示になるとか)方法はないでしょうか。
よろしくお願いします。
tamfoi
(tamfoi)
2
GetChildrenComponentsで取得できました。孫、ひ孫…と取得したい場合はIncludeAllDescedantsにチェックをいれてください。
tamfoi
(tamfoi)
3
親をActor継承のものに変えたらダメでした。申し訳ありません。
親のActorに次のようなCustomEventを作り、LevelBPなどで呼べば子供以下の表示非表示を制御できました
gottu
(gottu)
4
早速の回答、ありがとうございました。
サンプルで試してみたところできました。
作成中のものでも試してみます。
意味的には親だけActorのHiddenで、子供以下はコンポーネントのHiddenで、制御しているということでしょうか。
gottu
(gottu)
5
作成中のプロジェクトで試してみたところ、希望通りに表示・非表示の制御はできたのですが、階層の中にOnBeginCursorOver, OnEndCursorOver, Onclickedのイベントを持たせたアクターがいて、Onclickedのイベントが発生してしまいます。
コンポーネントがHiddenの時~、と判断すれば大丈夫だと思うのですが、あまり複雑にしたくなく・・・。
なのでActorのHidden制御はできないものでしょうか。
gottu
(gottu)
6
get childrencomponents の後にget ownerしてActorをHiddenすることができました。
Hiddenにしてもonclickedのイベントが発生するので、そこは条件分岐することにしました。
ありがとうございました。