오늘은 Climb 관련 Interface 작업을 진행했습니다.

우선 기능 자체를 보았는데, 이미 기능들이 Multiplay 환경에서 어느정도 완성이 되어 있었습니다.

기능 구현을 하면서 Multiplay를 같이 고려 했던 것을 보고 나서야 기억이 났습니다.

 

그리고 Interface에서 제공할 기능들을 살펴보는데, 보면 볼수록 Interface가 필요가 없을 것 같다는 생각이 들었습니다.

첫번째로, Climb는 Attach와 달리 비슷한 속성을 가진 다른 Actor가 없습니다.

Climb이 가능한 것들은 기본적으로 Climbs로 분류되고, 아직까지 일반 Actor에 이 속성이 부여될 계획이 없습니다.

그렇기에 그냥 기존처럼 Super Class를 제공해도 된다고 생각했습니다.

두번째로, Attach 기능을 하는 것도 Character계열이고, 그 외에는 관련 기능을 필요로 하지 않기 때문입니다.

사실 억지로라도 구현은 가능하겠지만, Climb 가능한 것들에 대한 Interface의 존재 의의가 흐려졌기 때문에 이 역시 존재 의의를 잃었다고 봅니다.

 

그래서 Climb 관련 Interface들은 삭제하였습니다.

그러자 모든 문제가 사라지고, 곧바로 기능 문제로 이동했습니다.

여전히 제 Character는 윗쪽에서 진입 시 Character가 원하는 방향(Z축 기준 180도 회전)으로 움직이지 않습니다.

TeleportTo, SetActorRelativeRotation 모두 정상적으로 작동하지 않습니다.

Character다 보니까 CharacterMovementComponent를 이용해야 하나 싶기도 한데

아직 갈피를 못잡아서 커뮤니티에 질문글을 올리고 마무리를 하였습니다.

내일부터 수요일까지 면접이라 목요일까지 좀 알아보고, 체력이나 멘탈 여부를 보고 마저 진행할지를 고민하려합니다.

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

20.08.15 개발일지  (0) 2020.08.15
20.08.13 개발일지  (0) 2020.08.13
20.08.09 개발일지  (0) 2020.08.09
20.08.08 개발일지 2  (0) 2020.08.08
20.08.08 개발일지  (0) 2020.08.08

오늘은 열 하루만에 드디어 Multiplay 상의 Attach 기능을 구현하였습니다.

코드를 보고 싶어하는 회사에도 메일을 보냈습니다.

 

구현하면서 시간이 오래 걸린 부분은 Latch와의 상호작용이었습니다.

단순히 Piece와의 관계는 Replicate와 Character 내부에서의 코드만 만지면 되기에 비교적 쉽게 구현할 수 있었습니다.

하지만 Latch는 여기에 Latch가 섞이면서 3개를 동시에 관리를 해야 했습니다.

게다가 이 중 몇몇 코드는 Piece와 Character간의 상호작용 코드와 90% 이상 동일했기에

둘 사이를 관리하는 함수를 재 사용 하는데, 이 때 사소한 문제가 시간을 오래 잡아먹었습니다.

 

그리고 Attach 뿐만 아니라 Collision을 관리 하는 것에서도 시간을 잡아먹었습니다.

Piece의 Attach Detach가 직접적으로 이루어지지 않기 때문에 중간중간에 가만히 있는 시기가 존재하는데.

이 때 Character와 Collision이 발생해서 예상치 못하게 트리거 값들이 변하는 문제가 치명적이었습니다.

게다가 무슨 이유인지 Debug를 해도 이벤트에 진입하지 않고 진행 되면서 Log로 문제가 되는 부분을 찾아야 했습니다.

 

그리고 시간이 조금 더 남아 Wall을 두개로 나누어 하나는 Climb 전용 Wall.

다른 하나는 Trap에서 사용될 Obstacle로 분리했습니다.

 

다음에 할 일을 나열해보자면

1. Climb

2. Trap

3. Puzzle

4. 기타 Object

5. Animation 관련 사소한 조정

 

이렇게 있습니다.

이 중 5번은 다음번으로 미루어도 될 정도의 수준이고,

4번도 구현 기능 테스트를 더 정확히 하기 위한 것으로 엄밀히 말하면 나중에 해도 되긴 합니다.

 

결국 1, 2, 3이 남는데 이 중 1번 Climb를 먼저 하려 합니다.

일단 기능이 어느정도 완성되어 있는만큼 이 기능을 먼저 Multiplay에서 가능하게 하고, 

그 다음 Trap을 구현하고자 합니다.

Trap이 다 되면 이를 기반으로 Puzzle을 구현하고, 그 뒤에는 기타 사소한 조정을 할 예정입니다.

 

기한은 솔직히 모르겠습니다.

Attach도 완성되어 있던 것을 구조 변경 하면서 4일은 밤샘으로 열흘 정도 걸렸는데

Climb는 그래도 이전에 어느정도 정리를 했으니 밤샘 없이 열흘 정도 걸리지 않을까 싶습니다.

Trap은 보름에서 스무날이 걸릴 것으로 예상합니다.

개인적으로 이 두개를 8월 안에 끝내는 것이 1차 목표입니다.

Puzzle은 새로 만들어야 하기에 이 역시 열흘에서 보름은 생각하고 있습니다.

 

이렇게 적어놓으니 중요 기능은 9월 중순까지로 예상됩니다.

1차 목표는 8월 전까지 Trap 구현이지만,

솔직히 Puzzle도 구현하여 9월에 어느정도 완성된 코드를 포트폴리오에 사용하고 싶습니다.

그 전에 지금 면접을 보는 회사 중 마음에 드는 회사에 입사를 하면 더 좋겠구요.

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

20.08.13 개발일지  (0) 2020.08.13
20.08.10 개발일지  (0) 2020.08.10
20.08.08 개발일지 2  (0) 2020.08.08
20.08.08 개발일지  (0) 2020.08.08
20.08.06 개발일지  (0) 2020.08.06

조금씩 버그를 고친 끝에 Attach 기능의 8할? 9할? 정도를 오나성했습니다.

 

지금은 멀티플레이 상에서 대부분의 상황에서 원하는대로 기능이 작동합니다.

다만 두가지 경우에 원하는대로 작동하지 않는데,

하나는 Latch에 Piece가 Attach된 상태에서 Character가 Piece를 Attach 한 상태로 Latch와 Collision 했다가 취소 했을 때 Detach를 하지 못합니다.

다른 하나는 Latch와 Character가 각각 Piece를 Attach 한 상태에서 Interaction을 하는 경우.

즉, Switch의 경우 마찬가지로 이후 Detach를 할 수 없었습니다.

 

분기로 보아 어느 순간 InteractionType이 Attach가 아닌 Default로 변하는 것 같습니다.

지금 끝내는 것도 좋으나, 하루 여유가 있으니 무리하지 않고 오늘은 정상적으로 보내고 내일 낮에 마무리 하겠습니다.

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

20.08.10 개발일지  (0) 2020.08.10
20.08.09 개발일지  (0) 2020.08.09
20.08.08 개발일지  (0) 2020.08.08
20.08.06 개발일지  (0) 2020.08.06
20.08.05 개발일지  (0) 2020.08.05

+ Recent posts