[re] 오랜만에 질문 하나 드립니다~

조회 수 7193 추천 수 96 2003.08.08 02:20:02
우선 말씀드릴 것은...
저는 3D엔진과 클라이언트,서버의 네트웍 모듈만 만들었습니다.
엔진은 물론이요 네트웍 모듈 역시 코룸 프로젝트만이 아닌 다른 게임들에서도 범용적으로 쓸 수 있게 만든 DLL모듈입니다.따라서 게임내용과 관련된 처리는 완전히 빠져있습니다.
해서 제가 코룸에 관련된 기술적인 내용에 대해서는 정확히 알고있지 못합니다.쏘렌토의 엔진을 납품한다고 해서 쏘렌토에 대해서 잘 알지는 못하는것처럼요.그리고 제가 안다고 해도 진행중인 게임 프로젝트의 기술적인 부분은 발설해서는 안될걸로 생각합니다.회사 재산이며 다른 문제를 유발할 수 도 있으니까요.

그래서 코룸과는 전혀 상관없이....제가 예전에 서버프로그래밍 할때 썼고 아마도 지금 다른 게임들도 상당히 많이 쓰고 있을 방식을 말씀드리겠습니다.

어떤식으로든 맵 위에서 돌아다니는 온라인 게임은 공간을 분할합니다.3D든 2D든 말이죠.분할하지 않는다면 지구 땅덩어리 끝의 A군이 한마디 하면 반대쪽 끝에 있는 B군이 A군이 하는 소리를 들을것입니다.필요에 따라선 그럴수도 있겠지만 이는 불필요한 부하를 유발하죠.

분할은 트리를 이용할수도 있고 그리드를 이용할수도 있습니다.일단 분할된 공간에 속하는 게임 개체들(이를테면 다른 플레이어)끼리는 정보를 공유할 필요가 있습니다. 같은 공간에 속한다는 것은 그 개체를 보고 있거나 관련하여 게임을 진행하고 있다는 얘기니까요.고로 같은 공간에 속하는 모든 개체들에게는 각각의 데이타를 패킷으로 날려줄 필요가 있습니다.

뭐 이 정도는 충분히 생각하고 계셨겠죠?

마을을 예로 드셨는데 제 생각엔 마을에 들어갔다고 해서 마을에 있는 다른 캐릭터들의 정보를 몽땅 보내오진 않을겁니다. 그 기준은 마을이 아니라 '플레이어의 시야영역' 혹은 유사한 다른 단위겠죠.리니지2는 접속자수가 많고 시야영역이 길기 때문에 한번에 같은 공간(추상적인 의미의)에 속하는 플레이어들이 많을것입니다. 마을에 들어가는 순간 수백명의 캐릭터를 보았다면 그들은 이미 나(플레이어)와 한 공간에 속한것이므로 그들의 데이타를 모두 받을 필요가 있는거죠.

그러나 일반적으로 다른 캐릭터들이 시시각각 상태가 계속해서 변하는 경우는, 그것도 한꺼번에 모든 상태 수치가 변하는 경우는 거의 없습니다.몇가지 항목이 시간차를 두고 변할 뿐이죠. 따라서 변화에 따른 부분적인 데이타만 갱신해주면 패킷사이즈를 크게 줄일수 있습니다.실제로 대부분의 게임은 변동분에 대해서만 패킷을 전송합니다.
요약하면 한 영역에 속했을때, 그들의 데이타를 전혀 가지고 있지 않은 상태에선 많은 패킷을 받아야 하지만, 한번 받고 나면 그들이 다른 공간으로 이동해서 사라져버릴때까지는 변동되는 데이타만 작은 패킷으로 받으면 되는 것입니다.

별것도 아닌 내용을 장황하게 설명했네요.도움이 되셨는지?


댓글 '1'

풍이

2003.08.09 14:23:41
*.111.131.49

답변감사합니다. ^^
파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
63 개발 인력에 대한 질문 [1] 방문객 108 2004-07-20 23064
62 [질문] SS3D의 안보이는 펄리곤 제외 방식 [3] 방문객108 2004-07-01 6292
61 질문~~~ [1] clever98 2004-06-22 8148
60 [re] ss3d 엔진에 대한 질문 [2] 여치 2004-06-13 6156
59 ss3d 엔진에 대한 질문 Guest 2004-06-13 5413
58 [re] [질문]HeightField에서 LOD는 안쓰시나요? [6] protian 2004-06-10 7698
57 [re] [질문]HeightField에서 LOD는 안쓰시나요? 여치 2004-05-05 6905
56 [질문]HeightField에서 LOD는 안쓰시나요? [5] clever98 2004-05-05 4689
55 HTTP 에서 응답메세지중에 본문의 크기에 대한 부분이 나오지를 않습니다. [5] 바하무트 2004-03-23 8480
54 [re] 엔진 제작기간은? 여치 2003-12-09 5978
53 엔진 제작기간은? 답게 2003-12-08 7551
52 [re] 캐쉬 적중률 어떻게 측정해요?? file 여치 2003-11-06 5088
51 캐쉬 적중률 어떻게 측정해요?? ... 2003-11-06 6181
50 [re] 버텍스버퍼에 캐시를 사용한다는 말이 무슨말인지.. [3] 여치 2003-10-30 6021
49 버텍스버퍼에 캐시를 사용한다는 말이 무슨말인지.. ario 2003-10-28 5715
48 컴과 내 인생 여치 2003-09-24 4944
47 [질문]열혈피구 [5] hongiro 2003-09-03 5618
46 [re] 엔진 버전업에 관해 [1] 여치 2003-08-28 6486
45 엔진 버전업에 관해 [1] 답게 2003-08-26 8199
» [re] 오랜만에 질문 하나 드립니다~ [1] 여치 2003-08-08 7193



XE Login

天安門大屠殺 六四天安門事件 反右派鬥爭 大躍進政策 文化大革命 六四天安門事件 The Tiananmen Square protests of 1989 天安門大屠殺 The Tiananmen Square Massacre 反右派鬥爭 The Anti-Rightist Struggle 大躍進政策 The Great Leap Forward 文化大革命 The Great Proletarian Cultural Revolution 人權 Human Rights 民運 Democratization 自由 Freedom 獨立 Independence 多黨制 Multi-party system 民主 言論 思想 反共 反革命 抗議 運動 騷亂 暴亂 騷擾 擾亂 抗暴 平反 維權 示威游行 法輪功 Falun Dafa 李洪志 法輪大法 大法弟子 強制斷種 強制堕胎 民族淨化 人體實驗 胡耀邦 趙紫陽 魏京生 王丹 還政於民 和平演變 激流中國 北京之春 大紀元時報 九評論共産黨 獨裁 專制 壓制 統一 監視 鎮壓 迫害 侵略 掠奪 破壞 拷問 屠殺 肅清 活摘器官 障テ社會 誘拐 買賣人口 遊進 走私 毒品 賣淫 春畫 賭博 六合彩 台灣 臺灣 Taiwan Formosa 中華民國 Republic of China 西藏 土伯特 唐古特 Tibet 達償ワ喇嘛 Dalai Lama 新疆維吾爾自治區 The Xinjiang Uyghur Autonomous Region free tibet