게임 개발에 필요한 웹서버에 대한 전반적인 내용을 최신 ASP.NET Core (Blazor, WebAPI)를 이용해 학습하는 강의입니다.
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] 업데이트 관련
안녕하세요,
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈]를 연재중인 Rookiss입니다.
금일 시리즈 최종 파트인 [Part9 : MMO 컨텐츠 구현 (DB 연동 + 대형 구조 + 라이브 준비)]가
오픈되어 공유 드립니다.
Part9의 부제는 DB 연동 / 대형 구조 / 라이브 준비입니다.
DB 연동
웹서버와는 다르게 게임 서버는 항상 바쁘게 돌아가야 하기 때문에,
웹서버를 연동하는 방법 그대로 게임 서버에 적용시키기는 힘듭니다.
반드시 쓰레드 관리를 통해 DB 일감과 게임 로직 일감을 분리해야 하고,
여러가지 순서 처리에 대한 골치아픈 문제도 등장하게 됩니다.
DB 연동 컨텐츠(아이템, 인벤토리, 캐릭터 저장 등)를 제작하면서
이런 부분에 대해 실습을 하게 됩니다.
대형 구조
명색이 MMO라면 그래도 몇 백의 유저가 한 공간에 모일 수 있어야 합니다.
그런데 같은 공간에 많은 유저가 모이는 것이 왜 그렇게 어려운 것일까요?
쓰레드라는 무기가 있음에도 왜 MMO 제작이 어려운지 그 이유에 대해 설명하고,
여러가지 서버 구조론에 대해 알아보게 됩니다.
그리고 우리가 만드는 인디 게임에서 가장 쉽게 적용할 수 있는 형태로
서버를 수정한 다음, DummyClient를 복원시켜 테스트를 해보게 됩니다.
라이브 준비
온라인 게임을 운영하려면 많은 지식이 필요한데,
주요 내용을 짚어보고 공용 DB를 사용해서
웹서버와 게임서버 사이의 통신 실습을 해봅니다.
아울러 Part9는 시리즈의 완결이고,
다음 강의는 서버 운영에 대한 이해를 돕기 위해
[서버 운영 (Network 기초 / Windows Server 실습 / Linux 실습 / AWS)]를 만들 예정이지만
특별히 본 시리즈와 연관성은 없는 독립적인 강의로 제작될 예정입니다.
마지막으로 강의 내용, 수강료, 난이도와 관련해서
여러 Q&A나 문의 메일이 종종 오는데,
[쉬운 난이도 + 짧은 제작 기간 + 낮은 수강료] vs [높은 난이도 + 긴 제작 기간 + 높은 수강료] 중
어떤 방향으로 강의를 제작할까 살짝 고민을 했지만,
전자는 다른 서적이나 강의도 이미 충분히 많이 있는 것을 감안하여
앞으로는 취업/게임 프로그래머를 목적으로 하는 분들을 위한
중/고급 난이도 강의 위주로 제작할 생각입니다.
C++ / 게임 수학 / 자료구조&알고리즘 / Windows C++ IOCP Server / DirectX12 / UE (순서 미정)
로 2021년까지 이어지는 C++ 기반 강의에서는
C#보다 더 Low하게 가는 고급 주제들을 다뤄볼 생각입니다.
감사합니다!