インポート設定を一括変更する

スタティックメッシュのひとつひとつのインポート設定を修正していたら非常に面倒なのでスクリプトで一括処理する方法。

Import Mesh LODsにチェックをつける

コンテンツブラウザでスタティックメッシュアセットを複数選択した状態で実行する。

#
# インポート設定のImport Lodsにチェックを入れたい
#
import unreal

# アセットブラウザで選択されたスタティックメッシュアセットを取得
assetList = unreal.EditorUtilityLibrary.get_selected_assets()

if len(assetList) > 0:
    for asset in assetList:
        import_data = asset.get_editor_property('asset_import_data') # FbxStaticMeshImportData型のクラスが取れる
        #print(import_data.import_mesh_lo_ds)
        import_data.import_mesh_lo_ds = True

        asset.set_editor_property('asset_import_data', import_data)

頂点カラーを一括でReplaceに変更する

#
# 頂点カラーのインポート設定を一括でReplaceに変更する
#
import unreal

# アセットブラウザで選択されたスタティックメッシュアセットを取得
assetList = unreal.EditorUtilityLibrary.get_selected_assets()

if len(assetList) > 0:
    for asset in assetList:

        import_data = asset.get_editor_property('asset_import_data') # FbxStaticMeshImportData型のクラスが取れる
        import_data.vertex_color_import_option = unreal.VertexColorImportOption.REPLACE
        
        asset.set_editor_property('asset_import_data', import_data)

ソースファイルパスを変更する

ソースファイルパスのディレクトリ部分を差し替える。

#
# インポート設定のソースファイルパスを変更したい
#
import unreal
import os

# 変更後のディレクトリ
newDir = r'C:\Users\YSM\OneDrive\ドキュメント\Workshop\Unreal Projects\Driving Park\render'

# アセットブラウザで選択されたスタティックメッシュアセットを取得
assetList = unreal.EditorUtilityLibrary.get_selected_assets()

if len(assetList) > 0:
    for asset in assetList:
        import_data = asset.get_editor_property('asset_import_data') # FbxStaticMeshImportData型のクラスが取れる
        
        filepath = import_data.get_first_filename()
        basename = os.path.basename(filepath)   # ファイル名(拡張子あり)
        dirname = os.path.dirname(filepath)     # ディレクトリ名
        newpath = newDir + '\\' + basename

        import_data.scripted_add_filename(newpath, 0, 'Source File')
        asset.set_editor_property('asset_import_data', import_data)
タイトルとURLをコピーしました