멀티플레이어 게임 프로그래밍 - 1장 연습문제

jh Seo·2022년 12월 4일
0
  1. 로컬 멀티플레이어 게임은 한 컴퓨터에 두 명 이상 플레이어가 붙어서 플레이하는 게임을 말하고,
    네트워크 멀티플레이어 게임은 둘 이상의 컴퓨터가 연결되어 세션을 이룬다는 점에서
    로컬 멀티플레이어 게임과 다르다.

    • 직렬포트를 이용해 컴퓨터와 컴퓨터를 연결하는 방법.
    • 모뎀을 통해 전화망을 이용하여 컴퓨터끼리 통신
    • LAN(근거리 통신망)을 활용한 방법
  2. 인터넷에서도 동일하게 랜에서 동작하게 하려면, 네트워크로 데이터를 전송하며 생기는 시간지연인
    레이턴시를 최소화시켜야한다.

  3. 머드게임이란 multi-user dungeon의 약자로 여러 플레이어가 가상공간에 동시에 접속하여
    즐기는 멀티플레이어 게임이다. 추후에 MMORPG게임으로 발전된다.

  4. 일반온라인게임은 접속 인원수를 제한하는 데 비해
    mmorpg게임은 하나의 게임 세션에 수천, 수만명의 플레이어가 동시에 접속한다.

  5. 데이터 전송에서의 중요도를 네 가지로 판단하였다.
    * 전달 미보장 데이터 - 별로 중요하지 않은 데이터
    * 전달 보장 데이터 - 수신이 보장되며 순서대로 도착하는것도 보장되어야 하는 데이터
    * 최신 상태 데이터 - hp나 총알 수 처럼 최신상태가 중요한 데이터
    * 특급 전달 보장 데이터 - 최우선으로 보장해야하는 데이터, 플레이어의 위치변화 등

    데이터를 보낼 때. 연결관리자에서 배달 상태를 통지(DSN)를 보장한다.
    따라서 스트림관리자에서 연결관리자에 패킷을 꾸려 보낸 후, 배달상태를 상위 관리자들에게
    알려준다.

  6. 고스트 관리자는 클라이언트에 객체 정보를 보낼 때 우선순위를 둔다.
    반드시 파악해야하는 정보들은 높은 우선순위를 부여하고, 알아두어야 하는 정보는 후순위로 밀려난다.
    고스트 관리자는의 전송순서는 일차로 객체의 상태가 변경된 것부터 앞에 두고, 고스트레코드 자체의 우선순위에 따라서 순서를 나열하여 전달한다.

  7. 에이지오브 엠파이어에서는 p2p형태의 토폴로지를 사용하는데 문제점은 어떤 플레이어가 명령을 입력하면 나머지 모든 플레이어에게 동일한 명령이 동시에 처리되야한다.
    동시에 일어나지않으면 시뮬레이션이 어긋나기 시작한다.
    따라서 턴타이머를 정해두고 일정 시간동안 명령들을 쌓아놓고 한번에 처리하는 방식을 채택하였다.

    p2p모델에선 개개인의 유닛의 정보를 전부 보내는 것보다 명령만 전달을 하여 대역폭 관리를 수월하게 한다.

profile
코딩 창고!

0개의 댓글