오늘은 원래 닷지랑 콤보어택을 추가하려 했으나,

상태가 늘어남에따라 문제가 생겻어..

지금 점프공격 후에는 점프공격을 금지하고, 공격중엔 점프를 금지하고, 뭐엔 뭐를 금지하고...

하다보면 상태가 늘어남에따라 무조건 실수도 늘어나고, 모든 상태를 확인하기가 힘들어지더라


따라서 유한상태머신, 그 중에 이전상태를 기억하는 푸시다운 오토마타를 쓰고 싶었어.

그런데 블루프린트로 스택을 구현하지도 못하겠고, enum도 잘 활용 못하겠어서 일단은

문자열 state를 switch로 구분해서 사용했어


학교에서는 블루프린트만 가르쳐주는데 c++만 쓰다가 블루프린트로만 하려니까 뭔가 제약이 엄청 많더라

상태에 따라 이동가능한 상태를 제약해주면 불필요한 bool변수나 체크하는 함수들을 더이상 안써도 됨

이런 식으로 과제 일지 1에서 만든 모든 상태변환을 만들어줬어

상태만 들고와서 애니메이션 stateMachine에서 체크해주니까 변환도 편하더라고


근데 왜 캐릭터 블루프린트에는 stateMachine을 못쓰는 걸까..

불필요한 변수도 많이 줄고 공격중에 점프가 되는등의 버그도 간단하게 해결됨

이제 내일 깔끔하게 함수로 묶으면 될듯


여담으로 졸업작품 Direct3d12 사용해서 게임 만드는중인데 맡은 파트가

물리엔진(옥트리 광역탐지, SAT 지역탐지, Manifold이용한 resolution)이랑 애니메이션(스키닝 애니메이션, 블랜드, 컨트롤러)야

맡은 부분이 전부 언리얼 딸깍으로 해결되니까 현타오더라..