본문 바로가기
언리얼엔진

[ 언리얼엔진5 ] 언리얼엔진 튜터리얼 - Utilizing Python for Editor Scripting in Unreal Engine (2)

by CODESIGN 2023. 9. 15.

파이썬 코드를 적용해 보았다. 강좌에서는 예제로 unreal.EditorAssetLibrary를 사용하였다.

더 자세한 내용은 아래의 파이썬 API 문서 참고.

 

unreal.EditorAssetLibrary — Unreal Python 5.2 (Experimental) documentation

ie. (Reference/Text Path) StaticMesh’/Game/MyFolder/MyAsset.MyAsset’ ie. (Full Name) StaticMesh /Game/MyFolder/MyAsset.MyAsset ie. (Path Name) /Game/MyFolder/MyAsset.MyAsset ie. (Package Name) /Game/MyFolder/MyAsset

docs.unrealengine.com

 

 

class - unreal.EditorAssetLibrary


원래 강좌에서는 Notepad++를 사용하는데 나는 VScode가 더 편해서 VScode에서 코드를 적었다.

classmethod를 사용하기위해서는 먼저 클래스를 선언해주어야 한다.

unreal.EditorAssetLibrary는 클래스이고 그 안에 사용하고자 하는 메서드인 list_assets를 불러왔다.

 

코드 작성 후 UE에서 실행을 하면 다음과 같은 에러가 뜬다.

루트 디렉토리가 All이 아니기 때문이다.

 

UE의 Content에 마우스를 올리면 Game이 뜬다.

 

코드에서 /All 대신 /Game으로 바꿔준다.

 

명령어를 다시 실행하기 전에는 항상 reload를 먼저 해주어야 한다.

 

실행하면 다음과 같은 목록이 출력된다.

 

class - unreal.EditorUtilityLibrary


앞 코드에 이어서 다른 함수를 하나 더 만들어 주었다. 이 함수는 선택된 메쉬들의 정보를 출력해 주는 함수이다.

 

코드를 언리얼엔진에서 돌리기전에 메쉬들을 선택해야 한다. 선택하지 않을 경우 아무것도 출력이 되지 않는다.

 

다음과 같이 선택된 세개의 Static Mesh들의 정보가 출력된다.

 

unreal.EditorActorSubsystem


 

object needs an argument

 

댓글