【Python】savedフォルダのパスを取得して保存してみる【UE5】(12)

Unreal Engine 5

はじめに

ファイルを保存する際に,ローカルプロジェクトのパスが分からないと困りますよね.例えば,絶対パスを記憶しておいて保存するようにしてしまうと,環境が変わった場合に保存できなくなってしまいます.そこで,ローカルプロジェクトのパスを取得できそうな関数があったので紹介していこうと思います.

環境

  • Unreal Engine 5.0.3
  • Windows11
  • Editor Utility Widgetsを実行できる環境が必要です(下記の記事の環境からやっていきます)
【python】UnrealEngine5のPythonでパッケージのパスを特定してみた【UE5】(7)
UnrealEngine5のPythonで自作のパッケージを追加するため,パッケージのパスが通っている場所を特定してみます.

パスの取得

前準備

下記のコードで作成します.指定したフォルダ(save_dir)にsample.csvを作成する簡単なコードです.

import utils

import importlib
importlib.reload(utils)

write_row   = ["timestamp", "date_str", "x", "y", "z", "roll", "pitch", "yaw"]

file_name   = "sample.csv"

print(file_name)
# save_dir    = r"D:\Local_Project\1002_UE5\1002_11_Tanya_of_Air\TanyaOfAir_v3\Saved"
utils.write_data(write_row=write_row, save_dir=save_dir, file_name=file_name)

パスを取得する関数

今回は,Engine Saved DirGame Agnostic Saved DirGet Project Saved DirectoryProject Saved Dirの振る舞いについてみていきます.作成したBPは下記の通りです,それぞれの関数の出力を可視化して,sample.csvを作成する簡単なコードです.

実行結果

実行結果はこちら,それぞれの関数の出力が分かりますね.ローカルのプロジェクトフォルダを指しているのはGet Project Saved DirectoryProject Saved Dirのようですね.

LogBlueprintUserMessages: [NewEditorUtilityWidgetBlueprint_C_0] Engine Saved Dir : C:/Users/XXXXXXX/AppData/Local/UnrealEngine/5.0/Saved/
Game Agnostic Saved Dir: C:/Users/XXXXXXX/AppData/Local/UnrealEngine/5.0/Saved/
Get Project Saved Directory : D:/Local_Project/1002_UE5/1002_11_Tanya_of_Air/TanyaOfAir_v3/Saved/
Project Saved Dir : ../../../../../../Local_Project/1002_UE5/1002_11_Tanya_of_Air/TanyaOfAir_v3/Saved/

実際にフォルダをみてもきちんと作成されていることが分かります.

file

file

結論

savedフォルダのパスを取得して保存することができます.これで行動ログなどの保存場所もばっちりですね.

参考文献

【python】UnrealEngine5のEditor Utility Widgetを使ってpythonを使ってみる~Hello world~【UE5】
UnrealEngine5でpythonを使っていきます.PluginはPython Editor Script Pluginを使っていきます(私の場合は最初から入っていました).その結果,無事にHello worldまでいけました.
【python】UnrealEngine5のpythonでpipを使ってみる~Numpyのインストール~【UE5】
概要UnrealEngine5でpythonのpipを使っていきます.その結果無事にpipを使ってnumpyを入れてnumpyの関数を使うことができました.はじめに記事の背景最近,UnrealEngine5でPythonを使っ...
【python】UnrealEngine5のPythonでCSVを出力してみる【UE5】
UnrealEngine5のPythonでCSVを出力してみます.

コメント

タイトルとURLをコピーしました