일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- c++
- 정렬
- 스택
- 누적 합
- 백트래킹
- DFS
- 우선순위 큐
- 트리
- 재귀
- 수학
- 유니티
- 다이나믹 프로그래밍
- 유니온 파인드
- Team Fortress 2
- Unreal Engine 5
- 그래프
- VR
- 브루트포스
- 그리디 알고리즘
- 구현
- 문자열
- XR Interaction Toolkit
- 투 포인터
- 알고리즘
- 다익스트라
- 자료구조
- 시뮬레이션
- 백준
- ue5
- BFS
- Today
- Total
목록언리얼 (26)
1일1알
앞으로 해야하는 작업1. 로켓의 움직임을 보간작업을 통해 부드러운 움직임 구현2. 사람 여러명일때 반사하는 각도에 따라 타겟 설정 하는 공식 만들기 (내적을 이용하면 될거같음)3. 맵 적용4. 로켓 파티클이 맘에 안드는데 수정하기5. 어색한 애니메이션 해결6. 관전상태일때 다른 사람 시점으로 볼 수 있는 기능 추가7. 팀별 스폰장소 지정하고 게임 Ready상태일때 스폰장소에 스폰하기8. Ready상태일때는 못움직이게 하기 생각보다 할게많네
채팅 시스템 구현을 위해 3개의 Widget을 제작하였다. 1. ChatUI : 엔터를 누르면 나오는 채팅 UI로, 채팅 로그들이 기록되고 스크롤박스를 통해 스크롤하여 지금까지의 채팅 내용을 확인할 수 있다.2. ChatTmpUI : 잠깐 나왔다가 사라지는 채팅 UI로, 실시간으로 올라오는 채팅이 잠깐 나왔다가 사라지는 UI이다.3. ChatElement : ChatUI의 스크롤박스의 자식, ChatTmpUI 의 VerticalBox에 들어가는 실제 채팅 메세지, 발신인을 표시하는 UI이다. RichText를 사용하여 부분적으로 텍스트의 색상을 변경 가능하도록 하였다. 플레이어의 상태, 현재 팀에 따라 플레이어 앞에 붙는 수식어와 플레이어의 이름 색상이 변경되도록 하였다. 만약 ..
게임 도중 누가 죽이고 누가 죽었는지를 보여주는 킬 피드 UI를 제작하였다.로켓 폭발시 연관성을 기반으로 동작하는 MulticastRPC를 사용하여 모든 플레이어들에게 공격자와 피해자 정보를 넘겨주고, 클라이언트에서는 넘겨받은 정보를 사용해 킬 피드 UI를 띄워주었다. 넘겨받은 플레이어의 정보를 바탕으로 팀 닉네임을 해당 플레이어의 팀 색으로 변경하고, 본인이 공격자거나 피해자이면 킬피드의 배경을 흰색으로 변경해주었다. 킬 피드 UI에는 Vertical Box 하나만 있고, 킬 피드 Element를 따로 제작하여 Vertical Box의 자식으로 붙이고 일정시간 뒤에 스스로 사라지도록 하였다.

실제 Team Fortress 2의 UI를 참고하여 현재 게임의 점수를 확인할 수 있는 스코어보드 UI를 제작하였다. 실제 Team Fortress 2의 UI에는 더 많은 정보를 포함하고 있지만 간단한 정보만 추려서 스코어보드 UI를 제작하였다. 전체적인 구조는 ScoreBoardWidget을 바탕으로 각 팀의 점수, 로컬 플레이어의 이름, 로컬 플레이어의 킬, 로컬 플레이어의 데스, 관전자 플레어들 목록을 표시하도록 하였고 현재 접속한 플레이어에 따라 플레이어가 Red팀이나 Blue팀이면 ScoreBoardElementWidget을 동적으로 생성하여 ScoreBoardWidget의 VerticalBox의 자식으로 붙히는 방식으로 제작하였다. ScoreBoardElementWi..

원래 기본 구형 메쉬였던 로켓에 추출한 로켓 메쉬를 적용하고 현재 방향에 맞게 회전값을 갱신해주는 작업을 하였다.간단한 작업일줄 알았는데 은근히 시간을 뺏겼다. 회전을 가하는데 초기 로켓의 방향이 맞지 않아서 블루프린트 클래스에서 수정하려 했더니 루트 컴포넌트는 회전이 되지 않았다.그래서 씬 컴포넌트를 루트 컴포넌트로 지정하고 로켓을 자식으로 지정한 뒤 초기 회전값을 조정했더니 회전은 의도한대로 되었지만 이번엔 Block 처리가 갑자기 먹통이 됐다.구글에 좀 찾아보니 루트 컴포넌트가 아니면 Block이 적용되지 않는다는 것 같았다. 그래서 SphereComonent를 RootComponent로 지정하여 그쪽에서 충돌을 관리하도록 하고 로켓은 충돌을 빼고 메쉬만 보이도록 해서 해결하..