Unreal Engine5のブループリントで.pyファイルで書いた関数を呼び出す方法です。
準備
1)Unreal Engine5のインストール
2)UE5を起動し、プロジェクトを新規する
3)(右上の) Settings → Plugins → Python Editor Script Plugin
をチェックする
4)UE5再起動
プロジェクト内で一番下のところで下記の図通りでPythonファイルが実行可能になります。
Step1 ブループリントを開く
Content Drawerの空白の箇所で右クリックして、Editor Utility Widget
を作成する。
新規のEditor Utility Widgetをダブルクリックして、Widgetの設計画面に入れ、ここで、一つ制御ボタンを作る。
ボタンのディテールで一番下のOn clickedイベント
を左クリックし、ブループリントでイベントノードが作成できる。
Step2 Pythonコマンドを実行しましょう
まずは、好きな場所で下の図のようなPythonファイルを作りましょう。
print('Hello World!')
def foo():
print('This is a function called foo.')
ブループリントでPythonの実行方法は3つあってここで、Execute Python Command
をクリックします。
On clickedイベントのノードを左クリックしながら、少しドラッグしてドロップする。
検索ボックスで「python」を入力して、いつくかのファンクションが表示される。
Execute Python Command
を選んで、Python Commandで下記のようなコードを入力してください。
こちらではPythonコマンドを入力するところです。
書き方はPythonファイルの記述方法とほぼおなじです。
import sys
はPythonファイルの保存パスを追加します。
import sys
sys.path.append('C:/***上記のPythonファイルの保存ディレクトリ***/')
# import 上記のPythonファイルの名前(例はmyprint.py)
import myprint
myprint.foo()
# 連続実行したい場合は下記のコードが必須です。
import importlib
importlib.reload(myprint)
警告
パスの書き方に注意してください。
X: C:\Users\yourname\Documents\Python
○: C:/Users/yourname/Documents/Python
Step3 実行してみましょう
実行前には、ブループリントの左上のコンパイルのクリックを忘れないでください。
UEのDefault画面に戻って、Content Drawerを開いて、さっき作成したEditor Utility Widgetで右クリックしてRun Editor Utility Widget
をクリックする。
その後、EUWのウィンドウが表示され、ボタンを押すと、Output Logでprint分の文字列が出力される。