반응형

 

이번에는 어몽어스의 게임 대기실에서 게임 규칙을 설정하는 기능을 구현해봅시다!

 

사용 엔진 버전 : 2019.4

 

타임라인

0:00 인트로

0:11 색상 선택 후 이전 색상 선택이 해제되지 않는 버그 수정

1:18 방의 최대 인원/최소 인원/임포스터 수 세팅

3:00 게임 규칙 UI 배치

7:13 게임 규칙 UI 기능 구현

12:55 서브 패널 교체 기능 구현

14:16 아웃트로

반응형
반응형

 

대기실에서 캐릭터의 색상을 선택하는 기능을 구현해봅시다!

 

사용 엔진 버전 : 2019.4

 

UI 리소스 : https://drive.google.com/file/d/1nXp2...

 

타임라인

0:00 인트로

0:11 리소스 임포트

0:17 방에 접속한 플레이어의 색상 자동 지정 기능 구현

4:07 Customize UI 배치

6:12 색상 선택 기능 구현

10:46 Customize UI 열기/닫기 기능 구현

17:55 아웃트로

반응형
반응형

 

이번에는 대기실에서 돌아다니는 플레이어의 캐릭터를 구현해봅시다!

 

사용 엔진 버전 : 2019.4

 

캐릭터 리소스(압축파일) : https://drive.google.com/file/d/1eznS...

캐릭터 리소스(패키지) : https://drive.google.com/file/d/1z_lP...

 

타임라인

0:00 인트로

0:10 리소스 임포트

0:17 Lobby Player Character 프리팹 제작과 위치 동기화

3:08 캐릭터 조작 기능 구현

5:09 애니메이션 동기화

8:20 대기실 의자에서 캐릭터 생성하기

9:36 대기실 우주선 밖으로 벗어나지 못하게 하기

11:21 스프라이트 정렬

13:39 아웃트로

반응형
반응형

 

2021/01/09에 스트리밍으로 진행했던 게임 서버 & 네크워크 개론 편집본입니다!

급하게 기획해서 진행한 스트리밍 강좌라 그런지 아쉬운 점이 많네요. 다음엔 좀 더 잘 준비해서 해보겠습니다. 그리고 아쉬운 소식으로는 지난 1년간 저와 함께 열심히 90여편의 영상을 제작해왔던 마이크가 수명이 다해간다는 겁니다. 그래서 강좌 중간에 사운드가 나간 부분이 많아서 다시 녹음해서 올린 부분이 조금 있습니다. 거기에 무려 한 시간 짜리 영상이라 자막은 언제 제작할 수 있을지 눈 앞이 깜깜하네요 ㅜㅜ

 

타임라인

0:00 인트로

1:00 게임 서버 방식 1 - P2P

3:23 게임 서버 방식 2 - Host

6:31 게임 서버 방식 3 - 데디케이트 서버

8:04 데디케이트 서버를 잘못 만들면?

11:23 장르별 게임 동기화 수준

12:22 FPS/레이싱

13:40 턴제 전략/TCG

13:57 RTS

19:50 게임 네트워크 구조의 변화

27:24 서버 구축 방식의 발전

27:31 전통적인 서버 구축

34:08 IaaS(Infrastructure as a Service)

35:20 Paas(Platform as a Service)

38:31 서버리스 아키텍처

40:30 BaaS(Backend as a Service)

42:33 GBaaS(Game Backend as a Service)

43:44 게임 서버의 궁극! 클라우드 게임

50:06 아웃트로

반응형
반응형

 

어몽어스 대기실에 오브젝트들과 UI를 배치해봅시다.

 

사용 엔진 버전 : 2019.4

 

대기실 리소스(압축파일) : https://drive.google.com/file/d/1T4GT...

대기실 리소스(패키지) : https://drive.google.com/file/d/1J077...

 

타임라인

0:00 인트로

0:12 리소스 임포트

0:19 방 접속 기능 구현

2:31 대기실 오브젝트 배치

3:40 대기실 기본 UI 배치

4:26 대기실 세팅 UI 배치

5:06 대기실 세팅 UI 기능 구현

7:43 아웃트로

반응형
반응형

 

이제 프로젝트에 네트워크를 위한 API인 Mirror를 설치하고 RoomManager를 세팅해봅시다!

 

사용 엔진 버전 : 2019.4

 

타임라인

0:00 인트로

0:19 Mirror 네트워크 API 설치

1:08 Among Us Room Manager 만들기

