GitHub
Client (Unity 3D, C#): https://github.com/Imnyeong/DungeonShooter
RESTfulAPI (node.js): https://github.com/Imnyeong/Node_js_Restful_API
WebSocket (node.js): https://github.com/Imnyeong/Node_js_WebSocket
[Client]
2D UI 변경 방식, ViewModelType을 Enum 값으로 만들어서 Singleton 내에서 묶어서 관리
무기 Prefab의 무분별한 Instantiate 방지용 ObjectPool
Player를 따라다니는 FollwCam, 평소에는 camDistance만큼 떨어져있다가 Player와 Cam 사이에 장애물(wall)이 있다면 장애물과의 거리만큼 Cam거리가 좁혀진다.
1인칭 3인칭 변경 기능, Aim은 1인칭 일 때만 보이도록 구현
[통신 관련 Client 측]
1. WebSocket
WebSocket 통신으로 다른 유저와 Data 실시간 동기화, Packet 구성 후 WebSocket Manager에서 서버 측으로 Data 전송
Packet 수신 부분, Message를 받으면 action Queue에 먼저 들어온 순으로 실행
PacketType 에 따라 각각 알맞은 함수 호출
2. RESTfulAPI
RESTfulAPI GET 형식 또는 POST 형식의 Request 전송 후 Response를 받으면 이후 Action을 이어서 실행하는 방식
[ 통신 관련 Server 측 ]
1.WebSocket
고유 방 번호마다 WebSocket을 열어서 같은 방에 있는 사람들끼리만 정보를 주고받는다.
2. RESTfulAPI
Requset로 보낸 Packet을 파싱하여 데이터를 Query에 담아 DataBase의 정보를 수정한다.
'포트폴리오' 카테고리의 다른 글
[터트릴 고양] Unity 2D Match 3 게임 (1) | 2024.08.23 |
---|---|
[제목 미정] Unity 2D 뱀서라이크 게임 (0) | 2024.08.23 |
[제목 미정] Unity 2D 횡스크롤 러닝 게임 (0) | 2024.08.23 |