KR20070016294A - 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법 - Google Patents

클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법 Download PDF

Info

Publication number
KR20070016294A
KR20070016294A KR1020050070687A KR20050070687A KR20070016294A KR 20070016294 A KR20070016294 A KR 20070016294A KR 1020050070687 A KR1020050070687 A KR 1020050070687A KR 20050070687 A KR20050070687 A KR 20050070687A KR 20070016294 A KR20070016294 A KR 20070016294A
Authority
KR
South Korea
Prior art keywords
game
movement
motion
acceleration
attribute
Prior art date
Application number
KR1020050070687A
Other languages
English (en)
Other versions
KR100773782B1 (ko
Inventor
박재철
박성일
나성운
장재옥
Original Assignee
엔에이치엔(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔에이치엔(주) filed Critical 엔에이치엔(주)
Priority to KR1020050070687A priority Critical patent/KR100773782B1/ko
Publication of KR20070016294A publication Critical patent/KR20070016294A/ko
Application granted granted Critical
Publication of KR100773782B1 publication Critical patent/KR100773782B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Health & Medical Sciences (AREA)

Abstract

본 발명은 온라인 게임 시스템에 있어서, 게임 클라이언트간의 게임 플레이 데이터를 보정하기 위한 방법 및 그 시스템에 관한 것이다.
본 발명은 다른 클라이언트 사용자가 제어하는 오브젝트의 운동 속성을 오브젝트에 고유한 고유 운동, 등속운동, 가속도 운동등으로 운동 속성별로 분류하고, 이를 감지하여, 현재 오브젝트의 위치, 방향, 속도를 기초로 하여, 데이터 지연보다 짧은 주기로 상기 오브젝트의 이동 위치를 예측하여 보상한다.
본 발명의 전술한 구성에 의하여, 데이터 송수신 지연이 있는 경우에도 원활한 게임 플레이 화면을 제공한다.
오브젝트, 서버, 클라이언트, 게임 플레이 데이터 패킷

Description

클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템 및 그 방법 {System for compensating game play data among client system and method thereof}
도 1은 종래 기술에 있어서 게임 플레이 데이터의 출력을 도시한 도면이다.
도 2는 본 발명이 적용될 수 있는 피어 투 피어 구조를 도시한 개략도이다.
도 3는 본 발명이 적용될 수 있는 서버-클라이언트 구조의 네트워크를 도시한 개략도이다.
도 4는 본 발명이 적용될 수 있는 슈퍼 피어 네트워크 구조를 도시한 개략도이다.
도 5는 본 발명의 실시예에 따른 게임 플레이 데이터 보정 시스템의 구성을 도시한 블록도이다.
도 6은 본 발명의 실시예에 따른 오브젝트 모션 보상부의 상세 구성을 도시한 블록도이다.
도 7은 본 발명의 실시예에 따른 오브젝트 운동 속성을 구체적으로 설명하기 위한 도면이다.
도 8은 본 발명의 실시예에 따른 오브젝트 위치 보상을 설명하는 도면이다.
도 9는 본 발명의 실시예에 따른 게임 플레이 데이터의 보정 방법을 도시한 흐름도이다.
도 10은 본 발명의 실시예에 따른 오브젝트 위치 보상 방법을 도시한 흐름도이다.
본 발명은 온라인 게임에 있어서, 클라이언트 사이에서 교환되어 공유되는 게임 플레이 데이터를 보정하는 시스템 및 방법에 관한 것이다.
더욱 상세하게는, 온라인 게임에 있어서, 클라이언트 시스템 사이에서 발생하는 지연에 의하여 발생하는 게임 플레이 데이터의 끊김이나, 워프(warp)등의 문제를 해결하여, 유연한 게임 플레이 데이터를 출력하는 시스템 및 방법에 관한 것이다.
온라인 게임은 다수의 사용자가 유무선 통신이나 인터넷을 통해 서버나 다른 컴퓨터에 접속하여 즐기는 게임이다. 네트워크로 연결된 컴퓨터는 지연과 대역폭이라는 한계적 특성이 수반되며, 이러한 네트워킹 기술은 원하는 게임을 적절한 품질로 제공하는 것을 목적으로 하고 있다.
도 1은 종래 기술에 있어서 게임 플레이 데이터의 출력을 도시한 도면이다.
클라이언트 시스템(200, 210)은 서버를 통하여 또는 직접 연결되어, 게임 플레이 데이터 패킷을 교환함에 의해 온라인 게임을 진행한다.
하지만, 네트워크 사이에서 전송로의 품질, 데이터 처리 능력, 대역폭 등에 의해 지연이 발생하는 것은 피할 수 없다.
클라이언트 시스템(200)이 제어하는 캐릭터 오브젝트(10)가 화살표 방향으로 이동하는 경우, 이러한 오브젝트 이동 정보는 클라이언트 시스템(210)으로 전송되어진다.
전체적으로 클라이언트 시스템간의 게임 플레이 데이터의 동기는 이루어져야 하지만 전술한 바와 같이, 네트워크에서는 필수적으로 데이터 교환의 지연이 발생하게 된다.
따라서 이러한 지연이 과도하게 발생하는 경우에는 클라이언트 시스템(210)에서, 캐릭터 오브젝트(10)는 중간 이동 데이터를 수신하지 못하고 게임 플레이 패킷을 수신하는 경우에는 자연스러운 움직임을 보여주지 못하고 위치가 크게 변하는 동작 끊김 또는 워프(warp) 현상을 보이게 된다.
이러한 동작 끊김 또는 워프 현상이 발생하는 경우에는, 특히 고속 판단과 응답이 필요한 액션 온라인 게임에서는 게임의 흥미를 떨어뜨리는 치명적인 문제점이 된다.
한편, 종래 기술에 있어서는 이러한 끊김을 막고 동기화를 위하여, 자신의 클라이언트 시스템에 대한 명령 자체에 지연을 주는 방법 또는 게임 전체 플레이에 지연을 주는 방법, 허용 오차 내에서 움직임 예측을 수행하는 기술 등이 제안되고 있다.
그러나 순간적인 판단 등이 중요한 액션 게임에서는 이러한 플레이의 지연은 게임의 흥미를 반감시키며, 오브젝트 특성을 고려하지 않은 움직임 예측은 잘못된 게임 결과 또는 오브젝트 충돌 등의 문제를 발생시키는 문제점을 여전히 가지고 있다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위하여, 게임 클라이언트간의 지연에 의해 발생하는 동작 끊김 또는 워프현상을 감소시킬 수 있는 시스템 및 방법을 제공한다.
또한, 본 발명은 오브젝트의 운동 속성에 따라 게임 플레이에 잘못된 영향을 미치지 않으며 신속하고 자연스러운 게임 플레이를 제공하는 시스템 및 방법을 제공한다.
전술한 본 과제를 해결하기 위하여, 본 발명의 특징에 따른 게임 플레이 데이터를 보정하는 시스템은, 게임에 필요한 오브젝트를 저장하는 오브젝트 저장 모듈; 상기 오브젝트의 이동에 발생하는 가속도가 반영된 운동 속성을 감지하는 가속도 감지 모듈; 상기 오브젝트의 이동 방향을 감지하는 운동 방향 감지 모듈; 상기 클라이언트가 송수신하는 게임 플레이 데이터 패킷의 지연 시간을 측정하는 핑속도 계산 모듈; 상기 가속도가 감지된 오브젝트의 현재 시각, 위치, 방향, 속도에 기초하여, 상기 지연 시간보다 짧은 주기로 상기 오브젝트의 이동을 상기 가속도가 반영된 이동 위치로 보상하는 오브젝트 모션 보상부; 및 상기 보상된 오브젝트의 이동을 출력하는 게임 화면 출력부를 포함한다.
또한 본 발명의 특징에 따른 게임 플레이 데이터 보정 방법은, a) 게임에 참 여한 클라이언트사이에 교환된 데이터의 지연 시간을 측정하여 저장하는 단계; b) 현재 게임상에 등장하는 오브젝트의 시간, 속도, 방향, 위치를 판독하여 저장하는 단계; c) 상기 오브젝트가 이동중인 경우, 상기 오브젝트의 운동 속성을 검색하는 단계; d) 상기 검색된 운동 속성이 제어 불가 고유 운동, 가속도 운동, 순간 반전 가능 운동인지를 판단하는 단계; 및 e) 상기 오브젝트의 시간, 속도, 방향, 위치 및 상기 단계 d)의 판단의 결과에 따라 상이한 방법으로 오브젝트의 위치 보상을 수행하는 단계를 포함한다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다. 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.
이제 본 발명의 실시예에 따른 게임 플레이 데이터 보정 방법 및 시스템에 대하여 도면을 참고로 하여 상세하게 설명한다.
도 2는 본 발명이 적용될 수 있는 피어 투 피어 구조를 도시한 개략도이다.
피어 투 피어 구조는 모든 컴퓨터가 동일한 권한을 가지는 평등 구조로 클라이언트는 모든 입력 정보를 호스트를 포함한 모든 컴퓨터 전송한다. 플레이어는 네트워크 상에서 상대방을 찾아 두 플레이어가 연결되며 다른 컴퓨터의 도움없이 게 임을 진행한다.
이때, 게임 플레이어들은 게임을 제공하는 게임서버내의 채널 서버에서 같은 채널에서 게임방을 형성하고, 게임방이 형성되면, 피어 투 피어의 네트워크를 구성하게 된다. 이러한 피어 투 피어의 구조는 모든 컴퓨터가 호스트의 기능을 수행하며, 다른 클라이언트에 직접적인 게임 데이터 전송이 가능하여, 원활한 게임 운영이 가능한 장점이 있다. 그러나, 이러한 피어 투 피어 방식에서는 참가자수의 제한이 있으며, 클라이언트중 하나라도 원하는 성능에 미치지 못하면 전체 게임의 랙이 발생하는 문제점이 존재한다.
또한, 클라이언트의 IP 주소가 가상 IP의 경우에는 피어 투 피어 방식의 게임 네트워크 구성이 불가능하므로 게임 서비스 업체 입장에서는 게임 채널에 참여하는 플레이어에 대해 인스턴트 형식의 게임방 제공이 어려우므로, 소규모 네트워크에서 게임을 운용하기에 적합한 구조이다.
도 3은 본 발명이 적용될 수 있는 서버-클라이언트 구조의 네트워크를 도시한 개략도이다.
클라이언트-서버 구조는 적어도 한대 이상의 서버(100)에 복수의 클라이언트(201, 202, 203)가 접속하여 게임을 진행한다. 클라이언트는 플레이어의 입력을 받아 서버로 전송하고 클라이언트로부터 오는 입력을 받아 입력에 해당하는 처리를 한 후 그 결과를 모든 클라이언트에 제공한다.
이러한 클라이언트-서버 구조는 다수의 클라이언트수가 접속을 제공하고, 게임공간의 영역분할, 진행 동기화, 게임 로직 갱신등이 용이하지만, 하나의 서버에 클라이언트가 너무 많이 접속 하는 경우에는 많은 부하로 인해 처리가 늦어지는 문제점이 존재한다.
또한, 여기서, 클라이언트(201, 202, 203)사이에는 실제적으로 데이터가 송수신되지 않고, 서버(100)가 데이터를 각각의 클라이언트에게 릴레이하는 구성을 취하기 때문에 플레이어의 즉각적인 컨트롤에 의해 게임의 승패가 좌우되는 액션형 게임보다는 대규모 인원이 특정 지역에 참여하는 MMORPG등의 게임에 적합하다.
도 4는 본 발명이 적용될 수 있는 슈퍼 피어 네트워크 구조를 도시한 개략도이다.
슈퍼 피어 구조는 클라이언트 시스템중 가장 성능이 좋은 클라이언트(200A)를 슈퍼 피어로서 선정하여, 슈퍼 피어가 게임 플레이중 발생하는 패킷을 다른 클라이언트에게 중개해준다.
전술한 바와 같이, 슈퍼 피어로서 선정된 클라이언트의 IP 어드레스(IP A)는 모든 클라이언트 시스템에 브로드 캐스팅되고, 슈퍼 피어가 아닌 클라이언트들은 게임 플레이중 발생한 패킷을 IP A를 목적지로 하여 전송한다.
실시간의 이벤트가 발생하는 액션 게임의 경우에는 모든 클라이언트들의 동기가 발생하도록 게임 플레이 패킷을 공유하여야 하기 때문에, 슈퍼 피어는 수신된 게임 플레이 패킷을 자신을 비롯한 소스가 아닌 다른 클라이언트들에게 모두 전송한다.
또한, 슈퍼 피어는 피어중의 하나로서 자신이 발생시킨 패킷 역시 다른 클라이언트에 전송한다.
즉, 슈퍼 피어는 네트워크를 구성하는 다른 피어에 관한 IP 주소를 모두 가지고 있으며, 다른 피어들은 단지 자신이 발생시킨 게임 플레이 패킷을 모두 슈퍼 피어의 IP 어드레스(IP A)로 전송하기만 하면 된다.
슈퍼 피어는 전송된 게임 플레이 패킷에 대해서, 전송주체가 아닌 모든 클라이언트에 전송한다. 또한, 슈퍼 피어 자신 역시 게임 클라이언트 중의 하나이므로 슈퍼 피어 자신이 발생시킨 게임 플레이 패킷을 모든 게임 클라이언트에 전송한다.
따라서, 슈퍼 피어에 해당하는 클라이언트는 게임 패킷을 중개하게 되고, 다른 클라이언트들은 단지 자신이 발생시킨 게임 플레이 패킷을 슈퍼 피어로 전송하거나, 슈퍼 피어로부터 전송되어온 게임 플레이 패킷을 자신의 클라이언트 프로그램에 적용하기만 하면 된다.
한편, 클라이언트 시스템이 호스트로서 기능하는 슈퍼 피어 구조를 구현하기 위해서, 본 발명의 실시예에서 사용되는 클라이언트에 설치된 게임 프로그램은 게임에 사용되는 오브젝트, 맵, 게임 알고리즘 모두를 저장하고 있으며, 게임 플레이시에는 오브젝트의 이동 좌표등의 적은 용량의 오브젝트 제어 정보만을 교환하여 신속한 게임을 운영하게 된다.
전술한 슈퍼 피어 구조는 앞서 설명한 서버-클라이언트 구조에 비해 부하와 필요 대역폭이 적기 때문에 처리 속도가 빠르므로, 고속 응답을 요구하는 액션게임등에서도 효과적으로 사용될 수 있다.
전술한 게임 네트워크 구조는 각각의 온라임 게임 네트워크를 구성하는 장단점을 보유하고 있지만, 각 클라이언트 사이에서 발생하는 데이터 전송 지연은 피할 수 없다. 이러한 데이터 전송 지연은 통상적으로 핑(ping)이라는 프로그램으로 테스트 하게 된다. 핑(ping)은 특정한 인터넷 주소가 있고, 또 그 주소가 요청을 받아들일 수 있는지를 확인해 주는 기본적인 인터넷 프로그램이다. 핑은 사용자가 접속하려고 시도하고 있는 호스트가 실제로 운영되고 있는지를 확인하는 진단 목적으로 사용된다.
한편, 핑은 이러한 호스트 운영확인 외에 상대방 컴퓨터와 자신의 컴퓨터 사이의 지연되는 속도값 역시 산출하기 때문에, 상기 데이터 전송 지연을 나타내는 지표로도 사용된다.
본 발명의 명세서에서는 상기 지연 속도값을 핑 또는 핑속도로 칭하기로 한다.
도 5는 본 발명의 실시예에 따른 게임 플레이 데이터 보정 시스템의 구성을 도시한 블록도이다.
본 발명의 게임 플레이 데이터 보정 시스템(100)은, 개별 클라이언트 시스템에 설치되며, 오브젝트 저장 모듈(110), 가속도 감지 모듈(120), 운동 방향 감지 모듈(130), 핑계산 모듈(140), 인터페이스 모듈(150), 오브젝트 모션 보상부(160), 게임 화면 출력부게임 알고리듬 모듈(170), 게임 화면 출력부(180)를 포함한다.
오브젝트 저장 모듈(110)은, 게임 플레이 필요한 오브젝트에 관한 정보를 저장한다. 상기 오브젝트는 맵, 건물, 캐릭터, 아이템 등의 오브젝트를 완성된 형태로 저장하여, 게임 플레이를 위한 명령 데이터만 교환되는 경우, 게임이 진행되게끔 되는 것이 바람직하다.
또한, 상기 오브젝트에는 운동 또는 이동에 있어서 고유한 속성이 존재하는 경우에는 이에 대한 운동 속성 식별자를 할당하여 저장하는 것이 바람직하다. 예를 들어, 탄환등은 일단 명령이 내려진 후에는 제어가 불가능한 등속 직선운동을 하며, 수류탄 등은 일단 명령이 내려진 후에는 정해진 방향으로 포물선의 자유 낙하 운동을 하므로, 이러한 운동 속성에 대한 식별자를 오브젝트와 매칭시켜 저장하는 것이 가능하다.
가속도 감지 모듈(120)은 오브젝트의 이동 명령이 있는 경우, 현재 상태에 따른 가속도가 반영된 운동 속성을 감지하게 된다. 가속도 감지 모듈(120)은 오브젝트의 정확한 가속도를 감지할 수도 있지만, 단지 가속도 운동의 속성만 분류하여 감지하는 것도 가능하다. 즉, 자유 낙하 운동의 경우 중력 가속도에 따른 속도를 산출할 수도 있지만, 단지 운동 방향을 180도 급반전할 수 없는 반전 불가 가속도 운동으로 분류할 수 있다. 또한, 마찰력이 낮은 빙판을 질주 하는 경우 또는 부스터를 사용하여 공중으로 상승하는 경우 역시 반전 불가 가속도가 반영된 운동속성으로 분류할 수 있다.
운동 방향 감지 모듈(130)은 오브젝트의 운동 방향을 감지하여 이동 위치의 보상시에 데이터를 제공한다. 운동방향은 현재 오브젝트의 위치를 기준으로 이동 명령을 내린 방향 또는 탄환을 발사한 방향을 측정하면 감지할 수 있으며, 위치 데이터의 보상은 상기 감지된 방향을 기초로 이루어진다.
핑 계산 모듈(140)은 전술한 핑속도 값을 계산한다. 핑속도 값이 소정치 이상으로 지연되는 경우에는 더 짧은 주기로 게임 플레이 데이터의 보정이 이뤄진다.
인터페이스 모듈(150)은, 서버 또는 다른 피어와 통신을 수행하며, 게임이 플레이 데이터를 수신한다. 또한, 상기 데이터 통신과 아울러 핑(ping) 속도값 측정을 통해 데이터 전송 지연값을 획득한다.
오브젝트 모션 보상부(160)는 전술한 가속도 감지 정보, 운동 방향 감지 정보, 핑 속도값을 기초로 하여 오브젝트의 이동 위치를 보상한다. 즉, 오브젝트의 현재위치 및 운동에 관한 정보를 기초로 하여, 상기 핑 속도값에 발생하는 지연 구간에 미리 예측된 위치로 오브젝트를 이동시키고 이를 화면상에 출력하게 된다. 오브젝트 모션의 보상에 대한 구체적인 방법은 후술하도록 한다.
게임 화면 출력부(170)는 전술한 위치 보상된 오브젝트 또는 수신된 게임 플레이 데이터에 의해 제어된 오브젝트를 게임 플레이 상에 배치함으로서 연속적인 게임 플레이 화면을 출력하게 된다.
도 6은 본 발명의 실시예에 따른 오브젝트 모션 보상부의 상세 구성을 도시한 블록도이다.
전술한 오브젝트 모션 보상부(160)는, 가속도 산출부(161), 마찰력 산출부(162), 고유 운동 검출부(163), 시간 저장부(166a), 속도 저장부(166b), 방향 기록부(166c), 위치 기록부(166d), 핑정보 저장부(164), 오브젝트 위치 예측부(165)를 포함한다.
여기서, 현재 오브젝트의 시간, 속도, 방향, 위치에 관한 정보는 현재 오브젝트 정보 기록부(166)에 저장된다.
가속도 산출부(161)는 가속도 감지 모듈(120)에서 가속도가 있는 오브젝트의 움직임을 검출하면, 그 가속도 값을 산출하게 된다. 상기 가속도 산출부(161)는 운동 형태에 따라 다양한 가속도 값을 저장하고 있으며, 현재의 오브젝트 운동 속성에 적합한 가속도를 이용하여 이동할 거리를 계산하게 된다.
예를 들어 가속도 산출부(160)는, 자유 낙하 가속도, 부스터를 이용한 상승 가속도등에 대하여 적절한 가속도 값을 가지게 된다.
마찰력 산출부(162)는, 현재 이동하는 오브젝트가 받는 마찰력 값을 저장하고 있으며, 상기 마찰력값을 오브젝트의 속도에 반영한다. 상기 마찰력은 일반 노면, 빙판 노면, 수중등 캐릭터 오브젝트의 상황에 의해 결정된다.
고유 운동 검출부(163)는, 특정 시간동안은 사용자의 제어에 의해서도 속도나 방향이 변하지 않는 고유 운동의 오브젝트를 검출하게 된다. 이러한 오브젝트는 사전에 이미 정해질 수 있으며, 오브젝트의 운동속성 식별자를 통해 용이하게 검출할 수 있다. 이러한 고유 운동의 오브젝트는 탄환이나, 수류탄, 움직이는 건축물등이 그 대상이 될 수 있다.
현재 오브젝트 정보 기록부(166)는 현재 오브젝트의 위치에 대한 시간과 속도, 방향, 위치를 기록한다. 시간 저장부(166a)는 현재 시간을 기록하며, 속도 저장부(166b)는 현재 오브젝트의 속도를 저장한다. 상기 속도 정보는 실질적으로 게임상에서 설정되거나, 사용자 명령에 의해 발생한 단위 시간당 이동 픽셀에 관한 정보이다.
방향 기록부(166c)는 사용자의 명령에 의해 현재 시각에 이동하는 방향 또는 중력에 의해 오브젝트가 이동하는 방향에 대한 정보를 기록한다. 위치 기록부 (166d)는 현재 시각의 오브젝트 위치 좌표를 기록한다.
상기 오브젝트 정보는 위의 4가지 요소를 개별적으로 관리할 수도 있지만, 벡터의 형태로 정보를 저장할 수도 있으며, 2D 게임의 경우에는 X, Y 축에 대한 단위 시간당 픽셀개수를 각각의 속도 정보로서 저장할 수 있다. 실질적으로 온라인 게임은 고속으로 진행되므로, 상기 정보 요소들은 명령에 대한 정보를 인식하고 갱신되는 순간 동안 일시 저장된다.
핑정보 저장부(164)는 게임상에서 등장하는 다른 클라이언트 들의 핑속도값을 저장한다. 상기 핑속도값은 네트워크 환경에 의해 변경될 수도 있으므로 미리 정해진 주기로 갱신도 가능하다.
오브젝트 위치 예측부(165)는 핑 속도값보다 짧은 주기를 이용하여 상기 가속도값, 마찰력값, 고유 운동의 속도값을 이용하여 다른 클라이언들의 오브젝트 위치를 예측하여 출력한다.
여기서, 전술한 가속도, 마찰력, 고유 운동 여부등은 반드시 모두 예측에 고려될 필요는 없으며, 오브젝트의 운동 속성의 요소로서 적어도 한 가지 이상만 고려하여도 본 발명의 기술 사상에서 벗어나는 것은 아니다.
도 7은 본 발명의 실시예에 따른 오브젝트 운동 속성을 구체적으로 설명하기 위한 도면이다.
다른 클라이언트의 오브젝트(30)는 여러 가지 운동속성과 방향으로 이동할 수 있다. 여기서, 높은 곳에서 낙하는 자유 낙하운동(B)의 경우에는 일정한 가속도로 낙하하므로, 미리 설정된 가속도를 현재 위치와 방향에 고려하여 오브젝트 움직 임을 예측할 수 있다.
한편, 오브젝트(30)가 부스터 등을 이용하여 상승하는 설정인 경우에는 부스터 사용시 발생하는 가속도를 현재 위치와 방향에 고려하여 오브젝트의 움직임을 예측하게 된다.
여기서, 상기 가속도는 반드시 물리학적으로 정해진 가속도로 한정되지 않으며, 게임 개발자의 역량이나 기획에 의해 등속도 운동으로 설정하는 것도 가능하다.
그러나, 상기 가속도 운동의 경우에는 다른 클라이언트의 사용자의 명령에 의해 순간적으로 반대방향으로 움직이기 어려운 운동이라는 공통적인 속성을 갖게 된다.
한편, 마찰력이 높은 노면을 질주하는 경우(C)에는 다른 클라이언트 사용자의 명령에 의해 순간적으로 반대방향으로 움직이는 것이 가능하기 때문에 이러한 오브젝트 이동 예측에 따른 보상을 선택적으로 사용하는 것이 가능하다. 이는 마찰력 정보를 산출하여 빙판과 같은 마찰력이 낮은 노면을 위를 질주하는 경우에는 전술한 바와 같이, 가속도를 고려한 오브젝트 이동 예측이 이용될 수 있다.
한편, 오브젝트(30)가 이미 발사한 탄환과 같은 경우(D)에는 고유 운동의 하나로서 등속 직선운동을 하며, 이는 클라이언트 사용자에 의해 운동 방향 및 속도등이 제어가 불가능하므로, 본 발명에 따른 오브젝트 이동 예측을 활용하는 것이 바람직하다.
도 8은 본 발명의 실시예에 따른 오브젝트 위치 보상을 설명하는 도면이다.
핑속도 값에 따라서, 오브젝트는 시점(K-1)에서 시점(K)에서 이동 위치가 변화하게 된다. 여기서, 상기 핑속도에 의한 지연이 짧은 경우에는 자연스럽게 오브젝트는 이동하게 되나, 핑속도에 의한 지연이 긴 경우에는 오브젝트는 순간적으로 긴 거리를 이동하게 된다.
한편, 본 발명에서는 상기 핑속도값보다 짧은 주기마다 오브젝트의 이동 위치를 예측하여 움직임을 보상한다. 여기서는 현재 시점(K-1)에서의 오브젝트의 방향, 위치, 속도의 값을 기초로 하여 전술한 바와 같이, 가속도, 마찰력, 고유 운동 여부를 고려하여 위치 보상을 수행한다.
만약, 현재 시점(K-1)에서, 오브젝트가 중력에 의한 포물선 운동을 수행하는 경우에는 X 방향으로는 등속운동, Y 방향으로는 자유 낙하 운동을 고려하여 클라이언트의 위치를 보정하게 된다.
전술한 바와 같이, 자유 낙하 운동의 경우에는 반드시 가속도 운동으로 이동 위치를 예측할 필요는 없으며, 연산량을 줄이기 위해 등속운동으로 이동 위치를 예측할 수 도 있다. 즉, 본 발명에서는 가속도 검출부가 상기 자유 낙하 운동에 의해 오브젝트의 움직임이 순간적으로 반전되어 예측 위치와 이격되지 않는다는 정보만을 고려하여 오브젝트의 위치 이동을 보상하는 것 역시 가능하다.
도 9는 본 발명의 실시예에 따른 게임 플레이 데이터의 보정 방법을 도시한 흐름도이다.
단계(S110)에서, 게임 클라이언트 시스템은 게임에 참여하는 다른 클라이언트와의 데이터 교환에 있어서 발생하는 핑속도 측정하고 이를 저장한다.
한편, 게임 플레이중 발생하는 오브젝트, 특히 다른 클라이언트의 제어하에 있는 오브젝트는 실시간적으로 그 시간, 속도, 방향, 위치를 판독한다(S120). 실제적으로 오브젝트의 이동 및 위치 정보는 게임 플레이중에서 자동 생성 및 인식되는 것으로서 게임 플레이 데이터를 수신할 때마다 새로운 데이터로 갱신된다.
게임 플레이 데이터를 수신하여, 각각의 오브젝트가 이동하게 되면 위치가 이동된 오브젝트에 대하여 오브젝트 운동 속성을 검색하게 된다(S130). 상기 오브젝트 운동 속성은 오브젝트 자체에 고유한 속성, 사용자의 제어에 의해 발생된 속성, 그리고 오브젝트가 주위의 환경에 의해 발생하는 속성을 포함한다.
예를 들어, 상대편 캐릭터가 발사한 탄환은 정해진 방향으로 등속운동 속성을 가지므로 오브젝트 자체에 고유한 운동속성을 가진다. 한편, 캐릭터의 오브젝트는 사용자의 제어에 등속 운동 또는 가속도 운동을 수행한다. 또한, 캐릭터의 오브젝트가 자유 낙하등을 하는 경우에는 주위의 환경에 운동속성이 발생하게 된다.
단계(S140)에서는, 이러한 오브젝트의 운동 속성이 제어 불가능인 고유운동인지를 판단한다. 만약, 제어 불가의 고유 운동의 경우에는 핑속도 지연에 따른 오브젝트의 위치 보상을 수행한다(S170). 위치 보상은 전술한 바와 같이, 현재의 시간, 속도, 방향, 위치를 기준으로 하여 핑속도값보다 짧은 주기로 오브젝트 이동방향을 예측하여 게임 플레이 데이터로서 출력한다. 단계(S170)에서 이뤄지는 보상은 실질적으로 오브젝트의 자체 속성으로 결정되기 때문에, 위치 예측은 실질적으로 해당 오브젝트에 대해 미리 정해진 게임 알고리듬에 따라 클라이언트가 게임 플레이 데이터를 독립적으로 생성하는 것과 유사하다.
한편, 단계(S150)에서는 오브젝트의 운동 속성이 가속도 운동인지를 판단한다. 만약, 가속도 운동인 경우에는 게임 구현에서 설정된 가속도에 따라서 오브젝트 위치 보상을 수행한다. 위치 보상은 전술한 바와 같이, 현재의 시간, 속도, 방향, 위치를 기준으로 하여 핑속도값보다 짧은 주기로 오브젝트에 상기 가속도를 적용하여 이동위치를 산출한다.
단계(S160)에서는, 가속도 운동이 아닌 경우 오브젝트의 운동 속성이 순간적으로 반대방향으로 가능한 운동 속성을 가지는지 판단한다. 이러한 운동 속성은 예를 들어, 마찰력이 있는 노면 질주 상태가 있으며, 캐릭터가 위치한 환경에 설정된 마찰력에 관한 정보를 통해 식별이 가능하다.
여기서, 순간 반전 가능한 운동 속성을 가진 것이 아닌 경우에는 핑속도 지연에 따른 오브젝트의 위치 보상을 수행한다(S171). 상기 보상은 현재의 시간, 속도, 방향, 위치를 기준으로 하여 핑속도값보다 짧은 주기로 오브젝트에 현재 속도에 기초한 위치를 예측함으로써 이뤄진다.
전술한 단계(S150, S160)는 각각 가속도 운동 및 순간 반전 가능 운동의 여부를 판단하는 구성에 대해서 설명한 것이지만, 연산량을 줄이기 위해서 둘 중 하나의 판단만 수행하여도 본 발명의 범위에서 벗어나는 것은 아니다.
따라서, 여기서 가속도 운동 속성이라 함은 특정 수치의 가속도로 이동하는 운동뿐 아니라, 게임 설정상 사용자의 제어로 순간적으로 반대방향으로 이동할 수 없는 운동을 포함하는 개념이다.
단계(S170, S180, S171)에서 위치가 보상된 오브젝트는 다음 게임 플레이 패 킷이 도착하기전에 출력된다.
이후, 게임 플레이 패킷이 수신되면, 오브젝트의 위치는 수신된 패킷 정보에 따라 갱신된다(S200). 전술한 과정을 통하여, 게임 클라이언트 사이에 데이터 전송 지연이 존재하더라도 게임의 오브젝트는 자연스러운 움직임을 제공할 수 있게 된다.
도 10은 본 발명의 실시예에 따른 오브젝트 위치 보상 방법을 도시한 흐름도이다.
하나의 게임 플레이 화면에 있어서, 다른 클라이언트의 사용자에 제어에 의해 오브젝트의 위치이동이 발생하는 경우 순간 이동 방향을 확인하고 이를 저장한다(S300).
또한, 클라이언트 사용자의 명령, 이동 오브젝트의 운동 속성, 이동 오브젝트의 환경에 의해 발생된 이동 속도를 측정하여 저장한다(S310).
또한, 현재 위치, 즉 위치 보상의 대상이 될 기준 좌표 정보를 확인하고 저장한다(S320).
전술한 위치, 방향, 속도는 현재 시각즉, 게임 플레이 패킷을 수신한 시간과 대응되어 저장된다. 여기서, 방향, 속도, 위치는 벡터형태로 저장될 수 있다. 또는 방향 및 속도는 X , Y 좌표 각각에 대해 시간당 이동 픽셀(pixel)수를 이용하여 저장할 수도 있다.
단계(S330)에서는 핑속도에 따른 지연 시간을 계산한다. 여기서, 핑속도가 임계치 이상으로 지연이 큰 경우에는 오브젝트의 위치 보정을 결정한다. 오브젝트 의 위치 보정 주기는 상기 핑속도보다 짧은 주기동안 이루어진다.
단계(S340)에서는, 오브젝트의 운동 속성에 따른 보정을 수행하고, 상기 보정에 의한 이동 좌표를 계산한다. 여기서, 각각의 오브젝트는 다양한 운동속성을 가지고 있으며, 이는 오브젝트 운동 속성 식별자를 이용하면 용이하게 위치 보정에 사용할 수 있다.
상기 오브젝트 운동 속성 식별자는, 오브젝트 자체 속성, 사용자의 명령에 의한 운동 속성, 오브젝트의 환경 또는 상황에 의해 발생하는 운동 속성을 포함한다.
전술한 운동 속성을 정의하는 경우의 수는 복수이지만, 상기 오브젝트 운동 속성 식별자는 제어 불가 고유 운동, 가속도 운동, 반전 불가/가능 운동등으로 그 상태의 수는 한정되므로, 많은 연산량을 필요로 하지 않는다.
또한, 실질적으로 상기 데이터 전송 지연에 의해 발생하는 게임의 끊김 현상은 사용자의 시각으로 인식하기 힘든 경우도 많기 때문에, 상기 오브젝트 운동 속성 부여를 위한 연산량을 줄이기 위해, 반전 불가/가능 운동만으로 구별하는 것 역시 본 발명의 범위에 포함된다 할 것이다.
전술한 과정에 의해, 계산된 좌표는 미리 설정된 보상 주기에 따라, 오브젝트를 각각의 클라이언트마다 출력하게 된다(S350).
여기서, 도 5 내지 도 10에 도시된 시스템 및 방법은 그 기능을 구현하는 프로그램이 컴퓨터가 읽기 가능한 기록 매체에 저장되어 다른 클라이언트 시스템 또는 게임 서버 시스템과 연동하여 동작이 가능하다.
이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
전술한 본 발명의 구성에 의하여, 네트워크상의 데이터 전송 지연에 의해 발생하는 게임 오브젝트 움직임의 끊김 또는 워프 현상을 개선할 수 있다.또한, 본 발명은 오브젝트의 운동 속성을 고려하여 위치 보상을 수행함으로써, 오브젝트 이동 예측에 의해 발생하는 동작 끊김과 워프 현상도 효과적으로 보상할 수 있다.

