본문 바로가기
UE5 : Paper 2D (Blueprint)/애니메이션 관리

[UE5 : Paper2D(BP) - 애니메이션 관리] Chapter 05. State 패턴

by song.ift 2023. 12. 26.

GitHub : https://github.com/developeSHG/UE5-Paper2D/commit/119b69edc1a2274f2dbab805fe09bfbcb87ed0a6

 

State 패턴 · developeSHG/UE5-Paper2D@119b69e

hokyung.song committed Jan 4, 2024

github.com

 

 


 

 

여태까지 동작 상태인 Attack이나 Key Pressed를 Boolean을 통해 공격을 하겠다던지, 이동을 한다던지 각각 표현해왔다. 근데 이렇게 상태마다 Boolean을 계속 늘리게 되면, 점프나 벽을 타고 있는 상태 등 수도 없이 늘어날 것이다.

또 다른 문제는 공격중인 상태일 땐 당연히 이동을 안하고 있는 경우가 대부분이기 때문에, Boolean끼리 서로 독립적인 존재가 아니라 엮여있기 때문에 Boolean을 늘려서 관리하는 것은 좋지 않다.

 

우선, 코드가 너무 방대한 부분을 수정. 

하나를 대상으로 테스트 하고 있으니, Set Flipbook을 매번마다 만들어놨지만, 코드 성능의 문제라기 보단 관리하기 굉장히 지저분하다. 

Direction을 Select 노드를 이용해 최소화.

 

 

다시 돌아와서 처음 말한 Boolean으로 상태를 계속 늘려서 관리하는 것은 좋지 않은 방법이고, State Pattern을 이용해 관리.

댓글