忍者ブログ

非現実的な話

ゲーム、UnrealEngine4などの話題を取り扱います。取り扱う内容は個人の範囲で調べたものなのでご利用は自己責任でお願いします。

【UE4】Tagの件 (Actorを引っ張る編)

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

【UE4】Tagの件 (Actorを引っ張る編)

とある日の職場での先輩との会話。
私:「先輩!このActorクラスから値引っ張りたいんすけど!」
先輩:「Tagで引っ張ってくるがよい。」
私:「おk!(Tagってなんやねん!!)」

で、Tagについて調べた。
AActorを継承するクラスにはTagと呼ばれる属性(名前)が付けられる。
Tag付けすることで、欲しいObjectだけを取得したりすることができる。
↓のように敵のクラスには"Enemy"とTag付けしたり。



これを元に敵クラスから"Boss"とTag付けされたObjectを引っ張ってみる。

Blueprintからだとこう。


C++からだとこんな感じか・・・?
GetAllActorOfClass関数はBlueprintOnlyなので無理やり。


これでボスキャラだけを対象にアクションを起こすことができる。
ちなみにC++の方はDestroyしているのでボスは死ぬ。


オーケー、大体把握した。
Actorは何でも引っ張れるのね。


・・・ちょっとまて、LevelもTag持ってるやんけ。
LevelってActorなのか?というか何クラスからの派生や?



で、Tag付けしてGetAllActorOfClass関数を読んでみたらLevelのObjectも引っ張れた。
どうやらWorldクラス(UActorComponentの継承)だった。
LevelもComponent扱いだったのか。Level跨ぎで音が継続できない理由が判明した(過去記事参照)


いやしかし、SceneOutlinerをよく見たら「World」ってしっかり書いてあった・・・。
どうやらVer4.7からはLevelもComponentとして表示される。4.6、4.5では出てなかったのにー。


という訳で、本日はTagの使い方とLevelの正体を勉強しやした。

コメント

プロフィール

UnrealEngine4について調べる。
ゲームはそんなに得意ではない。

ブログ内検索

カレンダー

11 2017/12 01
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

リンク

  • [PR]
    PR