1:52 Offline Scene과 Online Scene 세팅

2:28 Room Scene과 Gameplay Scene 세팅

3:00 Room Player Prefab 세팅

4:12 Player Prefab 세팅

5:04 Game Room 생성 기능 구현

7:11 아웃트로

반응형
반응형

UNet 

UNet 지원 중단과 새로운 네트워크 지원 예정


이전 포스트에서 유니티에서 지원하는 네트워크 게임 구현 API인 UNet에 관한 내용을 다룬 적이 있으며, 추후에 추가적인 내용을 다룰 예정이었지만 지난 2018년 8월 2일에 유니티 공식 블로그에 게시된 글에 의하면 UNet은 deprecated 되었으며 새로운 네트워크 API를 지원하기 위한 준비를 하고 있다고 이야기하고 있다.


 

UNet 튜토리얼 (1) - 개요 글에서 이야기하였듯이 UNet의 구조는 위의 이미지처럼 전송 계층에 가까운 LLAPI(Low Level API)와 게임에 필요한 기능을 제공하는 HLAPI(High Level API)로 나누어져 있다. 이 LLAPI와 HLAPI는 유니티의 계획에 의하면 :


1. HLAPI는 2018.4(LTS) 이후 더 이상 유니티와 함께 제공되지 않음. 2018.4(LTS) 출시일 이후 2년 동안 유니티의 장기 지원 정책에 따라 중요한 수정 사항 제공.

2. LLAPI는 2019.4(LTS) 이후 더 이상 유니티와 함께 제공되지 않음. 2019.4(LTS) 출시일  이후 2년 동안 중요한 수정 사항 제공.

3. 유니티 릴레이 서버 및 레거시 매치 메이커 서비스는 2018.4(LTS) 제공 이후 3년 이상 계속 운영하며 다음 서비스로 전환 계획.


UNet은 더 이상 사용되지 않지만 ECS(Entity Component System)와 대응이 되는 차세대 네트워크 기능을 곧 제공할 예정이다. 유니티가 제공할 예정인 기능은 다음과 같다.


1. 기존 UNet의 HLAPI 및 LLAPI를 대체하며 DOTS와 호환되는 새로운 네트워킹 계층.

2. P2P 지원 릴레이 서버를 대체하는 멀티 플레이 게임 서버 호스팅 서비스.

3. 레거시 매치 메이커 서비스를 대체하는 새로운 매치 메이킹 서비스.


유니티의 네트워크 API 제공 계획은 다음과 같습니다.




반응형
반응형

싱글플레이 게임을 멀티플레이 게임으로 


발전시켰을 때 적 AI가 플레이어를 


인식하지 못하는 문제


UNet Tutorial (13) - 네트워크 애니메이터(Network Animator) 글에 달아주신 myouzing님의 질문 댓글에 대한 답변입니다. 질문의 내용은 다음과 같습니다.


 

질문의 내용으로는 싱글플레이 FPS 게임을 만드시다가, UNet을 이용해서 그 게임을 멀티플레이로 발전시켰을 때, 적 AI가 플레이어를 인식하지 못하는 것으로 보입니다. 


질문 댓글의 내용이 간략하고 자세한 정황과 멀티플레이 설계가 어떻게 되어있는지 알 수 없기 때문에 완전한 해결책은 알려드리기 어려울 것 같습니다. 하지만 증상을 미루어보아 짐작했을 때, 의심이되는 상황이 있습니다.


의심이 되는 부분은 서버와 클라이언트에서 양 측에 적 AI 오브젝트와 플레이어 오브젝트가 둘 다 정상적으로 네트워크 오브젝트로서 생성되어 있는가 하는 부분입니다. 예를 들어 서버와 클라이언트에 적 AI가 생성되어 동기화 되고 있는데 플레이어 오브젝트가 클라이언트에서만 생성되서 서버에서는 생성되지 않은 경우라면, 클라이언트의 플레이어가 적 AI에게 다가가도 서버 측의 적 AI가 보았을 때는 주변에 아무도 없기 때문에 플레이어를 인식하지 못하는 경우가 발생할 수 있습니다.


그 외에도 기본적인 문제로 신텍스 에러가 발생하지 않더라도 플레이하는 도중에 Null Reference나 Missing Reference 같은 오류가 발생한다면 코드가 진행하다가 멈추기 때문에 로그를 잘 확인해보셔야 할 것 같습니다.

반응형

+ Recent posts