메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

이아스님이 제공하는 자바 헤드라인

한빛미디어

|

2001-12-06

|

by HANBIT

6,378

저는 최근에 포르테 포 자바 3.0 J2SE 1.4 베타3 코번들과 J2ME Wireless Toolkit(WT) 1.0.3 (포르테 연동형)을 사용하여 MIDP(미드피)용 게임을 만들고 있습니다. 개발 PC 사양이 팬티엄3 1기가헤르츠에 메모리 512메가바이트인데, 이제는 거의 느리다는 느낌이 안들 정도로 컴파일과 실행이 부드럽습니다. 다만 WT의 에뮬레이터가 PNG(핑) 포멧 이미지 렌더링에 무슨 먼지가 꼈는지 다소 거칠게 묘사되고, 투명 핑을 제대로 겹쳐 보여주지 못하는 단점이 있습니다. 이것은 SK-VM 에뮬레이터로 돌리면 말끔히 해소되는데, 역으로 SK-VM 에뮬레이터는 키보드 입력이 바로 되지 않아 게임의 조작감을 테스트해보기 힘들더군요. 따라서 게임성 테스트는 WT의 에뮬레이터로, 그래픽 처리 확인은 SK-VM 에뮬레이터로 하면 아주 좋습니다. 더우기 두 에뮬레이터 사이에는 미드피만 쓴다면 아무런 위화감도 없어서 포르테에서 작업하던 클래스와 리소스를 그대로 SK-VM이 실행할 수 있을 정도입니다. (포르테가 사전검증-preverify까지 해주므로 LGT에서도 문제 없을 것입니다.) 물론 기종별로 다소 멀티미디어 기능상의 구현 차이가 존재하지만, 우선 미드피 표준으로 코어를 작성하고 나서 각각의 구체적 플랫폼으로 포팅하면 생산성은 무척 높힐 수 있다고 생각합니다.
오라일리 사이트에 오랜만에 가봤더니 아주 흥미로운 책이 출간되었더군요. "Physics for Game Developers - 게임 개발자를 위한 물리학"이라는 이름의 이 책은 게임상에 등장하는 실제 물리공간의 시뮬레이션을 어떻게 하면 좀더 현실적이며 과학적으로 연출할 수 있는가의 기초를 설명하고 있습니다. 최근 J2ME를 선두로 자바 플랫폼의 게임 분야 응용에 대한 타진이 곳곳에서 벌어지고 있는 시점에서, 게임 개발자를 꿈꾸고 계시는 분들에게는 무척 유익하며 재밌는 정보가 담겨있지 않을까... 저는 아직 본문은 안읽어봤습니다만. 다소 수학-역학적 딱딱함이 서양인 특유의 연역적 사고관과 버무려져 낯설게 느껴질 수도 있지만, 여러모로 제대로 된 게임을 만드는 데 좋은 참고가 되리라 봅니다.
우리나라에서는 이미 네트웍 게임이 대중화를 이루었지만, 동해 건너 일본은 내년을 네트웍 게임의 개화 시기로 전망하고 있습니다. 특히 가장 주목을 끄는 것은 역시 세계마저 뒤흔든(?) 파이널 판타지 시리즈의 제작사 스퀘어가 서비스할 파이널 판타지 11(플레이온라인-PlayOnline)입니다. 이미 시스템 구축을 마치고 베타 테스트에 들어갔는데요, 안타깝게도 국내에서는 경험조차 못해보게 무척 까다로운 환경 설정을 요구하고 있는 실정입니다. 아마도 수만-수십만의 회원이 사용할 것이라는 예상이 지배적인 가운데, 단순히 동시 접속 RPG(롤 플레잉 게임)뿐만 아니라 카드 게임(국내에는 무척 생소한 장르이죠.)등의 온라인 게임, 만화, 애니메이션등의 온라인 엔터테인먼트, 채팅, 게시판등의 온라인 커뮤니티 기능까지 한데 묶어 서비스를 하려다보니 그 시스템적 규모가 짐작조차 가지 않았었는데, 이번에 일본에서 발간되는 월간 썬월드(SunWorld) 12월호에 그 전모가 밝혀졌습니다. 결론부터 말하면 인텔판 솔라리스로 가동하는 1250대의 PC서버를 결집한 것이 스퀘어의 플레이온라인 시스템이랍니다. 이 시스템의 수장격인 디렉터의 말에 따르면, 플레이온라인 시스템은 일반적인 웹사이트와는 완전히 다른 시스템이라며, 실시간적 인터렉션을 위한 서버측에서의 연산이 팽대해진다는 지적입니다. 또한 정보제공을 목적으로 하는 웹 사이트이라면, 액세스 집중에 의해 리스폰스 타임(reponse time-응답시간)이 길어지게 되도, 사용자가 어느정도까지는 봐주는 반면, 게임의 유저는 그렇게는 안된다는 거죠. 이밖에도 시스템이 다운되었을 때 조속히 교체가 가능한 대책도 필요하며, 결정적으로 사업의 채산성을 유지할 수 있어야 하는데, 시스템의 구축-운용 비용을 될 수 있는 한 억제해야하는 상황에서 시스템 구성은 보더 라우터를 껴서 IX, ISP로 접속되고, 내부에는 디스트리뷰션 스위치(10기가비트-스위치)를 중심으로 PC 서버군, DB서버, NAS(Network Attached Storage)가 접속되어 있답니다.
Physics for Game Developers
사용자로의 컨텐츠 배급과 게임 연산 처리를 담당하는 PC서버는 1250대중 연산에 1000대, 배급에 250대를 나누어 쓰고 있다는군요. 또 분배 스위치와 PC서버 사이에는 로드 밸런싱을 위한 엑세스 스위치가 들어있다고 합니다. 그런데 왜 하필 PC 서버를 택했을까요? 여기에 대해서 디렉터는, PC 하드웨어의 부품들이 조달하기 쉽고 관리가 수월하기 때문이었다고 합니다. 이미 스퀘어는 CG(컴퓨터 그래픽) 처리를 위한 1000여대의 PC서버로 렌더링 펌을 구축-운용해본 경험이 있었기 때문이기도 하겠죠. 그렇다면 왜 운영체계는 인텔판 솔라리스 8? 이미 렌더링 펌에서는 레드햇 리눅스까지 써본 회사가? 디렉터의 대답은 다음과 같습니다.
"리눅스와 FreeBSD도 물론 검토했었습니다. 레드헷은 상당히 유력까지 했지요. 하지만 스트레스 테스트(일부러 서버에 부하를 실어 견디게 하는 실험)를 실시한 결과 다른 피씨 유닉스는 죽어버리는 고부하시에도 솔라리스는 잘 견디어 나갔습니다. 단순히 처리 스피드로 비교해본다면 오히려 리눅스나 프리피에스디가 나은 부분도 있었지만, 그런 점은 프로세서를 늘린다거나, 머신의 대수를 늘리면 해결할 수 있는 문제죠. 신뢰성과 바꾸게되는 것은 되지습니다."
개발 플랫폼의 관점에서도 솔라리스의 우위성을 다음과 같이 말합니다.
"같은 프로그램을 실행시키는 경우, 리눅스등은 알 수 없는 에러가 발생하는 일이 있습니다. 그점에서 솔라리스로는 그랬던 에러가 거의 없고, 에러가 발생했던 경우에도 원인을 알아내기 쉬웠습니다. 플레이온라인은 게임 서버 소프로 시작해, 많은 소프트가 사내 개발하고 있기 때문에, 이점도 솔라리스 채용의 큰 포인트가 되었죠."
이미 널리 인정받은 스팍용 솔라리스의 기술을 그대로 물려받은 인텔용 솔라리스는, 상용이지만 8 CPU이하에서는 무료로 사용할 수 있다는 것로 레드햇을 제칠만한 충분한 이유였다고 합니다. 독특하게도 플레이온라인은 가정용 게임기인 플레이스테이션2에서 돌아가기 때문에, 그에 합당한 조작감을 주기 위해 기존의 HTML이 아닌 스퀘어 고유의 PML(PlayOnline Markup Language)라는 언어를 개발하여 브라우저까지 만들었다는군요. 자, 이렇게 해서 2002년 봄 정식 오픈을 눈앞에서 둔 플레이 온라인, 과연 100만을 넘어 전세계로 뻣어나갈 수 있을지 많은 이의 이목이 집중되고 있습니다. (아참, DB 서버는 썬 Fire 6800에 Oracle 9i 한대만 쓴데요. DB를 분산시킬 수가 없어 한대 아주 좋은 놈(?)으로 쓴다는 군요.)
지난주에 자바원 컨퍼런스가 일본에서 있었습니다. 자비 100여만원을 들여 전격 취재에 들어간 결과, 궁금하지 않으세요? 곧 공개됩니다.
TAG :
댓글 입력
자료실