UE4にはブループリントが実装されている当初から用意されているMath Expression(通称 数学式)という機能があります。最初はプラグインでしたが現在はエンジン自体の組み込み機能です。
これがMath Expressionノードです。
このMath Expression、最初からついている組み込み機能なのにその存在を知らない人を今でもよく見掛けます。そしてプログラマーでより経験の長い人ほどブループリントで四則演算を計算することを毛嫌いする人が多い気がしますが、そういう人のためにあるのがこのMath Expressionノードです。
公式ドキュメントは以下にあります。
docs.unrealengine.com
たしかに基本的な使い方は上記ドキュメントの通りなのですが、微妙にわからない点もいくつかあります。
Math Expressionで使えるノードについて、ヒストリアさんの以下の記事でも検証されているので引用しておきます。
- static 関数である
- BlueprintPure である
- ネイティブ関数である
- 出力が1つ(ReturnValue)だけある
これらを守っていれば比較的自由に計算式を構築できるということがわかります。ただし記事内でも触れられていますが、前括弧 "(" がDisplayNameに入っているノードは仕様なのか現在も使えないようです。
それではもう少し詳しく見ていきましょう。
続きを読む