Game Develop

[UE5] BehaviorTree TaskNode의 InitializeFromAsset VS InitializeFromMemory 본문

UnrealEngine5/이것저것

[UE5] BehaviorTree TaskNode의 InitializeFromAsset VS InitializeFromMemory

MaxLevel 2024. 10. 5. 13:08

 

몬스터 행동트리를 만지던 도중, 태스크노드에서 게임시작시 한번만 호출하게 되는 함수를 원하게 됐다.

그래서 챗지피티한테 물어봤더니 두개의 함수를 추천해줬다.

 

InitializeFromAsset 과 InitializeMemory

 

원리를 전부 파악한건 아니니, 거두절미하고 쓰겠다.

어차피 뭐 그냥 직접 태스크노드에서 위 두 함수 오버라이드해서 BP찍어보는게 확실하긴 하다.

 

 

InitializeFromAsset :

1. 행동트리파일을 오픈할 때 호출.

2. 이후 행동트리에서 이것저것 만진 후 Save할 때 또 호출.

3. 게임 시작시에 호출.

 

 

InitializeMemory :

=> BehaviorTreeComponent의 StartTree를 호출 할 때 호출된다.

     몽타주 Ended나 Started에 함수를 바인딩해야할 때, 즉 각 몬스터마다 한번씩만 호출해주면 될 때 InitializeMemory

     쓰면 적절하다. ExecuteTask처럼 매개변수에 OwnerComp랑 NodeMemory가 있기 때문에 가능.