Claims (16)

  1. 온라인 게임에 참여한 클라이언트간의 게임 플레이 데이터를 보정하는 시스템에 있어서,
    게임에 필요한 오브젝트를 저장하는 오브젝트 저장 모듈;
    상기 오브젝트의 이동에 발생하는 가속도가 반영된 운동 속성을 감지하는 가속도 감지 모듈;
    상기 오브젝트의 이동 방향을 감지하는 운동 방향 감지 모듈
    상기 클라이언트가 송수신하는 게임 플레이 데이터 패킷의 지연 시간을 측정하는 핑속도 계산 모듈;
    상기 가속도가 감지된 오브젝트의 현재 시각, 위치, 방향, 속도에 기초하여, 상기 지연 시간보다 짧은 주기로 상기 오브젝트의 이동을 상기 가속도가 반영된 이동 위치로 보상하는 오브젝트 모션 보상부; 및
    상기 보상된 오브젝트의 이동을 출력하는 게임 화면 출력부
    를 포함하는 게임 플레이 데이터 보정 시스템.
  2. 제 1 항에 있어서,
    상기 오브젝트 모션 보상부는,
    상기 오브젝트의 가속도를 산출하는 가속도 산출부;
    상기 오브젝트가 영향을 받는 마찰력을 산출하는 마찰력 산출부;
    상기 오브젝트에 고유한 운동을 하는지 검출하는 고유 운동 검출부; 및
    상기 가속도, 마찰력, 고유 운동 여부중 적어도 하나를 기초로 하여, 오브젝트의 이동 위치를 예측하는 오브젝트 위치 예측부
    를 포함하는 게임 플레이 데이터 보정 시스템.
  3. 제 2 항에 있어서,
    상기 오브젝트 모션 보상부는,
    현재 오브젝트의 시간, 속도, 방향, 위치에 관련된 정보를 저장하는 현재 오브젝트 정보 저장부; 및
    가장 최근에 갱신된 핑속도 정보를 저장하는 핑속도 저장부를 더 포함하는 게임 플레이 데이터 보정 시스템.
  4. 제 1 항에 있어서,
    상기 가속도 산출부는, 클라이언트 사용자의 명령 및 상기 오브젝트의 게임상의 상황에 의해 발생한 가속도를 산출하는 게임 플레이 데이터 보정 시스템.
  5. 제 1 항에 있어서,
    상기 고유 운동 검출부는 클라이언트 사용자에 의해 방향 전환이 가능한 운동과 방향 전환이 불가능한 운동을 구별하는 검출하는 게임 플레이 데이터 보정 시스템.
  6. 제 1 항에 있어서,
    상기 가속도 산출부 및 마찰력 산출부는 통합되어 최종 가속도를 산출하는 게임 플레이 데이터 보정 시스템.
  7. 제 1 항 내지 제 6 항중 어느 하나의 항에 있어서,
    상기 운동 속성은 클라이언트 사용자에 의해 순간적으로 진행 방향의 반대방향으로 이동할 수 없는 속성을 의미하며, 상기 운동 속성은 오브젝트 자체에 부여되거나 게임 플레이중에 생성되어 해당 오브젝트에 부여되는 게임 플레이 데이터 보정 시스템.
  8. 온라인 게임 중 발생하는 게임 플레이 데이터의 보정 방법에 있어서,
    a) 게임에 참여한 클라이언트사이에 교환된 데이터의 지연 시간을 측정하여 저장하는 단계;
    b) 현재 게임상에 등장하는 오브젝트의 시간, 속도, 방향, 위치를 판독하여 저장하는 단계;
    c) 상기 오브젝트가 이동중인 경우, 상기 오브젝트의 운동 속성을 검색하는 단계;
    d) 상기 검색된 운동 속성이 제어 불가 고유 운동, 가속도 운동, 순간 반전 가능 운동인지를 판단하는 단계; 및
    e) 상기 오브젝트의 시간, 속도, 방향, 위치 및 상기 단계 d)의 판단의 결과에 따라 상이한 방법으로 오브젝트의 위치 보상을 수행하는 단계
    를 포함하는 게임 플레이 데이터 보정 방법.
  9. 제 8 항에 있어서,
    상기 단계 e)는,
    상기 검색된 운동 속성이 제어 불가 고유 운동인 경우, 상기 지연 시간보다 짧은 주기로 상기 오브젝트를 현재 진행 방향으로 상기 고유 운동에 대응하는 속도로 이동시켜 위치를 보상하는 게임 플레이 데이터 보정 방법.
  10. 제 8 항에 있어서,
    상기 단계 e)는,
    상기 검색된 운동 속성이 가속도 운동인 경우, 상기 지연 시간보다 짧은 주기로 상기 오브젝트를 현재 진행 방향으로 상기 가속도를 반영하여 이동시켜 위치를 보상하는 게임 플레임 데이터 보정 방법.
  11. 제 8 항에 있어서,
    상기 단계 e)는,
    상기 검색된 운동 속성이 순간 반전이 불가능한 운동인 경우에는, 상기 지연 시간보다 짧은 주기로 상기 오브젝트의 현재 진행 방향으로 현재 속도로 이동시켜 위치를 보상하는 게임 플레이 데이터 보정 방법.
  12. 제 8 항 내지 제 11 항 중 어느 하나의 항에 있어서,
    f) 게임 플레이 패킷이 수신되면, 상기 보상된 오브젝트의 위치를 상기 게임 플레임 패킷에 결정되는 위치로 갱신하여 출력하는 단계를 더 포함하는 게임 플레이 데이터 보정 방법.
  13. 제 8 항 내지 제 11 항 중 어느 하나의 항에 있어서,
    상기 운동 속성은 오브젝트 자체에 부여된 운동 속성, 클라이언트 사용자의 명령에 의해 발생된 운동 속성, 오브젝트가 게임상의 환경에 의해 발생하는 운동 속성중 적어도 하나를 포함하는 게임 플레이 데이터 보정 방법.
  14. 온라인 게임중 발생하는 게임 플레이 데이터를 보정하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    제 8 항 중 제 11 항에 하나에 따른 방법에 포함된 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체
  15. 제 14 항에 있어서,
    게임 플레이에 필요한 오브젝트, 맵, 게임 알고리즘을 모두 저장한 상태에서 상기 오브젝트를 제어하는 패킷을 다른 클라이언트와 교환하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
  16. 제 15 항에 있어서,
    상기 오브젝트는 상기 운동 속성에 대응하는 운동 속성 식별자와 대응되도록 저장된 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
