이전 문제가 해결된 이후로 2주 가까이 지났습니다.

 

오늘에서야 문제를 해결할 수 있었습니다.

 

저번에 적었듯이, MovingDirection이 Climb 중 Moving Input이 들어오는 상태에서 해제 될 시 값이 고정되는 문제가 있었습니다.

 

처음에는 Climb 중 이동을 맡는 MoveForward 함수 내부를 수정할까 고민을 했는데,

내부에서 무언가를 추가/제거 하는 것으로 문제가 해결 될 것 같지가 않았습니다.

그 이후 생각이 나는 해결책은 Tick에서 상태를 조절해주는 것인데,

기껏 Tick에서 기능들을 빼고 다시 넣는 것도 웃기는 것 같았습니다.

 

그러다가 이전에 Tick에 있던 기능들을 제거 할 때 CharacterMovementComponent의 OnMovementModeChanged 등과 같은 Event를 이용했던 것을 떠올렸습니다.

이번에도 문제가 발생하기 직전에 OnClimbEndOverlap Event가 호출이 되기에, 그 안에서 MovingDirection을 초기화 했습니다.

그러자 아무 일도 없다는듯이 문제가 해결되었습니다.

 

처음에는 Climb 상태가 아닐 때에도 Move Input이 들어오면 MovingDirection 값이 변하는데 왜 고정이 되는지 야속했습니다.

하지만 조금 더 생각을 해보니, Animation에 대해 열 댓개의 트리거들을 사용하고 있는데 작은 예외라도 처리를 해주는게 옳지 않았나 싶은 생각이 들었습니다.

 

그렇게 저를 괴롭히던 Climb 기능은 기능적인 측면에서는 모두 완성되었습니다.

남은 것은 각 기능 별 적절한 Animation이 재생이 되는 것인데,

Animation Blueprint를 수정해본 결과 State Machine에 구조적 결함이 있는 것을 발견했습니다.

 

그래서 FullBodyMotion쪽 State Machine들을 전면 개선해야 Animation이 정상 재생 될 것 같습니다.

이 과정에서 Ledge, Slide 등의 Animation도 같이 수정되기에 이 두 기능들 적용이 병행되어야 할 것 같습니다.

'개발일지 > Treasure Hunter' 카테고리의 다른 글

20.06.11 개발일지  (0) 2020.06.11
20.06.08 개발일지  (0) 2020.06.08
20.06.04 개발일지  (0) 2020.06.04
20.06.03 개발일지  (0) 2020.06.03
20.06.01 개발일지  (0) 2020.06.01

내용이 아무것도 없는 이유는 중간에 방향을 잃고 이리저리 방황했기 때문입니다.

 

우선 DirectX12의 예시 코드는 C++/CX를 개발이 된 코드입니다.

 

CX를 찾다 보니 UWP가 나오고, UWP를 찾아보다 보니 Windows RT가 나왔습니다.

 

Windows RT는 Windows 8에 추가가 된 것인데, 예시 코드 내부의 것들이 Windows 10에서 Windows RT에 통합이 된 경우가 있었습니다.

 

지금 약간 CX와 UWP, RT의 구분이 잘 되지 않고 있습니다.

 

그래서 몇시간 동안 CX 보다가 UWP 보다가 RT 보다가 왔다갔다 하는 것 같습니다.

 

그러다가 문뜩 "CX고 RT고 지금 게임 쪽에서 이런걸 쓰고는 있나?"라는 의문도 들기 시작했습니다.

 

클라이언트 팁을 조금 찾아보니까 아직까지는 이런 얘기들과는 거리가 조금 먼 상황인 것 같습니다.

 

그래서 다음주에는 DirectX 코드 분석을 하고, 그 뒤에 Windows Desktop Application Template에서 DirectX12 예시 프로그램과 동일한 기능을 구현해보려 합니다.

 

이래저래 Windows Programming을 병행 해야 하지 않을까 싶은데 시간을 더 내기가 힘들어서 고민이 됩니다.

오늘도 이 문제 부분을 고치기 위해 이것저것 시도를 했고, 실패했습니다.

얻은 결과가 몇가지 있다면, MovingDirection이 Climb 상태에서 해제된 이후로도 변하지 않는다는 점.

이 값이 변해야 하는 부분의 다른 함수는 잘 작동하고 있다는 점입니다.

 

다음에는 

1. 프로젝트 rebuilding 해보기

2. 해당 함수가 실행되어야 할 부분에 로그를 찍어서 제대로 동작하는지 확인해보기

 

이정도 먼저 해보려 합니다.

'개발일지 > Treasure Hunter' 카테고리의 다른 글

20.06.08 개발일지  (0) 2020.06.08
20.06.06 개발일지  (0) 2020.06.06
20.06.03 개발일지  (0) 2020.06.03
20.06.01 개발일지  (0) 2020.06.01
20.05.30 개발일지  (0) 2020.05.30

+ Recent posts