UE4 / C++ / エディタでTickを有効にする方法
Actor派生クラスのヘッダでShouldTickIfViewportsOnlyをoverrideしてtrueを返せばエディタでもTickが動くようになる。
virtual bool ShouldTickIfViewportsOnly() const override { return true; };
このアクタをレベル上に配置すると、エディタ上でもTickが定期的に実行されるようになる。
Tick間隔をクラスデフォルトで変更するとすぐ反映される。
このクラスを親に持つBPクラスを作った場合は
レベルに配置してもBPのTickはエディタ上では動かない。C++のTickのみがエディタ上で動く。
BP編集中だけBPのTickもエディタ上で動くようになるが、BPのTick処理からはGetAllActorsノードなどで他のアクタへアクセスできない。編集専用のレベル上で実行されているっぽい。
プレイした場合は通常のTickとおなじように動き、BPのTickからでも他のアクタへアクセスできる。