KR1020050070687A 2005-08-02 2005-08-02 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법 KR100773782B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050070687A KR100773782B1 (ko) 2005-08-02 2005-08-02 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050070687A KR100773782B1 (ko) 2005-08-02 2005-08-02 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법

Publications (2)

Publication Number Publication Date
KR20070016294A true KR20070016294A (ko) 2007-02-08
KR100773782B1 KR100773782B1 (ko) 2007-11-12

Family

ID=41636512

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050070687A KR100773782B1 (ko) 2005-08-02 2005-08-02 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법

Country Status (1)

Country Link
KR (1) KR100773782B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100964638B1 (ko) * 2007-07-23 2010-06-22 (주) 그라비티 비정상 접속종료에 따른 게임 캐릭터 제어방법, 장치 및기록매체
KR101670170B1 (ko) * 2015-04-21 2016-10-27 양원준 사용자 단말 및 그를 이용한 다중접속 온라인 게임의 위치 예측 방법
KR20190099681A (ko) * 2018-02-19 2019-08-28 (주)플레이솔루션 게임 엔진 기반 콘텐츠의 모션 시뮬레이터 연동을 위한 실시간 필터 방법
WO2022181887A1 (ko) * 2021-02-23 2022-09-01 (주)팀스노우볼 게임 ui 분석 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5079695A (en) * 1988-04-25 1992-01-07 Hewlett-Packard Company Object management facility which includes a snapshot facility for providing data transfer between two objects
KR20020091002A (ko) * 2001-11-06 2002-12-05 주식회사 와이어리스리퍼블릭 가속도 가공 장치 및 방법, 및 그의 응용 및 상기 방법을실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수있는 기록매체

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100964638B1 (ko) * 2007-07-23 2010-06-22 (주) 그라비티 비정상 접속종료에 따른 게임 캐릭터 제어방법, 장치 및기록매체
KR101670170B1 (ko) * 2015-04-21 2016-10-27 양원준 사용자 단말 및 그를 이용한 다중접속 온라인 게임의 위치 예측 방법
KR20190099681A (ko) * 2018-02-19 2019-08-28 (주)플레이솔루션 게임 엔진 기반 콘텐츠의 모션 시뮬레이터 연동을 위한 실시간 필터 방법
WO2022181887A1 (ko) * 2021-02-23 2022-09-01 (주)팀스노우볼 게임 ui 분석 방법

