メインコンテンツへスキップ
  1. 記事/

Wildcardについての覚書

UnrealEngine UE4.26 Blueprints
目次

わりと扱いが特殊な Wildcard についてです

発端 #

解説 #

Blueprint の Macro には、Wildcard という特殊な型が存在します
一番良く使う場所にあるのが、 ForEachLoop の Array と ArrayElement ですね

この Wildcard、一番最初に接続したものの型になる、という性質を持っています
ForEachLoop ではこれを利用して、Object の配列をループ処理することが多いですね

で、注意点なのですが…

一番最初に接続したものの型になる という性質、これに気をつけておかないと、見た目が同じなのに動作が違う処理が発生してしまいます

例えば、以下の 2 つはノード構成は同じですが、結果が全く違います

GetAllActorsOfClass の出力を ForEachLoop の Array に繋いでから Class を指定した場合

先に指定

GetAllActorsOfClass の Class を指定してから、 ForEachLoop の Array に繋ぐ場合

後で指定

Actor 扱いになってしまうと再度 Cast する、というもったいない状況が発生しますね
こうなると一度 Wildcard の接続を切らないと直りません
あとから型を切り替える際も注意しておく必要があります

Related

StaticMeshのPivot変更について
UnrealEngine UE4.26 StaticMesh Plugins
LandscapeのSubSectionについて
UnrealEngine UE4.26 Landscape
UnrealEngineからBlenderへSkeletalMeshをExportするときの注意点(検証中)
UnrealEngine Blender UE4.26 Blender2.9 ExportFBX Rigs