cocos2d-x 또는 Unity3D용 게임에 쓸 Server Engine Research

 회사 차기 프로젝트에 서버까지 해야할 듯 싶네요. 이젠 정말 다시 클라이언트 게임 개발자가 게임 서버 프로그래밍도 해야 하는 길을 가야할 때가 다시 온 것이죠. MMO나 MO처럼 큰 건 아니고 캐쥬얼 게임정도 처리를 하면 될 듯한데 Client Engine은 cocos2d-x아니면 Unity3D로 갈 듯해서 이와 궁합이 잘 맞는 서버로 작업을 진행해볼까 합니다. 서버 완전 제일 밑단부터 만들거나 하진 않을 거구요, 그래서 서버 엔진들을 리서치 해봤습니다.

 여기서 잠시 제 네트워크 개발 관련 지식 수준을 까발려보자면,


 이게 다 입니다. 네트워크 Core 딴부터 개발하는 뭐 그런거 없는 전 클라이언트 프로그래머에요~ 막막하네요, 서버 엔진을 찾아도 DB는 또 어쩔.....; 각설하고 간단하게 찾은 종류만 정리해봅니다.

 Server Comparison Chart를 누군가가 정리해 놨더군요. 요즘 유니티3D와 같이 많이들 사용한다는 photon serverSmartFox Server 등이 보이는군요. 차트에는 없지만 RakNet이라는 녀석도 있죠. 각 서버에 대한 자세한 설명은 링크를 통해 확인하면 될 듯하고 일단 유료는 배제합니다.

 무료 서버 엔진중에 뭐가 있을까 보니 차트에 Lidgren라는게 보입니다. XNA 프로젝트에 사용되던 엔진인 듯합니다. C#으로 되어있구요.


 XNA에 Lidgren을 써서 만든 테스트 게임들 영상입니다.

 현재는 Unity3D도 지원해주고 있네요.

 리서치를 해보니 이미 C#에서 네트워크 말단 부분을 어느정도 모듈화가 되어 있다고 하는데 거기다가 Lidgren이라는 녀석으로 인해 게임에서 사용할 수 있는 Framework 정도로 보면 될 듯합니다. 역사도 깊고? 아직도 꾸준히 업데이트 중이네요.


 SlimNet이라고 이건 무료인지 모르겠는데 이것도 C#으로 되어있고 Unity3D를 지원합니다.

 자, 이번에는 개발 언어를 바꿔서 요즘 잘나가는? node.js라는 녀석입니다. 자바스크립트를 서버사이드에서 사용할 수 있는 Framework입니다. 이미 구글과 페이스북에서도 사용하고 있다고하니 말 다했네요?


 제가 딱 찾던 slide가 있네요. 이정도까지도 개발할 건 아니지만 아무튼 괜찮은 내용입니다. 자 다음으로는 영상들을 추가해봅니다.

 HTML5와 node.js로 만들어진 멋진 웹 MMORPG 게임 영상입니다. 이정도 퀄리티에 최대 3000명의 동접을 처리했다고 하네요. 한 서버당인지 여러 서버 합친건지는.... node.js에 대해 잘 정리해주신 분이 계시네요. 링크로 확인하시고 밑에 기타 node.js를 서버로 활용한 게임 영상입니다.





 결론은?

 Client Engine을 cocos2d-x로 한다면 java script를 지원하기때문에 node.js로 진행 할 듯하고 유니티3D로 한다면 Lidgren 또는 SlimNet을 사용할 듯 합니다. 뭘 선택하든 java script나 C# 언어를 익혀야하는.... DB는 어쩔?

댓글

  1. C#기반 프로젝트인경우 유니티에 클라용 네트웍을 붙일라면 .Net Framework2.0을 벗어나는 .Net 모듈을 사용하면 안뎀

    만약 사용할 경우 유니티에서 해당 dll을 참조시키고 PC에서 말고 Device에 올려서 정상작동하는지 확인해야함

    가끔 PC는 데고 모바일 기기에선 안데는 경우가 있기 때문

    답글삭제
    답글
    1. 뭐가 되엇든 서버 관련은 다 어쩔일뿐..ㅋ

      삭제

댓글 쓰기

이 블로그의 인기 게시물

'xxx.exe' 프로그램을 시작할 수 없습니다. 지정된 파일을 찾을 수 없습니다.

goorm IDE에서 node.js 프로젝트로 Hello World Simple Server 만들어 띄워보기

애드센스 수익을 웨스턴 유니온으로 수표대신 현금으로 지급 받아보자.