Also Published As

Publication number Publication date
KR100773782B1 (ko) 2007-11-12

Similar Documents

Publication Publication Date Title
US11654354B2 (en) Resolution-based scaling of real-time interactive graphics
JP7169338B2 (ja) ゲームコンテンツの同期表示に関する方法、装置およびコンピュータプログラム
CN102939139B (zh) 共享虚拟空间中便携式设备的校准
US10874943B2 (en) Systems and methods for transferring object authority in a shared virtual environment
KR102577903B1 (ko) 증강 현실 모바일 에지 컴퓨팅
Liu et al. A survey and taxonomy of latency compensation techniques for network computer games
US20170193710A1 (en) System and method for generating a mixed reality environment
KR100773782B1 (ko) 클라이언트 시스템 사이의 게임 플레이 데이터 보정 시스템및 그 방법
JP7033219B2 (ja) 低レイテンシデータグラム応答性コンピュータネットワークプロトコル
US20150031421A1 (en) Method and apparatus for providing online shooting game
US8224992B2 (en) Communication device, communication system therefor, and computer program therefor
US20090209336A1 (en) Game system, method for controlling game system, game device therefor, and program therefor
CN115136559A (zh) 用于数据传输路径选择的数据层次结构协议
JP5357752B2 (ja) データ伝送システムおよびその方法
CA2901609A1 (en) Storage medium, game system, and control method
US20220297001A1 (en) Server, processing system, processing method, and program
EP3406307B1 (en) Information processing system, information processing apparatus, information processing program, and information processing method
Hariri et al. A distributed measurement scheme for internet latency estimation
Dhakal et al. SLAM-share: visual simultaneous localization and mapping for real-time multi-user augmented reality
CN111265884B (zh) 虚拟对象的作弊检测方法、装置、设备及介质
US20070198658A1 (en) Method and Apparatus for Synchronizing Assets Across Distributed Systems
US10471347B2 (en) Information processing system, information processing apparatus, storage medium storing information processing program, and information processing method
EP3406312B1 (en) Information processing system, information processing apparatus, information processing program, and information processing method
KR101601587B1 (ko) 통신처 판정 장치, 게임 시스템, 통신처 판정 방법, 기록 매체
EP4347069A1 (en) Hybrid cloud and local rendering

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121011

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131001

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140925

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150924

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160928

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170928

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181001

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190925

Year of fee payment: 13