[Unity]멀티플레이 FPS게임 개발기 4 - 프로토타입 플레이 영상: 프로토타입과 수정사항 및 추가사항

RisingJade의 개발기록·2022년 5월 8일
0

KILLER BEAN 제작기

목록 보기
4/5
post-thumbnail

플레이 영상

링크: https://youtu.be/krIg4MJ12zc

"현재 비디오 편집의 오류로 초반부 이후 음소거가 되어있습니다.
몇몇 수정 사항을 고친 뒤 새로운 플레이 영상을 올리겠습니다."

현재 구현 된 사항 (서버 기준)

TCP기반 서버

C# socket과 Timer.timer로 간단한 TCP기반 서버와 서버에서 돌아가는 Job Scheduler 구현

기초 데드레커닝

  • 유니티에서 positionrotation값을 60hz 로 보내는 것이 아닌 입력 값이 있을 때 보내는 Input패킷을 통해 상대 클라이언트에서 이동방향을 추측하고 이동시키는 방법.

    추가적으로 가장 많이 보내지는 이 KeyboardInput패킷은 BitFlag방식을 통해 7개의 입력을 int하나로 보내어 대역폭을 낮출 수 있었다.
  • 한국에서 패킷을보내고 응답받는데 걸리는 시간은 ngrokJP서버를 통해 접근하는 Ping 33ms~38ms과 포워딩에 걸리는 시간포함 최대 약 70ms가 걸리기 때문에 실제 KeyboardInput값을 받아도 지연차이가 생긴다. 따라서 일정 시간마다 한번씩 position을 동기화 하는 작업이 있다.

수정 사항

  • 마지막 수정: 2022.05.08
  • 플레이어별 오디오 볼륨 크기 및 거리에 따른 오디오 볼륨 조정

추가 사항

  • 개인 KillCount 및 팀 KillCount UI 생성
  • 클라우드 서버에 해당 서버프로그램을 올리고 평균 ping을 산출하여 지연 보정 값 계산하는 로직 작성
  • 사운드 및 이펙트 추가
  • 무기의 종류 및 이미지 추가
  • 무기 구매 UI, Tab창 추가
profile
언제나 감사하며 살자!

0개의 댓글