openFrameworksやp5jsなどのメディアプログラミング環境ではマウスカーソル情報は手軽に取得できる情報ですが、Unreal Engineではちょっと工夫が必要です。
ということでこの記事ではUnreal Engineでマウスカーソル関連の情報を取得する方法をまとめました。下記のブループリントをレベルブループリントか、ブループリントクラス(Actor)に構築します。クラスの場合は(8)と(9)も設定してください。
- ドラッグ(Boolean)とマウスカーソル位置用(Vector)の変数を作成
- マウスカーソルの表示
- ドラッグ開始を変数に保持
- ドラッグ終了を変数に保持
- マウスダウンの処理
- マウスアップの処理
- マウスカーソル位置の取得
クラス内のブループリントの場合のみ
- クラスのデフォルトを表示
- Auto Receive InputをONにして操作の入力を受け付ける
このブループリントをベースにイベントディスパッチャーなどと組み合わせて、インタラクションのシステムを構築することが可能かと思います。
なるべくレベルにブループリントを増やしたくないという場合は、マウス情報用クラス内にブループリントを構築、それをアクターとしてレベルに追加しておくと汎用的に使えるかもしれません。