KR101516467B1 - 캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법 - Google Patents

캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법 Download PDF

Info

Publication number
KR101516467B1
KR101516467B1 KR1020117000560A KR20117000560A KR101516467B1 KR 101516467 B1 KR101516467 B1 KR 101516467B1 KR 1020117000560 A KR1020117000560 A KR 1020117000560A KR 20117000560 A KR20117000560 A KR 20117000560A KR 101516467 B1 KR101516467 B1 KR 101516467B1
Authority
KR
South Korea
Prior art keywords
character
virtual space
information
space
virtual
Prior art date
Application number
KR1020117000560A
Other languages
English (en)
Other versions
KR20110055512A (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 플레이돔, 인크.
Publication of KR20110055512A publication Critical patent/KR20110055512A/ko
Application granted granted Critical
Publication of KR101516467B1 publication Critical patent/KR101516467B1/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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • A63F13/12
    • 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/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/843Special adaptations for executing a specific game genre or game mode involving concurrently two or more players on the same game device, e.g. requiring the use of a plurality of controllers or of a specific view of game data for each player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/535Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • A63F2300/5533Game data structure using program state or machine event data, e.g. server keeps track of the state of multiple players on in a multiple player 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
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

사용자와 연관된 캐릭터가 복수의 상이한 가상 공간들의 인스턴스들 내에서 표명될 수 있는 가상 공간들을 제공하는 시스템 및 방법이 제공된다. 싱글 캐릭터가 상이한 가상 공간들의 인스턴스들 내에서 표명될 수 있기 때문에, 캐릭터는, 상이한 가상 공간들의 인스턴스들 사이에서 대응하는 사용자에 의해 전송될 수 있으며, 상이한 가상 공간들과 상호 작용하도록 사용자에 의해 제어될 수 있다. 사용자가 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들)의 인스턴스들 사이에서 캐릭터를 전송할 때, 캐릭터의 각종 양상들은 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들) 사이에서 영속할 수 있다. 이는 상이한 가상 공간들 간의 강화된 연속성(an enhanced continuity)을 캐릭터에 제공할 수 있다.

Description

캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법{SYSTEM AND METHOD FOR ENABLING CHARACTERS TO BE MANIFESTED WITHIN A PLURALITY OF DIFFERENT VIRTUAL SPACES}
[관련 출원들]
본 출원은, 2008년 6월 9일에 출원된, "SYSTEM AND METHOD FOR ENABLING CHARACTERS TO BE MANIFESTED WITHIN A PLURALITY OF DIFFERENT VIRTUAL SPACES"라는 제목의 미국 특허 출원 일련 번호 제12/135,854호의 이익을 주장하며, 그 전체 내용이 본 명세서에 참조용으로 인용되어 있다. 본 출원은, 2007년 9월 17일에 출원된, "SYSTEM FOR PROVIDING VIRTUAL SPACES FOR ACCESS BY OTHERS"라는 제목의 미국 특허 출원 일련 번호 제11/898,864호; 2007년 9월 17일에 출원된, "SYSTEM FOR PROVIDING VIRTUAL SPACES WITH SEPARATE PLACES AND/OR ACOUSTIC AREAS"라는 제목의 미국 특허 출원 일련 번호 제11/898,863호; 2007년 9월 17일에 출원된, "SYSTEM AND METHOD FOR EMBEDDING A VIEW OF A VIRTUAL SPACE IN A BANNER AD AND ENABLING USER INTERACTION WITH THE VIRTUAL SPACE WITHIN THE BANNER AD"라는 제목의 미국 특허 출원 일련 번호 제11/898,861호; 2008년 6월 9일에 출원된, "SYSTEM AND METHOD OF PROVIDING ACCESS TO VIRTUAL SPACES THAT ARE ASSOCIATED WITH PHYSICAL ANALOGUES IN THE REAL WORLD"라는 제목의 미국 특허 출원 일련 번호 제12/135,832호와 관련되며, 상기 특허 출원들 모두는 본 명세서에 그 전체 내용이 참조용으로 인용되어 있다.
[발명 분야]
본 발명은 개별 캐릭터들이 복수의 상이한 가상 공간들의 인스턴스들 내에서 표명(manifest)될 수 있는 가상 공간들을 제공하는 시스템 및 방법에 관한 것이다.
실시간 상호 작용을 위해 복수의 사용자들에게 액세스 가능한 가상 세계들 및/또는 가상 게임 공간들을 제공하는 시스템들이 공지되어 있다. 이러한 시스템들은 자신들이 제공하는 가상 세계들의 특성들과 관련하여 다소 엄격하게 구현되는 경향이 있다. 따라서, 복수의 가상 세계들 및/또는 가상 게임 공간들과의 및/또는 그들 간의 상호 작용은 제한되는 경향이 있다.
예를 들어, 일부 가상 세계들은, 가상 세계들의 인스턴스들이 가상 세계들에 액세스하는 사용자들에 의해 제어되는 캐릭터들을 표명하도록 구성된다. 가상 세계 내에서 캐릭터를 제어하는 것은, 사용자가 가상 세계와 상호 작용하는 주요 메카니즘을 제공할 수 있다. 종래의 가상 세계들의 비교적 엄격하고 획일적인 특성으로 인해, 표명 특성(예를 들어, 외관 등), 파라미터 정보(예를 들어, 스코어, 목록, 사회적 연결 등), 목록(예를 들어, 객체, 통화 등), 및/또는 상이한 가상 세계들 사이에서 영속하는(persistent) 다른 정보로 가상 세계의 인스턴스 내에서 표명됨으로써 하나의 가상 세계 내의 캐릭터가 다른 가상 세계에 들어가는 것은 실행 불가능할 수 있다. 대신, 사용자는 상이한 가상 세계들 내에서 개별 캐릭터들을 생성할 필요가 있을 수 있다.
복수의 상이한 게임들 내에서 표현될 수 있는 아바타 또는 비주얼 표현을 사용자가 생성할 수 있는 종래의 비디오 게임 시스템들이 존재한다. 예를 들어, 닌텐도의 Wii 시스템은, 사용자들이 "Miis"를 생성할 수 있게 하며, "Miis"는 Wii 시스템에서 플레이되는 복수의 상이한 게임들 내에서 표현될 수 있는 사람들의 디지털 표현들이다. 그러나, Wii 시스템 및/또는 유사한 다른 종래의 시스템들에서, 사용자에 의해 생성 및/또는 획득된 아바타들은 플레이중인 게임에 특정한 애플리케이션이 실행되는 게이밍 콘솔에만 로컬로 저장된다. 따라서, 스토리지 디바이스(메모리 카드, 하드 드라이브)가 하나의 콘솔로부터 다른 콘솔로 물리적으로 이동되지 않는 한, 캐릭터들은 다른 콘솔 또는 단말로부터 액세스될 수 없고, 웹 브라우저를 통해 캐릭터 데이터의 인터넷-직면 프리젠테이션(Internet-facing presentation)과 같은 가능한 애플리케이션들을 포함해서, 임의의 네트워킹 디바이스에 의해 사용 가능한 중앙 스토리지가 없다. 또한, Miis와 같은 아바타들의 비주얼 표현 외에, 종래의 시스템들에서는 상이한 게임들 사이에서 영속하는 아바타들과 관련된 정보가 거의 없다.
본 발명의 일 양상은, 사용자와 연관된 캐릭터가 복수의 상이한 가상 공간들의 인스턴스들 내에서 표명될 수 있는 가상 공간들을 제공하는 시스템 및 방법에 관한 것일 수 있다. 싱글 캐릭터가 상이한 가상 공간들의 인스턴스들 내에서 표명될 수 있기 때문에, 캐릭터는, 상이한 가상 공간들의 인스턴스들 사이에서 대응하는 사용자에 의해 전송될 수 있으며, 상이한 가상 공간들과 상호 작용하도록 사용자에 의해 제어될 수 있다. 사용자가 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들)의 인스턴스들 사이에서 캐릭터를 전송할 때, 캐릭터의 각종 양상들은 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들) 사이에서 영속할 수 있다. 이는 상이한 가상 공간들 간의 강화된 연속성(an enhanced continuity)을 캐릭터에 제공할 수 있다.
사용자가 가상 공간의 인스턴스와 상호 작용할 수 있게 하는, 예를 들어, 아바타 등의 객체로서 캐릭터는 가상 공간들 중 하나의 가상 공간의 인스턴스 내에서 표명될 수 있다. 예를 들어, 캐릭터는, 인스턴스 내에서 이동하고, 인스턴스 내에서 하나 이상의 다른 객체들과 상호 작용하며, 다른 객체들(예를 들어, 다른 사용자들과 연관된 캐릭터들)과 통신하고, 다른 객체들과 싸우며, 다른 객체들과 경주하고, 가상 공간의 인스턴스 내의 지형학(topography)을 관측 및/또는 상호 작용하며, 및/또는 달리 가상 공간과 상호 작용하도록 사용자에 의해 제어될 수 있다.
특정 구현들에서, 소정의 가상 공간(또는 가상 공간 그룹)은, 소정의 가상 공간(또는 공간 그룹) 및 가상 공간들 중 다른 가상 공간들 사이에서 영속하지 않는 캐릭터를 표명하기 위해 캐릭터와 관련된 정보를 요구할 수 있다. 예를 들어, 소정의 가상 공간(또는 가상 공간 그룹)은 특정 타입의 창조물(예를 들어, 용, 요정, 마법사, 군인 등)로 나타나는 캐릭터들을 요구할 수 있으며, 가상 공간들 중 다른 가상 공간들은 다른 타입들의 비주얼 표현들의 캐릭터들을 허용한다. 다른 일례로서, 소정의 가상 공간(또는 가상 공간 그룹)은 스코어 시스템을 가질 수 있으며, 게임 플레이 중에 획득되는 "스코어"와 캐릭터를 연관시킬 수 있으며, 가상 공간들 중 다른 가상 공간들은 캐릭터들을 스코어와 연관시키지 않을 수도 있다. 캐릭터에 의해 가상 공간들 간의 비교적 한결같은 이동을 가능케 하기 위해, 시스템 및/또는 방법은, 소정의 가상 공간에 들어갈 때 캐릭터가, 소정의 가상 공간(또는 가상 공간 그룹)에 특정한 정보와 함께, 캐릭터를 위해 소정의 가상 공간들 및 다른 가상 공간들 사이에서 영속하는 정보가 소정의 가상 공간의 인스턴스에서 캐릭터를 표명하도록 구현되게 하도록 구성될 수 있게 할 수 있으며, 다른 가상 공간들에 대하여 캐릭터와 관련된 정보는 소정의 가상 공간 내에 영속하지 않으면 무시될 수 있다.
일부 구현들에서, 시스템은 스토리지 모듈, 하나 이상의 서버들, 하나 이상의 클라이언트들, 및/또는 다른 컴포넌트들 중 하나 이상을 포함할 수 있다. 시스템은, 가상 공간들 및/또는 캐릭터들과 관련된 정보가 스토리지 모듈로부터 서버들로 송신될 수 있도록 구성될 수 있으며, 그 후, 스토리지 모듈로부터 수신된 정보에 기초하여 가상 공간들의 인스턴스들을 실행할 수 있으며 가상 공간들의 인스턴스들 내에서 캐릭터들을 표명할 수 있다. 가상 공간의 인스턴스로부터, 서버는 가상 공간의 뷰를 생성하고, 뷰 정보 형태로 뷰를 클라이언트에게 송신할 수 있다. 클라이언트는 수신된 뷰 정보로부터 뷰를 어셈블하고, 뷰의 디스플레이를 사용자에게 제시할 수 있다. 클라이언트에서 제공된 인터페이스를 통해, 사용자는 가상 공간들의 인스턴스들 내에서의 사용자와 연관된 캐릭터의 표명을 제어할 수 있다.
스토리지 모듈은 서버 및/또는 클라이언트 중 하나 또는 둘 다로부터 원격일 수 있다. 스토리지 모듈은 개별 캐릭터들에 대응하는 하나 이상의 캐릭터 레코드들을 저장할 수 있다. 소정의 캐릭터 레코드 내에 포함된 정보의 일부 또는 전부는 상이한 가상 공간들 및/또는 상이한 타입들의 가상 공간들 사이에서 영속할 수 있다. 따라서, 스토리지 모듈에 의해 저장된 캐릭터 레코드들은, 개별 캐릭터들이 상이한 타입들의 가상 공간들을 포함하는 복수의 가상 공간들 내에서 표명될 수 있게 하는 정보를 포함할 수 있다. 이는, 사용자가 어느 정도 연속해서 가상 공간들 사이에서 캐릭터를 전송할 수 있게 할 수 있다. 소정의 캐릭터 레코드 내에 포함된 정보는, 대응하는 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 캐릭터 목록 정보, 캐릭터 인터페이스 정보, 및/또는 대응하는 캐릭터와 관련된 다른 정보 중 하나 이상을 포함할 수 있다.
일부 구현들에서, 캐릭터의 표명은, 캐릭터의 운동 특성, 캐릭터의 크기, 캐릭터의 세기, 캐릭터의 무게, 캐릭터의 비주얼 표현, 캐릭터의 아이덴티티 및/또는 본성, 캐릭터의 상호 작용 특성, 캐릭터의 이동 특성, 캐릭터의 음파(sonic) 특성, 캐릭터 타입 또는 클래스(예를 들어, 사람, 동물, 외계인, 전사, 성직자, 상인 등), 및/또는 캐릭터의 표명의 다른 양상들을 포함할 수 있다. 대응하는 캐릭터 레코드 내에서 표명 정보에 의해 기술된 캐릭터의 상호 작용 특성들은, 캐릭터가 가상 공간들 내의 다른 객체들 및/또는 캐릭터들과 상호 작용하고/상호 작용하거나 그에 의해 영향을 받는 방식, 가상 공간들의 지형학(예를 들어, 지형학의 특징들), 가상 공간들의 보이지 않는 힘들, 및/또는 캐릭터가 가상 공간들의 외부 힘, 객체들, 및/또는 캐릭터들과 상호 작용하는 방식의 다른 특성들과 관련된 정보를 포함할 수 있다.
일부 구현들에서, 캐릭터 파라미터 정보는 하나 이상의 가상 공간들 내에서의 캐릭터의 파라미터들과 관련된 정보를 포함할 수 있다. 비제한적 일례로서, 캐릭터 파라미터 정보는, 캐릭터의 습득된 스킬, 캐릭터의 스킬 레벨, 캐릭터의 상태, 캐릭터 및 하나 이상의 다른 캐릭터들 간의 사회적 연결 또는 친밀감, 캐릭터가 달성한 스코어, 캐릭터에게 제공된 허가(예를 들어, 가상 공간의 제한된 영역에 액세스할 수 있음, 제한된 가상 공간에 액세스할 수 있음 등), 및/또는 캐릭터의 다른 파라미터들 중 하나 이상과 관련된 정보를 포함할 수 있다.
캐릭터 파라미터 정보에 의해 표현된 하나 이상의 파라미터들은 복수의 가상 공간들 및/또는 가상 공간 타입들 간에 영속할 수 있다. 이는, 다른 가상 공간이 상이한 가상 공간 타입이더라도, 하나의 가상 공간에서 얻은 파라미터들이 다른 가상 공간으로 전송될 수 있게 해줄 수 있다. 캐릭터 파라미터 정보에 의해 표현된 하나 이상의 파라미터들은 모든 가상 공간들 및/또는 가상 공간 타입들 간에 영속하지 않을 수도 있다. 그러나, 이러한 구현들에서, 이러한 파라미터들과 관련된 정보는 공간마다 및/또는 공간 집합 마다(예를 들어, 가상 공간 타입, 공통 체계 또는 주제 등에 따라 그룹화된 공간 집합 마다) 저장될 수 있다. 이는, 캐릭터가, 파라미터의 영속적인 표현을 유지하지 않으면서, 제2 가상 공간(또는 가상 공간들)에 들어가기 위해, 소정의 파라미터가 영속하는 제1 가상 공간 및/또는 제1 가상 공간 집합을 떠날 수 있게 할 수 있고, 제1 가상 공간(또는 제1 가상 공간 집합)으로 돌아갈 때, 제1 가상 공간(또는 제1 가상 공간 집합)을 위해 저장된 파라미터의 표현은 캐릭터로 복구된다. 이러한 일부 구현들에서, 캐릭터 레코드는 제1 가상 공간(또는 제1 가상 공간 집합) 및 제2 가상 공간(또는 가상 공간들)을 위해 동일한 파라미터(또는 유사한 파라미터들)의 상이한 표현들을 포함할 수 있다.
전술한 바로부터 알 수 있는 바와 같이, 캐릭터의 파라미터들은, 예를 들어, 가상 공간 내의 달성으로 인해, 하나의 가상 공간에서 변경될 수 있다. 비제한적 일례로서, 제1 가상 공간에서, 캐릭터는 다른 가상 공간 및/또는 가상 공간 타입에서 유용할 수 있는 스킬을 획득 및/또는 강화할 수 있다. 이러한 파라미터(즉, 스킬)를 나타내는 캐릭터 파라미터가 복수의 가상 공간들 사이에서 영속할 수 있기 때문에, 스킬이 획득 및/또는 강화된 가상 공간으로부터 스킬이 파라미터인 가상 공간들의 다른 가상 공간으로 캐릭터가 이동할 때, 스킬이 파라미터가 아닌 다른 가상 공간들을 캐릭터가 통과하더라도, 스킬은 획득 및/또는 증가된 레벨로 표현된다. 이는 시스템에 의해 제공된 가상 공간들에 강화된 연속성을 제공할 수 있다.
일부 구현들에서, 캐릭터 목록 정보는 캐릭터가 현재 소유한 가상 통화의 양과 관련된 정보, 캐릭터의 소유에 있는 및/또는 제어하에 있는 객체들과 관련된 정보, 및/또는 캐릭터와 연관된 목록과 관련된 다른 정보를 포함할 수 있다. 캐릭터 목록 정보의 적어도 일부는 상이한 가상 공간들 및/또는 가상 공간 타입들 간에 영속할 수 있다. 이는, 캐릭터가 다양한 가상 공간들 간에서 "소유"할 수 있게 해줄 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 사용자가 가상 공간들 내에서 캐릭터를 제어할 수 있도록 사용자에게 제공된 인터페이스와 관련된 정보를 포함할 수 있다. 예를 들어, 소정의 캐릭터 레코드에 포함된 캐릭터 인터페이스 정보는, 미리 결정된 방식으로 소정의 캐릭터 레코드에 대응하는 캐릭터를 제어하기 위해 클라이언트에서 제공된 입력 디바이스를 구성하는 정보를 포함할 수 있다. 입력 디바이스를 구성하는 정보는, 미리 결정된 방식으로 캐릭터를 제어하기 위해 시스템에 입력될 수 있는 커맨드들로의 클라이언트에서 제공된 입력 디바이스의 매핑을 포함할 수 있다. 입력 디바이스는, 예를 들어, 키보드, 마우스, 조이스틱, 트랙볼 및/또는 다른 입력 디바이스들을 포함할 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 캐릭터와 관련된 정보의 디스플레이를 구성하는 정보를 포함할 수 있다. 예를 들어, 캐릭터 인터페이스 정보는, 클라이언트에서 사용자에게 제공된 디스플레이를 구성하는 정보를 포함할 수 있다. 이는, 디스플레이되는 정보의 타입, 디스플레이 상의 정보의 위치, 디스플레이 상의 정보의 크기, 및/또는 캐릭터와 관련된 정보의 디스플레이를 구성하는 다른 방식들 중 하나 이상을 구성하는 것을 포함할 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 캐릭터와 관련된 그래픽 사용자 인터페이스를 구성하는 정보를 포함할 수 있다. 예를 들어, 그래픽 사용자 인터페이스는 캐릭터와 관련된 정보를 디스플레이할 수 있고/있거나 캐릭터의 제어를 가능하게 할 수 있다. 그래픽 사용자 인터페이스의 구성은, 캐릭터와 관련된 정보의 디스플레이들의 크기 및/또는 로케이션 결정, 그래픽 사용자 인터페이스를 통해 입력될 수 있는 커맨드들과 관련된 정보 결정, 그래픽 사용자 인터페이스를 통해 입력될 수 있는 커맨드들이 선택되는 방식 결정, 및/또는 그래픽 사용자 인터페이스의 다른 파라미터들의 결정 중 하나 이상을 포함할 수 있다.
가상 공간의 인스턴스를 실행하는 서버는, 인스턴스화 모듈(instantiation module), 뷰 모듈, 캐릭터 모듈, 및/또는 다른 모듈들을 포함할 수 있다. 인스턴스화 모듈은, 가상 공간의 인스턴스를 인스턴스화 모듈이 실행할 수 있게 하는 정보를 스토리지 모듈로부터 획득할 수 있다. 뷰 모듈은, 클라이언트에서 사용자에게 디스플레이를 위해 클라이언트에게 송신되는 가상 공간의 인스턴스의 뷰를 결정할 수 있다. 캐릭터 모듈은, 가상 공간의 인스턴스 및/또는 다른 가상 공간들의 인스턴스들 내에서 캐릭터가 표명될 수 있도록 사용자와 연관된 캐릭터와 관련된 정보를 획득 및/또는 관리할 수 있다.
일부 구현들에서, 캐릭터 모듈은, (예를 들어, 클라이언트를 통해) 사용자에 의해 인스턴스에 도입된 캐릭터와 관련된 정보를 수신할 수 있다. 예를 들어, "가상 공간의 인스턴스에 "들어가기(enter)" 위해, 클라이언트는 인스턴스에 대한 액세스 요청을 서버에 송신할 수 있다. 요청은, 캐릭터 모듈이 사용자의 표현으로서 인스턴스 내에서 표명되어야 하는 캐릭터를 결정할 수 있게 하는 식별(identification)을 포함할 수 있다. 캐릭터 모듈에 의한 캐릭터의 결정은, 캐릭터와 관련된 정보가 액세스될 수 있는 캐릭터 레코드의 식별을 포함할 수 있다. 캐릭터 레코드는 클라이언트로부터의 요청에서 캐릭터 모듈이 수신한 식별에 대응할 수 있다. 그 후, 캐릭터 모듈은, 인스턴스화 모듈이 가상 공간의 인스턴스 내에서 캐릭터를 표명할 수 있게 해주고/해주며, 뷰 모듈이 클라이언트로의 송신을 위해 가상 공간의 인스턴스의 적합한 뷰를 결정할 수 있게 하는 정보를 적합한 캐릭터 레코드로부터 획득할 수 있다.
전술한 바와 같이, 캐릭터 모듈에 의해 액세스된 캐릭터 레코드 내의 정보는, 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 캐릭터 목록 정보, 캐릭터 인터페이스 정보, 및/또는 캐릭터와 관련된 다른 정보 중 하나 이상을 포함할 수 있다. 캐릭터 레코드 내의 정보의 적어도 일부는 서버에 의해 실행되는 가상 공간의 인스턴스 및 다른 가상 공간들의 인스턴스들 간에 영속할 수 있다. 그러나, 이는 캐릭터 레코드 내의 일부 정보에 대해 항상 그런 것은 아니다. 캐릭터 레코드 내의 일부 정보는 실행중인 인스턴스의 가상 공간(및/또는 실행중인 인스턴스의 가상 공간이 파트인 일부 가상 공간 그룹)에 특정할 수 있다. 예를 들어, 캐릭터의 비주얼 표현의 양상들은 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터의 목록의 객체들 및/또는 통화는 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터의 스코어, 스킬, 스킬 레벨, 허가, 사회적 연결, 및/또는 다른 파라미터들은 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터 레코드에 포함된 다른 정보는 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있다.
본 발명의 각종 실시예들에 따라, 캐릭터가 제1 시간 동안 가상 공간에 도입되면(예를 들어, 가상 공간의 인스턴스에 표명되면), 캐릭터 레코드는 가상 공간의 인스턴스에서 캐릭터를 표명하는데 필요한 모든 정보를 포함하지 않을 수 있다. 예를 들어, 가상 공간은, 캐릭터 레코드 내의 일부 정보가 가상 공간에 특정하도록 구성될 수 있으며, 캐릭터가 가상 공간에 도입되지 않았으면, 이 정보는 아직 캐릭터 레코드에 들어가지 않았을 수 있다. 이러한 경우, 캐릭터 모듈은, 캐릭터에 대응하는 캐릭터 레코드가 서버에 의해 실행되는 인스턴스에서 캐릭터를 표명하기 위한 모든 정보를 포함하도록 가상 공간의 캐릭터를 사용자가 구성할 수 있게 할 수 있다.
일부 구현들에서, 캐릭터와 관련된 정보는 서버에 의해 실행되는 가상 공간의 인스턴스 내에 캐릭터가 존재하는 동안 변경 및/또는 발전할 수 있다. 예를 들어, 캐릭터의 외관이 변경할 수 있고/있거나, 캐릭터가 하나 이상의 스킬들을 습득 및/또는 강화할 수 있고/있거나, 캐릭터가 통화 및/또는 객체들을 획득할 수 있고/있거나, 캐릭터와 연관된 스코어가 변경될 수 있고/있거나, 캐릭터와 연관된 표명 정보가 변경될 수 있고/있거나(예를 들어, 캐릭터가 성장하고, 손상되며, 더 강해지는 등), 캐릭터는 허가를 얻을 수 있고/있거나, 캐릭터는 새로운 사회적 연결을 만들거나 또는 기존 사회적 연결을 강화할 수 있고/있거나, 캐릭터와 연관된 다른 정보가 변경될 수 있다. 이러한 변경은 실행중인 인스턴스 내에서 자발적으로 발생할 수 있고/있거나(예를 들어, 인스턴스는 캐릭터의 비주얼 표현이 시간이 지남에 따라 성숙하게 할 수 있음), 인스턴스 내의 게임 플레이에 의해 야기될 수 있고/있거나, (클라이언트를 통해) 사용자가 입력한 커스터마이제이션(customization) 및/또는 구성에 의해 야기될 수 있고/있거나, 다른 원인들을 가질 수 있다. 캐릭터 모듈은 캐릭터 레코드의 이러한 변경들의 스토리지를 관리할 수 있다. 이러한 변경은 캐릭터 레코드 내에 저장되어서, 캐릭터가 서버에 의해 실행되는 인스턴스를 떠나서 다른 가상 공간에 들어가면, 실행중인 인스턴스 및 다른 가상 공간들의 인스턴스들 간에 영속하는 캐릭터와 관련된 정보는 다른 가상 공간들에서 변경이 반영되게 한다. 실행중인 인스턴스 내에서 변경되는 캐릭터와 관련된 정보가 실행중인 인스턴스의 가상 공간 및 다른 가상 공간들 간에 영속하지 않으면, 변경된 정보가 영속하는 실행중인 인스턴스 및/또는 일부 다른 가상 공간의 인스턴스에 캐릭터가 다시 들어갈 때까지, 이들 변경은 캐릭터 레코드 내에 저장된다.
본 발명과, 구조의 관련 요소들의 오퍼레이션 방법들 및 기능들 및 제조의 파트들 및 경제의 조합의 여타 목적들, 특성들 및 특징들은 첨부 도면들과 관련해서 이하의 설명 및 첨부 청구항들을 고려할 때 더욱 명백해질 것이며, 도면들, 이하의 설명 및 청구항들은 모두 본 명세서의 일부분을 형성하며, 각종 도면들에서 유사한 참조 부호들은 대응하는 부분들을 나타낸다. 그러나, 도면들은 오직 예증 및 설명을 위한 것으로서 본 발명의 한계를 정의하는 것이 아님을 명백히 알 것이다. 명세서 및 청구항들에서 사용된 바와 같이, 단수형 용어 "하나의(a, an)" 및 "그 또는 상기(the)"는 문맥이 명확히 달리 지시하지 않는 한 복수의 지시 대상들을 포함한다.
도 1은 본 발명의 하나 이상의 실시예들에 따른, 사용자들에게 액세스될 수 있는 하나 이상의 가상 공간들을 제공하도록 구성된 시스템을 도시한다.
도 2는 본 발명의 하나 이상의 실시예들에 따른, 사용자들에게 액세스될 수 있는 하나 이상의 가상 공간들을 제공하도록 구성된 시스템을 도시한다.
도 1은 사용자들에게 액세스될 수 있는 하나 이상의 가상 공간들을 제공하도록 구성된 시스템(10)을 도시한다. 일부 실시예들에서, 시스템(10)은 스토리지 모듈(12), 서버(14), 클라이언트(16), 및/또는 다른 컴포넌트들을 포함할 수 있다. 스토리지 모듈(12), 서버(14) 및 클라이언트(16)는 서로 동작적으로 통신할 수 있다. 시스템(10)은, 소정의 가상 공간과 관련된 정보가 스토리지 모듈(12)로부터 서버(14)로 송신되어서, 후에 가상 공간의 인스턴스를 실행할 수 있도록 구성될 수 있다. 가상 공간의 뷰들은 가상 공간의 인스턴스로부터 서버(14)에 의해 생성될 수 있다. 뷰들과 관련된 정보는 서버(14)로부터 클라이언트(16)로 송신되어서, 클라이언트(16)가 사용자에게 디스플레이되도록 뷰들을 포맷(format)할 수 있게 할 수 있다.
일부 실시예들에서, 시스템(10)은, 사용자가 가상 공간의 인스턴스 내에서 캐릭터를 제어할 수 있게 해줄 수 있다. 캐릭터는, 사용자가 가상 공간의 인스턴스와 상호 작용할 수 있게 하는, 예를 들어, 아바타와 같은 객체로서 가상 공간의 인스턴스 내에서 표명될 수 있다. 예를 들어, 캐릭터는, 인스턴스 내에서 이동하고, 인스턴스 내에서 하나 이상의 다른 객체들과 상호 작용하며, 다른 객체들(예를 들어, 다른 사용자들과 연관된 캐릭터들)과 통신하고, 다른 객체들과 싸우며, 다른 객체들과 경주하고, 가상 공간의 인스턴스 내의 지형학을 관측 및/또는 상호 작용하고, 및/또는 가상 공간과 달리 상호 작용하도록 사용자에 의해 제어될 수 있다. 시스템(10)은, 캐릭터가 상이한 가상 공간들(상이한 타입들의 가상 공간들을 포함)의 인스턴스들 사이에서 사용자에 의해 전송될 수 있도록 더 구성될 수 있다. 사용자가 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들)의 인스턴스들 사이에서 캐릭터를 전송할 때, 캐릭터의 각종 양상들은 상이한 가상 공간들(및/또는 상이한 타입들의 가상 공간들) 사이에서 영속할 수 있다.
시스템(10)은 컴포넌트들(예를 들어, 스토리지 모듈(12), 서버(14), 클라이언트(16) 등) 간의 통신을 위한 마크업 언어를 구현할 수 있다. 정보는 마크업 언어의 마크업 요소들을 통해 컴포넌트들 간에 통신될 수 있다. 마크업 언어로 된 시스템(10)의 컴포넌트들 간의 통신에 의해, 강화가 다양하게 달성될 수 있다. 예를 들어, 서버(14)가 가상 공간의 인스턴스를 실행하도록 구성하는 정보가 스토리지 모듈(12)로부터 서버(14)에 송신될 수 있으며, 이것은 인스턴스화의 시간에 또는 그와 가까운 시간에 마크업 언어를 통해 서버(14)에 제공될 수 있다. 유사하게, 서버(14)로부터 클라이언트(16)로 송신된 정보는, 클라이언트(16)가 통신된 마크업 요소들에서 지시된 정보를 단지 어셈블함으로써 가상 공간의 뷰들을 생성할 수 있게 할 수 있다. 마크업 언어의 구현은, 시스템(10)에 의해 각종 타입의 가상 공간들의 인스턴스들의 실행을 용이하게 할 수 있다. 가상 공간들의 타입들은 예를 들어, 2차원 공간, 3차원 공간, 게임 공간, 사회적 공간, 1인칭 공간(first-person), 3인칭 공간, 상이한 장르로부터 뽑은 공간, 액션 게임 공간, 역할 연기(role-playing) 공간, 및/또는 다른 타입들의 공간들을 포함할 수 있다. 마크업 언어의 구현은, 클라이언트(16)의 사용자에 의한 새로운 가상 공간의 생성, 및/또는 기존 가상 공간들의 커스터마이제이션/리파인먼트(customization/refinement)를 용이하게 할 수 있다.
본 명세서에서 사용된 바와 같이, 가상 공간은 클라이언트의 사용자에게 디스플레이되도록 가상 공간의 뷰를 포맷하기 위해, 서버로부터 원격 위치한, 클라이언트(예를 들어, 클라이언트(16))에 의해 액세스될 수 있는 서버(예를 들어, 서버(14))에서 인스턴스된 시뮬레이팅된 공간(예를 들어, 물리적 공간)을 포함할 수 있다. 시뮬레이팅된 공간은 지형학(topography)을 가질 수 있으며, 사용자에 의한 실시간 상호 작용을 표현할 수 있으며, 지형학 내의 운동(locomotion)이 가능한 지형학 내에 위치한 하나 이상의 객체들을 포함할 수 있다. 일부 구현들에서, 지형학은 2차원 지형학일 수 있다. 다른 실례들에서, 지형학은 3차원 지형학일 수 있다. 일부 구현들에서, 지형학은 싱글 노드일 수 있다. 지형학은, 가상 공간의 차원들, 및/또는 가상 공간에 "원시적(native)"인 표면 또는 객체들의 표면 특징들을 포함할 수 있다. 일부 구현들에서, 지형학은 가상 공간의 적어도 본질적인 부분(a substantial portion)을 통하는 표면(예를 들어, 지면)을 기술할 수 있다. 일부 구현들에서, 지형학은 내부에 위치한 하나 이상의 본체(body)들을 가진 볼륨(volume)을 기술할 수 있다(예를 들어, 내부에 위치한 하나 이상의 천체들(celestial bodies)을 가진 중력-박탈(gravity-deprived) 공간의 시뮬레이션). 가상 공간은 가상 세계를 포함할 수 있지만, 이는 반듯이 그런 것은 아니다. 예를 들어, 가상 공간은 가상 세계(예를 들어, 중력, 풍경 등)와 일반적으로 연관된 하나 이상의 양상들을 포함하지 않는 게임 공간을 포함할 수 있다. 실례로서, 공지된 게임 테트리스(Tetris)는 본체들(예를 들어, 하강 테트로미노들(falling tetrominoes))이 미리 결정된 파라미터들(예를 들어, 미리 결정된 속도의 하강, 및 사용자 상호 작용에 기초한 수평 시프팅 및/또는 회전)에 따라 이동하는 2차원 지형학으로서 형성될 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "마크업 언어(markup language)"는 마크업 요소들을 통해 컴포넌트들 간의 정보를 통신하는데 사용된 언어를 포함할 수 있다. 일반적으로, 마크업 요소는 콘텐츠 및 콘텐츠와 연관된 속성들을 모두 포함하는 정보의 개별 유닛이다. 마크업 언어는 요소에 포함된 속성들의 특성 및 콘텐츠의 타입을 나타내는 복수의 상이한 타입들의 요소들을 포함할 수 있다. 예를 들어, 일부 실시예들에서, 마크업 언어의 마크업 요소들은 [O_HERE]|objectId|artIndex|x|y|z|name|templateId 형태일 수 있다. 이는 가상 공간에서 새로운 객체를 식별하기 위한 마크업 요소를 나타낼 수 있다. 마크업 요소의 파라미터들은, 이 객체에 대한 차후 참조를 위한 객체 Id를 할당하는 것, 이 객체와 연관되어 그려지는 것들을 클라이언트에게 이야기해주는 것, 객체의 상대적 x, y 및 z 위치, 객체의 이름, 및 객체와 연관된 데이터(지정된 템플릿으로부터 유래됨)를 포함한다. 다른 비제한적 일례로서, 마크업 요소는 [O_GONE]|objId 형태일 수 있다. 이 마크업 요소는 가상 공간의 뷰의 관점에서 먼 객체를 나타낼 수 있다. 또 다른 일례로서, 마크업 요소는 [O_MOVE]|objectId|x|y|z 형태일 수 있다. 이 마크업 요소는 가상 공간의 새로운 로케이션으로 공간 이동된 객체를 나타낼 수 있다. 또 다른 일례로서, 마크업 요소는 [O_SLIDE]|objectId|x|y|z|time 형태일 수 있다. 이 마크업 요소는 고정된 시간 기간 동안 가상 공간의 하나의 로케이션으로부터 새로운 로케이션으로 점차적으로 이동하는 객체를 나타낼 수 있다. 이러한 일례들은 제한의 의미가 아니며, 단지 마크업 요소들의 소수의 상이한 형태들을 설명하기 위한 것임을 알 것이다.
스토리지 모듈(12)은 정보 스토리지(18), 서버 통신 모듈(20) 및/또는 다른 컴포넌트들을 포함할 수 있다. 일반적으로, 스토리지 모듈(12)은 하나 이상의 가상 공간들과 관련된 정보를 저장할 수 있다. 소정의 가상 공간과 관련된 스토리지 모듈(12)에 의해 저장된 정보는 소정의 가상 공간의 지형학과 관련된 지형학 정보, 가상 공간의 하나 이상의 객체들에 의해 경험된 보이지 않는 힘들 및/또는 지형학 내에 위치한 하나 이상의 객체들의 표명(manifestation)과 관련된 표명 정보, 사용자가 가상 공간과 상호 작용할 수 있도록 하는 사용자에게 제공된 인터페이스와 관련된 인터페이스 정보, 가상 공간의 파라미터들과 관련된 스페이스 파라미터 정보, 및/또는 소정의 가상 공간과 관련된 다른 정보를 포함할 수 있다.
하나 이상의 객체들의 표명은, 하나 이상의 객체들의 운동 특성들, 하나 이상의 객체들의 크기, 하나 이상의 객체들의 아이덴티티 및/또는 본성, 하나 이상의 객체들의 상호 작용 특성, 및/또는 하나 이상의 객체들의 표명의 다른 양상을 포함할 수 있다. 표명 정보에 의해 기술된 하나 이상의 객체들의 상호 작용 특성들은, 개별 객체들이 다른 객체들과 상호 작용하고/하거나 다른 객체들에 의해 영향을 받는 방식, 개별 객체들이 지형학(예를 들어, 지형학의 특징들)과 상호 작용하고/하거나 지형학에 의해 영향을 받는 방식, 개별 객체들이 가상 공간 내의 보이지 않는 힘과 상호 작용하고/하거나 가상 공간 내의 보이지 않는 힘에 의해 영향을 받는 방식, 및/또는 개별 객체들과 가상 공간 내의 다른 힘들 및/또는 객체들 간의 상호 작용의 다른 특성들과 관련된 정보를 포함할 수 있다. 표명 정보에 의해 기술된 하나 이상의 객체들의 상호 작용 특성들은, 스크립트 가능 거동들(scriptable behaviors)을 포함할 수 있으며, 스토리지 모듈(12) 내에 저장된 표명은 가상 공간 내의 소정의 객체(또는 객체들)의 소정의 스크립트 가능 거동과 연관된 스크립트 및 트리거 중 하나 또는 둘 다를 포함할 수 있다. 가상 공간 내에 존재하는 보이지 않는 힘들은 중력, 바람 흐름(wind current), 물 흐름(water current), 객체들 중 하나로부터 발산되는 보이지 않는 힘(예를 들어, 객체의 "파워"), 및/또는 다른 보이지 않는 힘(예를 들어, 온도 및/또는 공기 청정도 등의 가상 공간의 환경과 연관된 보이지 않는 영향력)을 포함할 수 있다.
일부 실시예들에서, 표명 정보는 가상 공간에 위치한 하나 이상의 객체들의 음파(sonic) 특성들과 관련된 정보를 포함할 수 있다. 음파 특성들은 개별 객체들의 발산 특성들(예를 들어, 객체들로부터의 사운드의 발산을 제어함), 개별 객체들의 음향 특성들, 개별 객체들에의 사운드의 영향력, 및/또는 하나 이상의 객체들의 다른 특성들을 포함할 수 있다. 이러한 실시예들에서, 지형학 정보는 가상 공간의 지형학의 음파 특성과 관련된 정보를 포함할 수 있다. 가상 공간의 지형학의 음파 특성은, 지형학의 음향 특성, 및/또는 지형학의 다른 음파 특성을 포함할 수 있다.
각종 실시예들에 따라, 가상 공간 내에 포함된 콘텐츠(예를 들어, 가상 공간에 존재하는 지형학 또는 객체들의 일부분들에 형성된 비주얼 콘텐츠, 객체 자체 등)는 오직 참조에 의해 스토리지 모듈(12)에 저장된 정보 내에서 식별될 수 있다. 예를 들어, 구조 및/또는 구조와 연관된 텍스처를 저장하는 대신, 스토리지 모듈(12)은 구조(또는 구조의 일부분)로서 구현되는 비주얼 콘텐츠 또는 텍스처가 액세스될 수 있는 액세스 로케이션을 저장할 수 있다. 일부 구현들에서, 액세스 로케이션은 네트워크 로케이션을 포인팅하는 URL을 포함할 수 있다. 액세스 로케이션에 의해 식별된 네트워크 로케이션은 네트워크 애셋(network asset)(22)과 연관될 수 있다. 네트워크 애셋(22)은 스토리지 모듈(12), 서버(14), 및 클라이언트(16) 각각으로부터 원격에 위치할 수 있다. 예를 들어, 액세스 로케이션은 네트워크 애셋(22)이 액세스될 수 있는 네트워크 URL 어드레스(예를 들어, 인터넷 URL 어드레스 등)를 포함할 수 있다.
가상 공간 내의 솔리드 구조들(solid structures)만이 스토리지 모듈(12)에 저장된 정보에 식별될 수 있는 것이 아니며, 이것은 오직 참조에 의해 저장되는 것임을 알아야 한다. 예를 들어, 보이지 않는 힘 또는 영향력을 나타내는 비주얼 효과는 전술한 바와 같이 참조에 의해 저장될 수 있다. 또한, 참조에 의해 저장된 정보는 비주얼 콘텐츠로만 제한되지 않을 수 있다. 예를 들어, 가상 공간 내에 표현된 오디오 콘텐츠는, 오디오 콘텐츠가 액세스될 수 있는 액세스 로케이션으로서, 참조에 의해 스토리지 모듈(12) 내에 저장될 수 있다. 다른 타입의 정보(예를 들어, 인터페이스 정보, 스페이스 파라미터 정보 등)는 스토리지 모듈(12) 내에 참조에 의해 저장될 수 있다.
스토리지 모듈(12) 내에 저장된 인터페이스 정보는, 사용자가 가상 공간과 상호 작용할 수 있도록 하는 사용자에게 제공된 인터페이스와 관련된 정보를 포함할 수 있다. 특히, 일부 구현들에서, 인터페이스 정보는, 사용자가 시스템(10)에 입력할 수 있는 커맨드들에 클라이언트(16)에서 제공된 입력 디바이스를 매핑하는 것을 포함할 수 있다. 예를 들어, 인터페이스 정보는, 사용자가 시스템(10)에 입력할 수 있는 커맨드들에 클라이언트(16)에서 사용자에게 제공된 키보드(및/또는 키패드)의 키들을 매핑하는 키 맵을 포함할 수 있다. 다른 일례로서, 인터페이스 정보는, 사용자가 시스템(10)에 입력할 수 있는 커맨드들에 마우스(또는 조이스틱, 또는 트랙볼 등)의 입력들을 매핑하는 맵을 포함할 수 있다. 일부 구현들에서, 인터페이스 정보는, 클라이언트(16)에서 사용자에게 제공된 인터페이스 디스플레이의 구성과 관련된 정보를 포함할 수 있어, 이를 통해 사용자는 시스템(10)에 정보를 입력할 수 있다. 예를 들어, 인터페이스 디스플레이는, 가상 공간과 상호 작용하는 다른 사용자들로의 통신, 가상 공간 내의 하나 이상의 객체들에 의해 실행되는 액션들을 나타내는 입력, 뷰의 상이한 뷰 포인트에 대한 요청, 더(또는 덜) 복잡한 뷰에 대한 요청(예를 들어, 2차원 뷰, 3차원 뷰 등), 인터페이스 디스플레이에서 디스플레이되는 하나 이상의 추가 타입들의 데이터에 대한 요청, 및/또는 다른 정보를 수신할 수 있다.
인터페이스 디스플레이는 간단히 공간을 뷰잉하는 것으로부터 명백해질 수 없는 가상 공간의 상태들에 대한 정보를 사용자에게 제공하도록 (예를 들어, 스토리지 모듈(12)에 저장된 인터페이스 정보에 의해) 구성될 수 있다. 예를 들어, 이러한 상태는, 시간 경과, 주위 환경 상태, 및/또는 다른 상태를 포함할 수 있다. 인터페이스 디스플레이는 공간 내의 하나 이상의 객체들에 대한 정보를 사용자에게 제공하도록 (예를 들어, 스토리지 모듈(12)에 저장된 인터페이스 정보에 의해) 구성될 수 있다. 예를 들어, 가상 공간의 지형학과 연관된 객체들(예를 들어, 좌표, 고도, 크기, 식별, 나이, 상태 등)에 대한 정보가 사용자에게 제공될 수 있다. 일부 구현들에서, 유생(animate) 캐릭터들(예를 들어, 날씨, 건강, 피로, 나이, 경험 등)을 나타내는 객체들에 대한 정보가 사용자에게 제공될 수 있다. 예를 들어, 가상 공간에서 클라이언트(16)와 연관된 캐릭터(예를 들어, 아바타, 사용자가 제어하는 캐릭터 등)를 나타내는 객체와 관련되는 그러한 정보가 디스플레이될 수 있다.
스페이스 파라미터 정보는 가상 공간의 하나 이상의 파라미터들과 관련된 정보를 포함할 수 있다. 가상 공간의 파라미터들은, 예를 들어, 시간이 지나가는 속도, 가상 공간 내의 객체의 차원(예를 들어, 2차원 대 3차원), 가상 공간의 허용 가능한 뷰들(예를 들어, 1인칭 뷰(first person view), 새의 눈의 뷰, 2차원 뷰, 3차원 뷰, 고정 뷰, 동적 뷰, 선택 가능 뷰 등), 및/또는 가상 공간의 다른 파라미터를 포함할 수 있다. 일부 구현들에서, 스페이스 파라미터 정보는, 가상 공간 내에 제공된 게임의 게임 파라미터와 관련된 정보를 포함한다. 예를 들어, 게임 파라미터는, 플레이어들의 최대 수, 플레이어들의 최소 수, 게임 플로(game flow)(예를 들어, 턴 베이스(turn based), 실시간 등), 스코어, 관객, 및/또는 게임의 다른 게임 파라미터와 관련된 정보를 포함할 수 있다.
복수의 가상 공간들과 관련된 정보는 정보 스토리지(18) 내에서 조직화된 방식으로 저장될 수 있다. 예를 들어, 정보는 복수의 스페이스 레코드들(24)(스페이스 레코드(24a), 스페이스 레코드(24b), 및 스페이스 레코드(24c)로 도시됨)로 조직화될 수 있다. 스페이스 레코드들(24)의 개별 레코드들은 복수의 가상 공간들의 개별 공간들에 대응할 수 있다. 소정의 스페이스 레코드(24)는 대응하는 가상 공간과 관련된 정보를 포함할 수 있다. 일부 실시예들에서, 스페이스 레코드들(24)은 싱글 계층 구조(예를 들어, 데이터베이스, 별도 파일들의 파일 시스템 등)에 함께 저장될 수 있다. 일부 실시예들에서, 스페이스 레코드들(24)은 스페이스 레코드들(24)의 복수의 상이한 "집합들(sets)"을 포함할 수 있고, 스페이스 레코드들의 각각의 집합은, 다른 스페이스 레코드들(24)과 개별적으로 분리해서 저장되는 하나 이상의 스페이스 레코드들(24)을 포함한다.
정보 스토리지(18)는, 가상 공간들과 상호 작용하기 위해 사용자들에 의해 조작될 수 있는 하나 이상의 캐릭터들과 관련된 정보를 저장할 수 있다. 정보는, 개별 캐릭터들에 대응하는 하나 이상의 캐릭터 레코드들(25)로 조직화될 수 있다. 일부 구현들에서, 소정의 캐릭터에 대응하는 캐릭터 레코드(25)는 캐릭터와 연관되는 사용자와 관련된 정보를 포함하는 사용자 레코드(도시되지 않음) 내에 포함될 수 있다. 이러한 구현들에서, 싱글 사용자 레코드는 하나 이상의 캐릭터 레코드들(25)을 포함할 수 있다. 예를 들어, 시스템(10)에 의해 제공된 하나 이상의 가상 공간들과 상호 작용하기 위해 사용자에 의해 선택적으로 사용될 수 있는 수개의 캐릭터들을 싱글 사용자가 갖는 경우, 싱글 사용자 레코드는 사용자와 연관된 개별 캐릭터들 각각에 대응하는 캐릭터 레코드를 포함할 수 있다. 다른 구현들에서, 캐릭터 레코드들(25)은 사용자 레코드들과 별도로 유지될 수 있으며, 캐릭터들과 사용자들 간의 연관은 캐릭터 레코드들(25) 및 사용자 레코드들 간의 참조에 의해 기록될 수 있다. 예를 들어, 싱글 사용이 시스템(10)에 의해 제공된 하나 이상의 가상 공간들과 상호 작용하기 위해 사용자에 의해 사용될 수 있는 수개의 캐릭터들을 갖는 경우, 싱글 사용자 레코드는 사용자의 캐릭터에 대응하는 캐릭터 레코드들(25) 각각에 대한 참조들을 포함할 수 있다.
소정의 캐릭터 레코드(25) 내에 포함된 정보의 일부 또는 전부는 상이한 가상 공간들 및/또는 상이한 타입들의 가상 공간들 사이에서 영속할 수 있다. 따라서, 캐릭터 레코드들(25)은, 개별 캐릭터들이 상이한 타입들의 가상 공간들을 포함하는 복수의 가상 공간들 내에서 표명될 수 있게 하는 정보를 저장할 수 있다. 이는, 사용자가 어느 정도 연속해서 가상 공간들 사이에서 자신의 캐릭터를 전송할 수 있게 할 수 있다. 소정의 캐릭터 레코드(25) 내에 포함된 정보는, 대응하는 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 캐릭터 목록 정보, 캐릭터 인터페이스 정보, 및/또는 대응하는 캐릭터와 관련된 다른 정보 중 하나 이상을 포함할 수 있다.
일부 구현들에서, 캐릭터의 표명은, 캐릭터의 운동 특성, 캐릭터의 크기, 캐릭터의 세기, 캐릭터의 무게, 캐릭터의 비주얼 표현, 캐릭터의 아이덴티티 및/또는 본성, 캐릭터의 상호 작용 특성, 캐릭터의 이동 특성, 캐릭터의 음파 특성, 캐릭터 타입 또는 클래스(예를 들어, 사람, 동물, 외계인, 전사, 성직자, 상인 등), 및/또는 캐릭터 표명의 다른 양상들을 포함할 수 있다. 대응하는 캐릭터 레코드(25) 내에서 표명에 의해 기술된 캐릭터의 상호 작용 특성들은, 캐릭터가 가상 공간들 내의 다른 객체들 및/또는 캐릭터들과 상호 작용하고/상호 작용하거나 그에 의해 영향을 받는 방식, 가상 공간들의 지형학(예를 들어, 지형학의 특징들), 가상 공간들의 보이지 않는 힘들, 및/또는 캐릭터가 가상 공간들의 외부 힘, 객체들, 및/또는 캐릭터들과 상호 작용하는 방식의 다른 특성들과 관련된 정보를 포함할 수 있다. 캐릭터의 상호 작용 특성들은 스크립트 가능 거동들(scriptable behaviors)을 포함할 수 있다. 따라서, 대응하는 캐릭터 레코드(25)의 소정의 캐릭터에 대해 저장된 표명 정보는, 가상 공간 내의 캐릭터의 소정의 스크립트 가능 거동과 연관된 스크립트 및/또는 트리거 중 하나 또는 둘 다를 포함할 수 있다.
일부 구현들에서, 소정의 캐릭터와 연관된 표명 정보의 일부 또는 전부는, 소정의 캐릭터와 소정의 캐릭터가 일부인 다른 캐릭터 그룹 사이에서 공통으로 공유될 수 있다. 이러한 구현들에서, 캐릭터 레코드(25)는, 공통 표명 정보를 포함하는 정보 스토리지(18)의 레코드에 대한 참조에 의해 공통 표명 정보를 포함할 수 있다. 예를 들어, "요정들"이라고 공지된 캐릭터 그룹이 미리 결정된 집합의 상호 작용 특성들로 존재하면, 이러한 상호 작용 특성들은, 요정 캐릭터들에 공통인 미리 결정된 집합의 상호 작용 특성들을 포함하는 정보 스토리지(18)에서 일부 레코드를 참조함으로써 요정 캐릭터에 대응하는 캐릭터 레코드(25)에서 식별될 수 있다.
일반적으로 콘텐츠가 가상 공간들에서 발견되는 경우에서와 같이, 캐릭터와 연관된 특정 콘텐츠(예를 들어, 텍스처, 객체, 캐릭터의 전체 외관, 캐릭터의 모션을 기술하는 스크립트 등)가 참조에 의해서만 대응하는 캐릭터 레코드(25) 내에서 식별될 수 있다. 이러한 콘텐츠는 아마도 콘텐츠가 액세스될 수 있는 액세스 로케이션(예를 들어, URL, 정보 스토리지(18)의 다른 레코드 등)에 의해 참조될 수 있다.
소정의 캐릭터 레코드(25) 내의 표명 정보의 일부 또는 전부는, 복수의 가상 세계들 및/또는 가상 세계 타입들 간에서 영속할 수 있다. 후술되는 바와 같이, 캐릭터 레코드(25) 내의 표명 정보의 일부는 시스템(10)에 의해 제공되는 모든 가상 공간들 사이에서 영속하지 않을 수도 있다.
일부 구현들에서, 캐릭터 파라미터 정보는 하나 이상의 가상 공간들 내에서의 캐릭터의 파라미터들과 관련된 정보를 포함할 수 있다. 비제한적 일례로서, 캐릭터 파라미터 정보는, 캐릭터의 습득된 스킬, 캐릭터의 스킬 레벨, 캐릭터의 상태, 캐릭터 및 하나 이상의 다른 캐릭터들 간의 사회적 연결 또는 친밀감, 캐릭터가 달성한 스코어, 캐릭터에게 제공된 허가(예를 들어, 가상 공간의 제한된 영역에 액세스할 수 있음, 제한된 가상 공간에 액세스할 수 있음 등), 및/또는 캐릭터의 다른 파라미터들 중 하나 이상과 관련된 정보를 포함할 수 있다.
캐릭터 파라미터 정보에 의해 표현된 하나 이상의 파라미터들은 복수의 가상 공간들 및/또는 가상 공간 타입들 간에 영속할 수 있다. 이는, 다른 가상 공간이 상이한 가상 공간 타입이더라도, 하나의 가상 공간에서 얻은 파라미터들이 다른 가상 공간으로 전송될 수 있게 해줄 수 있다. 캐릭터 파라미터 정보에 의해 표현된 하나 이상의 파라미터들은 모든 가상 공간들 및/또는 가상 공간 타입들 간에 영속하지 않을 수도 있다. 그러나, 이러한 구현들에서, 이러한 파라미터들과 관련된 정보는 공간 마다 및/또는 공간 집합 마다(예를 들어, 가상 공간 타입, 공통 체계 또는 주제 등에 따라 그룹화된 공간 집합 마다) 저장될 수 있다. 이는, 캐릭터가, 파라미터의 영속적인 표현을 유지하지 않으면서, 제2 가상 공간(또는 제2 가상 공간 집합)에 들어가기 위해, 소정의 파라미터가 영속하는 제1 가상 공간 및/또는 제1 가상 공간 집합을 떠날 수 있게 할 수 있고, 제1 가상 공간(또는 제1 가상 공간 집합)으로 돌아갈 때, 제1 가상 공간(또는 제1 가상 공간 집합)을 위해 저장된 파라미터의 표현은 캐릭터로 복구된다. 이러한 일부 구현들에서, 캐릭터 레코드(25)는 제1 가상 공간(또는 제1 가상 공간 집합) 및 제2 가상 공간(또는 제2 가상 공간 집합)을 위해 동일한 파라미터(또는 유사한 파라미터들)의 상이한 표현들을 저장할 수 있다.
전술한 바로부터 알 수 있는 바와 같이, 캐릭터의 파라미터들은, 예를 들어, 가상 공간 내의 달성으로 인해, 하나의 가상 공간에서 변경될 수 있다. 비제한적 일례로서, 제1 가상 공간에서, 캐릭터는 다른 가상 공간 및/또는 가상 공간 타입에서 유용할 수 있는 스킬을 획득 및/또는 강화할 수 있다. 이러한 파라미터(즉, 스킬)를 나타내는 캐릭터 파라미터가 복수의 가상 공간들 사이에서 영속할 수 있기 때문에, 스킬이 획득 및/또는 강화된 가상 공간으로부터 스킬이 파라미터인 가상 공간들의 다른 가상 공간으로 캐릭터가 이동할 때, 스킬이 파라미터가 아닌 다른 가상 공간들을 캐릭터가 통과하더라도, 스킬은 획득 및/또는 증가된 레벨로 표현된다. 이는, 획일적인 가상 공간들을 제공하는 종래의 시스템들에는 존재하지 않는 연속성을 시스템(10)에 의해 제공된 가상 공간들에 제공할 수 있다.
일부 구현들에서, 캐릭터 목록 정보는, 캐릭터가 현재 소유한 가상 통화의 양과 관련된 정보, 캐릭터의 소유에 있는 및/또는 제어하에 있는 객체들과 관련된 정보, 및/또는 캐릭터와 연관된 목록과 관련된 다른 정보를 포함할 수 있다. 캐릭터 목록 정보의 적어도 일부는 상이한 가상 공간들 및/또는 가상 공간 타입들 간에 영속할 수 있다. 이는, 캐릭터가 다양한 가상 공간들 간에서 "소유"할 수 있게 해줄 수 있다. 일부의 경우들에서, 캐릭터의 목록의 소정의 객체에 있어서, 캐릭터와 연관된 캐릭터 레코드(25)는 객체의 비교적 완전한 기술(예를 들어, 객체와 연관된 표명 정보 등)을 포함할 수 있다. 일부의 경우들에서, 캐릭터의 목록의 소정의 객체는, 캐릭터 레코드(25)로부터 분리된 객체 레코드와 연관될 수 있으며, 가상 공간들 내에서 객체가 표명될 수 있게 하는 정보를 포함한다. 이러한 경우에, 캐릭터 레코드(25) 및/또는 객체 레코드는, 캐릭터의 목록에서와 같이 객체가 캐릭터와 연관되는 방식으로 서로 참조할 수 있다.
참조용으로 인용된 미국 특허 출원 일련 번호 제12/249,154호에 더 상세히 기술되어 있는 바와 같이, 객체들은 오직 캐릭터 레코드(25) 및/또는 객체 레코드에 저장된 정보에만 기초하여 가상 공간들 내에서 표명될 수 있다. 이는, 다양한 가상 공간들 및/또는 가상 공간 타입들에 걸쳐 대응하는 객체 레코드 및/또는 캐릭터 레코드(25) 내에 포함된 표명 정보에 주로 기초하여 가상 공간들 내에서 소정의 객체가 표명될 수 있도록 객체들을 표명할 때 시스템(10)에 의해 제공되는 플랫폼의 유연성(flexibility)을 인에이블할 수 있다. 다시 말해서, 객체 레코드 및/또는 캐릭터 레코드(25) 내에 저장된 정보는, 공간 내에서 미리 구성되지 않고 (또한 공간이 객체에 대해 미리 구성되지 않고) 시스템(10)에 의해 제공된 가상 공간들로 객체가 표명될 수 있게 해줄 수 있다. 따라서, (객체 레코드와 협력해서 일부 경우에) 캐릭터 레코드(25) 내에 포함된 캐릭터 목록 정보는, 캐릭터 레코드(25)에 대응하는 캐릭터가 시스템(10)에 의해 제공된 가상 공간들의 적어도 실질적인 집합에 객체를 수송(transport)할 수 있게 할 수 있다. 이는, 캐릭터의 커맨드들에 따라 처리, 표명 및/또는 사용될 수 있기 전에 가상 공간 내에서 객체들이 미리 도입될 것을 요구하는 전형적인 시스템들에 비해, 상이한 가상 공간들 및/또는 가상 공간 타입들 간에 캐릭터의 소유를 위한 강화된 레벨의 수송 가능성(transportability)을 제공할 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 사용자가 가상 공간들 내에서 캐릭터를 제어할 수 있도록 하는 사용자에게 제공된 인터페이스와 관련된 정보를 포함할 수 있다. 예를 들어, 소정의 캐릭터 레코드(25)에 포함된 캐릭터 인터페이스 정보는, 미리 결정된 방식으로 소정의 캐릭터 레코드에 대응하는 캐릭터를 제어하기 위해 클라이언트(16)에서 제공된 입력 디바이스를 구성하는 정보를 포함할 수 있다. 입력 디바이스를 구성하는 정보는, 미리 결정된 방식으로 캐릭터를 제어하기 위해 시스템(10)에 입력될 수 있는 커맨드들로의 클라이언트(16)에서 제공된 입력 디바이스의 매핑을 포함할 수 있다. 입력 디바이스는, 예를 들어, 키보드, 마우스, 조이스틱, 트랙볼 및/또는 다른 입력 디바이스들을 포함할 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 캐릭터와 관련된 정보의 디스플레이를 구성하는 정보를 포함할 수 있다. 예를 들어, 캐릭터 인터페이스 정보는, 클라이언트(16)에서 사용자에게 제공된 디스플레이를 구성하는 정보를 포함할 수 있다. 이는, 디스플레이되는 정보의 타입, 디스플레이 상의 정보의 위치, 디스플레이 상의 정보의 크기, 및/또는 캐릭터와 관련된 정보의 디스플레이를 구성하는 다른 방식들 중 하나 이상을 구성하는 것을 포함할 수 있다.
일부 구현들에서, 캐릭터 인터페이스 정보는, 캐릭터와 관련된 그래픽 사용자 인터페이스를 구성하는 정보를 포함할 수 있다. 예를 들어, 그래픽 사용자 인터페이스는 캐릭터와 관련된 정보를 디스플레이할 수 있고/있거나 캐릭터의 제어를 가능하게 할 수 있다. 그래픽 사용자 인터페이스의 구성은, 캐릭터와 관련된 정보의 디스플레이들의 크기 및/또는 로케이션 결정, 그래픽 사용자 인터페이스를 통해 입력될 수 있는 커맨드들과 관련된 정보 결정, 그래픽 사용자 인터페이스를 통해 입력될 수 있는 커맨드들이 선택되는 방식 결정, 및/또는 그래픽 사용자 인터페이스의 다른 파라미터들의 결정 중 하나 이상을 포함할 수 있다.
정보 스토리지(18)가 싱글 엔티티로서 도 1에 도시되어 있지만, 이는 단지 설명을 위한 것이다. 일부 실시예들에서, 정보 스토리지(18)는 복수의 가상 공간들과 관련된 정보의 관리 및 저장을 용이하게 하는 복수의 정보 구조들을 포함한다. 정보 스토리지(18)는 가상 공간들, 시스템(10)의 사용자들, 캐릭터들과 관련된 정보를 저장하기 위한 물리적 스토리지 요소들 및/또는 정보 스토리지(18)가 저장된 정보를 관리, 조직 및 유지할 수 있게 하는 정보 프로세싱 및 스토리지 애셋들을 포함할 수 있다. 정보 스토리지(18)는, 관계 데이터베이스, 객체 지향 데이터베이스, 계층적 데이터베이스, 포스트-관계 데이터베이스(post-relational database), 플랫 텍스트 파일들(flat text files)(로컬로 또는 네트워크를 통해 서빙될 수 있음), XML 파일들(로컬로 또는 네트워크를 통해 서빙될 수 있음), 및/또는 다른 정보 구조들을 포함할 수 있다.
일부 실시예들에서, 정보 스토리지(18)는, 서로 개별적이며 분리되어 있는 복수의 정보 구조들을 포함한다. 이러한 실시예들에서, 시스템(10)은, 정보 스토리지(18)에 포함된 스페이스 레코드들, 사용자 레코드들, 및/또는 캐릭터 레코드들의 로케이션과 관련된 정보(예를 들어, 개별 스페이스 레코드들의 네트워크 및/또는 파일 시스템 어드레스들)를 포함하는 중앙 정보 카탈로그(예를 들어, 스토리지 모듈(12)에 의해 관리됨)를 포함할 수 있다. 일부 실시예들에서, 중앙 정보 카탈로그는, 사용자들이 (예를 들어, 서버(14)와 유사한 선택된 가상 공간의 인스턴스를 실행하는 서버를 구축하기 위해) 선택된 가상 공간의 인스턴스들을 개시할 수 있게 하고, 사용자들에 대한 시스템(10)의 액세스를 허가할 수 있게 하고, 가상 공간들의 인스턴스들 내에 캐릭터들을 표명할 수 있게 하고, 및/또는 시스템(10) 내의 다른 기능을 수행할 수 있게 하는 정보의 클리어링 하우스(clearing house)를 형성할 수 있다. 따라서, 중앙 정보 카탈로그 내에 저장된 정보에 대한 액세스가 특권(privileges)(예를 들어, 화폐 지불을 통해 획득됨, 관리 특권, 이전 게임-플레이를 통해 획득됨, 커뮤니티 멤버십을 통해 획득됨 등)에 기초하여 사용자들 및/또는 서버들에 제공될 수 있다.
서버 통신 모듈(20)은 정보 스토리지(18) 및 서버(14) 간의 통신을 용이하게 할 수 있다. 일부 실시예들에서, 서버 통신 모듈(20)은, 정보 스토리지(18) 및 서버(14) 간의 통신을 포맷함으로써 이 통신을 가능케 한다. 이는, 정보 스토리지(18)로부터 서버(14)로 송신된 통신을 위해, 정보 스토리지(18)에 저장된 정보를 전달하는 마크업 요소들(예를 들어, "태그들")을 생성하고, 생성된 마크업 요소들을 서버(14)에 송신하는 것을 포함할 수 있다. 서버(14)로부터 정보 스토리지(18)로 송신된 통신을 위해, 서버 통신 모듈(20)은 서버(14)로부터 스토리지 모듈(12)로 송신된 마크업 요소들을 수신할 수 있으며, 정보 스토리지(18)에 저장하기 위해 정보를 다시 포맷할 수 있다.
서버(14)는 스토리지 모듈(12)로부터 원격으로 제공될 수 있다. 서버(14) 및 스토리지 모듈(12) 간의 통신은 하나 이상의 통신 매체를 통해 달성될 수 있다. 예를 들어, 서버(14) 및 스토리지 모듈(12)은 무선 매체를 통해, 하드-와이어드 매체(hard- wired medium)를 통해, 네트워크(예를 들어, 무선 또는 유선)를 통해, 및/또는 다른 통신 매체를 통해 통신할 수 있다. 일부 실시예들에서, 서버(14)는 통신 모듈(26), 인스턴스화 모듈(28), 뷰 모듈(30), 캐릭터 모듈(31), 및/또는 다른 모듈들을 포함할 수 있다. 모듈들(26, 28, 30, 31)은 소프트웨어; 하드웨어; 펌웨어; 소프트웨어, 하드웨어 및/또는 펌웨어의 조합; 및/또는 다른 방법으로 구현될 수 있다. 모듈들(26, 28, 30 및/또는 31)이 싱글 유닛(서버(14)) 내에 함께 위치한 것으로 도 1에 도시되어 있지만, 일부 구현들에서, 서버(14)는 다수의 유닛들을 포함할 수 있으며, 모듈들(26, 28, 30 및/또는 31)은 다른 모듈들과 원격으로 위치할 수 있음을 알 것이다.
통신 모듈(26)은 스토리지 모듈(12) 및/또는 클라이언트(16)와 통신하도록 구성될 수 있다. 스토리지 모듈(12) 및/또는 클라이언트(16)와의 통신은, 마크업 언어의 마크업 요소들을 송신 및/또는 수신하는 것을 포함할 수 있다. 통신 모듈(26)이 수신한 마크업 요소들은 서버(14)의 다른 모듈들에 의해 구현될 수 있으며, 또는 서버(14)(서버(14)가 중간 매체로서 서빙함)를 통해 스토리지 모듈(12)과 클라이언트(16) 사이에서 전달될 수 있다. 통신 모듈(26)에 의해 스토리지 모듈(12) 또는 클라이언트(16)로 송신되는 마크업 요소들은 스토리지 모듈로부터 클라이언트(16)(또는 그 반대)로 통신되는 마크업 요소들을 포함할 수 있으며, 또는 마크업 요소들은 서버(14)의 다른 모듈들에 의해 생성된 마크업 요소들을 포함할 수 있다.
인스턴스화 모듈(28)은, 서버(14)에 존재하는 가상 공간의 인스턴스(32) 등의 하나 이상의 가상 공간들의 하나 이상의 인스턴스들을 실행하도록 구성될 수 있다. 인스턴스화 모듈(28)은 스토리지 모듈(12)로부터 마크업 요소 형태로 수신된 정보에 따라 가상 공간의 인스턴스(32)를 실행할 수 있다. 인스턴스화 모듈(28)은 마크업 요소 형태로 전달된 정보에 기초하여 가상 공간들의 인스턴스들을 실행하도록 구성된 애플리케이션을 포함할 수 있다. 애플리케이션은 가상 공간의 구성의 다양한 양상들을 기술하는 정보(예를 들어, 표명 정보, 스페이스 파라미터 정보 등)의 로컬 소스(서버(14)에 로컬임)에 액세스하지 않고, 또는 가상 공간의 실행을 개시할 때 가상 공간의 구성의 그러한 양상들에 대해 가정하지 않고, 가상 공간의 인스턴스의 실행을 개시할 수 있다. 대신, 이러한 정보는 스토리지 모듈(12)로부터 서버(14)에 통신된 마크업 요소들로부터 인스턴스화 모듈(28)에 의해 획득될 수 있다. 이는, 서버에서 실행중인 애플리케이션이 가상 공간의 인스턴스를 실행하고, 표명 정보 및/또는 스페이스 파라미터 정보 등의 (예를 들어, "World of Warcraft"에서) 가상 공간의 양상들을 기술하고, 또는 그러한 양상들에 대해 가정하는 시스템들에 대해 하나 이상의 개선점들을 제공할 수 있다. 예를 들어, 인스턴스화 모듈(28)에 포함된 애플리케이션은 더 광범위한 "타입들"의 가상 공간들의 인스턴스들(예를 들어, 가상 세계, 게임, 3D 공간, 2D 공간, 상이한 뷰들의 공간, 1인칭 공간, 새의 눈 공간, 실시간 공간, 턴 베이스 공간 등)을 실행할 수 있다.
인스턴스(32)는 인스턴스화 모듈(28)에 의해 서버(14)에서 실행되는 가상 공간의 시뮬레이션으로서 특징화될 수 있다. 시뮬레이션은, 가상 공간에 대응하는 지형학, 표명, 및 스페이스 파라미터 정보에 따라 가상 공간 내의 객체, 보이지 않는 힘, 및 지형학의 위치, 구조, 및 표명을 실시간으로 결정하는 것을 포함할 수 있다. 전술한 바와 같이, 인스턴스(32)에서 구현된 가상 공간을 구성하는 콘텐츠의 다양한 일부분들은 참조에 의해 스토리지 모듈(12)로부터 수신된 마크업 요소들에서 식별될 수 있다. 이러한 구현들에서, 인스턴스화 모듈(28)은 인스턴스(32)의 콘텐츠의 본성을 고려하기 위해 식별된 액세스 로케이션(예를 들어, 전술한 네트워크 애셋(22))에서 콘텐츠에 액세스하도록 구성될 수 있다.
인스턴스(32)가 서버(14)에서 인스턴스화 모듈(28)에 의해 유지되고, 가상 공간 내의 객체들, 보이지 않는 힘들, 및 지형학의 위치, 구조 및 표명이 변하기 때문에, 인스턴스화 모듈(28)은 인스턴스(32)의 현존 상태와 관련된 정보를 저장하도록 인스턴스 메모리 모듈(34)을 구현할 수 있다. 인스턴스 메모리 모듈(34)은 서버(14)에 로컬로(예를 들어, 서버(14)와 통합하여, 서버(14)와 로컬로 연결됨 등) 제공될 수 있으며, 또는 인스턴스 메모리 모듈(34)은 서버(14)로부터 원격으로 위치할 수 있으며, 동작 통신 링크가 그 사이에 형성될 수 있다.
뷰 모듈(30)은 가상 공간의 뷰를 결정하기 위해 인스턴스(32)를 구현하도록 구성될 수 있다. 가상 공간의 뷰는 고정 로케이션으로부터일 수 있으며, 또는 동적일 수 있다(예를 들어, 객체를 추적할 수 있음). 일부 구현들에서, 클라이언트(16)와 연관된 캐릭터(예를 들어, 아바타)가 인스턴스(32) 내에 포함될 수 있다. 이러한 구현들에서, 인스턴스(32) 내의 캐릭터의 로케이션은 뷰 모듈(30)에 의해 결정된 뷰(예를 들어, 캐릭터의 위치로 추적, 캐릭터의 관점으로부터 획득됨 등)에 영향을 줄 수 있다. 뷰 모듈(30)에 의해 결정된 뷰는 다양한 상이한 관점들(예를 들어, 새의 눈 뷰, 고도 뷰, 1인칭 뷰 등)에 대해 결정될 수 있다. 뷰는 2차원 뷰 또는 3차원 뷰일 수 있다. 뷰의 이들 및/또는 다른 양상들은 가상 공간의 스페이스 레코드(24)에 저장되고 마크업 요소들을 통해 (예를 들어, 스페이스 파라미터 정보로서) 스토리지 모듈(12)로부터 제공된 정보에 기초하여 가상 공간에 대해 결정될 수 있다. 뷰 결정은, 뷰의 렌더링에 존재하는 객체들, 효과 및/또는 지형학의 일부분들의 아이덴티티, 음영, 크기(예를 들어, 관점으로 인함), 모션(motion) 및/또는 위치의 결정을 포함할 수 있다.
뷰 모듈(30)은 뷰의 결정에 기초하여 뷰를 기술하는 복수의 마크업 요소들을 생성할 수 있다. 복수의 마크업 요소들은 뷰의 렌더링에 존재해야 하는 객체들, 효과 및/또는 지형학의 일부분들의 아이덴티티, 음영, 크기(예를 들어, 관점으로 인함), 및/또는 위치를 기술할 수 있다. 마크업 요소들은, 마크업 요소들에 제공된 콘텐츠의 속성들에 따라 마크업 요소들에서 식별된 콘텐츠를 간단히 어셈블함으로써 사용자에 의한 뷰잉을 위해 뷰가 포맷될 수 있도록 뷰를 "완전히(completely)" 기술할 수 있다. 이러한 구현들에서, 콘텐츠의 차후 프로세싱(예를 들어, 모션 경로 결정, 결단, 스케쥴링, 트리거링 등) 없이, 가상 공간의 뷰의 디스플레이를 달성하는데 어셈블리만으로도 충분할 수 있다.
일부 실시예들에서, 뷰를 기술하는 뷰 모듈(30)에 의해 생성된 마크업 요소들은 참조에 의해서만 뷰에 포함되는 콘텐츠(예를 들어, 비주얼 콘텐츠, 오디오 콘텐츠 등)를 식별한다. 예를 들어, 스토리지 모듈(12)로부터 서버(14)에 송신된 마크업 요소들의 경우에서와 같이, 뷰 모듈(30)에 의해 생성된 마크업 요소들은 액세스 로케이션을 참조해서 콘텐츠를 식별할 수 있다. 액세스 로케이션은 네트워크 로케이션을 포인팅하는 URL을 포함할 수 있다. 액세스 로케이션에 의해 식별된 네트워크 로케이션은 네트워크 애셋(예를 들어, 네트워크 애셋(22))과 연관될 수 있다. 예를 들어, 액세스 로케이션은, 네트워크 애셋(22)이 액세스될 수 있는 네트워크 URL 어드레스(예를 들어, 인터넷 URL 어드레스 등)를 포함할 수 있다.
각종 실시예들에 따라, 뷰를 생성할 때, 뷰 모듈(30)은 뷰 모듈(30)에 의해 결정된 뷰들에 포함되지만 서버(14)로부터 원격으로 저장된 콘텐츠(예를 들어, 뷰 모듈(30)에 의해 생성된 마크업 요소들에 참조된 콘텐츠)의 각종 양상들을 관리할 수 있다. 이러한 관리는 클라이언트(16)가 사용자에게 (예를 들어, 디스플레이 등을 통해) 콘텐츠를 전달할 수 있게 해주기 위해 서버(14)로부터 원격으로 저장된 콘텐츠를 다시 포맷하는 것을 포함할 수 있다. 예를 들어, 일부 구현들에서, 클라이언트(16)는 비교적 제한된 플랫폼(예를 들어, 제한된 프로세싱, 스토리지 및/또는 디스플레이 능력들(capabilities)을 갖는 휴대형 전자 디바이스)에서 실행될 수 있다. 서버(14)는 (예를 들어, 클라이언트(16)로부터 서버(14)로 통신을 통해) 플랫폼의 제한된 능력들을 통지받을 수 있으며, 응답해서, 뷰 모듈(30)은 클라이언트(16)를 실행(예를 들어, 비주얼 콘텐츠 단순화, 일부 비주얼 콘텐츠 제거, 3차원으로부터 2차원으로 다시 포맷 등)하는 플랫폼에 의해 사용자에게 전달될 수 있는 형태로 콘텐츠를 다시 포맷하기 위해 네트워크 애셋(22)에서 원격으로 저장된 콘텐츠에 액세스할 수 있다. 이러한 구현들에서, 다시 포맷된 콘텐츠는 콘텐츠의 이전 버전을 오버라이팅(over-writing)함으로써 네트워크 애셋(22)에 저장되고, 콘텐츠의 이전 버전과는 별개로 네트워크 애셋(22)에 저장되며, 네트워크 애셋(22)과 별도의 네트워크 애셋(36)에 저장될 수 있으며, 및/또는 달리 저장될 수도 있다. 다시 포맷된 콘텐츠가 콘텐츠의 이전 버전과는 별개로 저장되는 구현들(예를 들어, 네트워크 애셋(22)에 개별적으로 저장됨, 네트워크 애셋(24)에 저장됨, 서버(14)에 의해 로컬로 캐시됨 등)에서, 클라이언트(16)를 위해 뷰 모듈(30)에 의해 생성된 마크업 요소들은 다시 포맷된 콘텐츠의 액세스 로케이션을 반영한다.
전술한 바와 같이, 일부 실시예들에서, 뷰 모듈(30)은, 클라이언트(16)의 능력들이 소정의 방식으로 제한될 수도 있음(예를 들어, 스크린 크기의 제한, 스크린 해상도 제한, 오디오 능력 제한, 정보 통신 속도 제한, 프로세싱 능력 제한 등)을 나타내는 클라이언트(16)로부터의 통신에 기초하여 인스턴스(32)의 뷰의 하나 이상의 양상들을 조정할 수 있다. 이러한 실시예들에서, 뷰 모듈(30)은 클라이언트(16)에 의해 서버(14)에 통신된 능력들(및/또는 그의 부족)에 기초하여 뷰의 복잡성을 감소(또는 증가)시키는 송신용 마크업 요소들을 생성할 수 있다. 예를 들어, 뷰 모듈(30)은 마크업 요소들로부터 오디오 콘텐츠를 제거할 수 있으며, 뷰 모듈(30)은 인스턴스(32)의 (3차원이 아닌) 2차원 뷰를 제공하도록 마크업 요소들을 생성할 수 있고, 뷰 모듈(30)은 뷰의 하나 이상의 객체들의 모션을 구술하는 정보를 감소, 최소화 또는 제거할 수 있으며, 뷰 모듈(30)은 (예를 들어, 관점 뷰에서 새의 눈 뷰로) 뷰의 뷰포인트를 변경할 수 있으며, 및/또는 다른 방식으로 클라이언트(16)를 수용(accommodate)하도록 마크업 요소들을 생성할 수 있다. 일부 구현들에서, 클라이언트(16)에 대한 이러한 타입들의 수용은 클라이언트(16)에 의한 클라이언트 능력들의 통신에 기초할 뿐만 아니라 또는 그 대신 클라이언트(16)에서 사용자가 입력한 커맨드들에 응답해서 서버(14)에 의해 행해질 수 있다. 예를 들어, 사용자는, 뷰를 디스플레이할 때 클라이언트(16)의 성능의 품질을 향상시키기 위해, 다른 기능들을 위해 클라이언트(16)에서의 프로세싱 및/또는 통신 능력들을 해방(free up)시키기 위해, 및/또는 다른 이유로, 뷰를 디스플레이함으로써 야기된 클라이언트(16)에 대한 로드를 감소시키라는 커맨드들을 입력할 수 있다.
전술한 설명으로부터, 뷰 모듈(30)이 클라이언트(16)에 대한 뷰를 기술하는 마크업 요소들을 "커스터마이즈"하기 때문에, 동일한 뷰의 복수의 상이한 버전들이 마크업 요소들로 기술될 수 있으며, 사용자가 입력한 상이한 능력들, 세팅들 및/또는 요건들로 상이한 클라이언트들에게 송신될 수 있음이 명백하다. 뷰 모듈(30)에 의한 커스터마이제이션은 더 다양한 클라이언트들에 의해 구현되도록 시스템(10)의 기능을 강화할 수 있으며, 및/또는 다른 개선점들을 제공할 수 있다.
캐릭터 모듈(31)은, (예를 들어, 클라이언트(16)를 통해) 사용자에 의해 인스턴스(32)에 도입된 캐릭터와 관련된 정보를 수신할 수 있다. 정보는, 인스턴스(32) 및/또는 그의 뷰를 생성할 때 인스턴스화 모듈(28) 및/또는 뷰 모듈(30)에 의해 구현될 수 있다. 수신된 정보는 클라이언트(16) 및/또는 정보 스토리지(18)로부터 수신된 정보를 포함할 수 있다. 예를 들어, 인스턴스(32)에 "들어가기" 위해, 클라이언트(16)는 인스턴스(32)에 대한 액세스를 위한 요청을 서버(14)에 송신할 수 있다. 요청은, 캐릭터 모듈(31)이 사용자의 표현으로서 인스턴스(32) 내에서 표명되어야 하는 캐릭터를 결정할 수 있게 하는 식별을 포함할 수 있다. 식별은, 캐릭터와 연관된 사용자, 사용자에 대응하는 사용자 레코드, 캐릭터, 및/또는 캐릭터에 대응하는 캐릭터 레코드 중 하나 이상을 식별하는 정보일 수 있다. 캐릭터 모듈(31)에 의한 캐릭터의 결정은, 캐릭터와 관련된 정보가 액세스될 수 있는 캐릭터 레코드(25)의 식별을 포함할 수 있다. 그 후, 캐릭터 모듈(31)은, 인스턴스화 모듈(28)이 인스턴스(32) 내에서 캐릭터를 표명할 수 있게 하고, 및/또는 뷰 모듈(30)이 클라이언트로의 송신을 위해 인스턴스(32)의 적합한 뷰를 결정할 수 있게 하는 정보를 적합한 캐릭터 레코드(25)로부터 획득할 수 있다.
전술한 바와 같이, 캐릭터 모듈(31)에 의해 액세스되는 캐릭터 레코드(25) 내의 정보는, 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 캐릭터 목록 정보, 캐릭터 인터페이스 정보, 및/또는 캐릭터와 관련된 다른 정보 중 하나 이상을 포함할 수 있다. 캐릭터 레코드(25) 내의 정보의 적어도 일부는 인스턴스(32) 및 다른 가상 공간들의 인스턴스들 간에 영속할 수 있다. 그러나, 이는 캐릭터 레코드(25) 내의 일부 정보에 대해 항상 그런 것은 아니다. 캐릭터 레코드 내의 일부 정보는 인스턴스(32)의 가상 공간(및/또는 인스턴스(32)의 가상 공간이 일부분인 일부 가상 공간 그룹)에 특정할 수 있다. 예를 들어, 캐릭터의 비주얼 표현의 양상들은 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터의 목록의 객체들 및/또는 통화는 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터의 스코어, 스킬, 스킬 레벨, 허가, 사회적 연결, 및/또는 다른 파라미터들은 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있고/있거나, 캐릭터 레코드(25)에 포함된 다른 정보는 가상 공간 및/또는 가상 공간 그룹에 특정할 수 있다.
일부 구현들에서, 캐릭터 모듈(31)은, 인스턴스(32) 내에서 표명될 캐릭터와 관련된 정보를 포함하는 캐릭터 레코드(25)를 식별하는 요청을 스토리지 모듈(12)에 송신함으로써 캐릭터 레코드(25)로부터 정보를 획득할 수 있다. 이 요청은, 인스턴스(32)의 가상 공간의 식별을 포함할 수 있다. 요청에 응답해서, 스토리지 모듈(12)은 캐릭터 레코드(25) 및/또는 그의 일부 부분(예를 들어, 요청에서 식별된 가상 공간과 관련된 정보를 포함함)을 다시 캐릭터 모듈(31)에 송신할 수 있다.
본 발명의 각종 실시예들에 따라, 캐릭터가 제1 시간 동안 가상 공간에 도입되면(예를 들어, 가상 공간의 인스턴스에 표명되면), 캐릭터 레코드(25)는 캐릭터를 표명하는데 필요한 모든 정보를 포함하지 않을 수 있다. 예를 들어, 가상 공간은, 캐릭터 레코드(25) 내의 일부 정보가 가상 공간에 특정하도록 구성될 수 있다. 캐릭터가 가상 공간에 도입되지 않았으면, 이 정보는 아직 캐릭터 레코드(25)에 들어가지 않았을 수 있다. 이러한 경우, 캐릭터 모듈(31)은, 가상 공간의 캐릭터를 사용자가 구성할 수 있게 할 수 있다.
비제한적 일례로서, 가상 공간은 거기에 존재하는 캐릭터들의 비주얼 표현들의 양상들을 특징으로 할 수 있다(예를 들어, 특별한 옷을 가질 수 있음, 캐릭터들이 하나 이상의 특정 타입의 창조물들(예를 들어, 용, 요정, 마법사, 군인 등) 중 하나의 창조물로 표현되도록 요구할 수 있음 등). 가상 공간의 인스턴스로 들어갈 때, 캐릭터 모듈(31)은, 캐릭터의 비주얼 표현의 이들 양상들에 대한 디폴트 값들을 할당할 수 있다. 이들 디폴트 값들은 캐릭터에 대응하는 캐릭터 레코드(25)에 기록될 수 있다. 캐릭터 모듈(31)은, (디폴트 값들이 아닌) 커스터마이즈 가능한 방식으로 사용자의 캐릭터의 비주얼 표현의 이들 양상들을 사용자가 변경 및/또는 구성할 수 있게 하는 인터페이스를 (예를 들어, 클라이언트(16)를 통해) 사용자에게 제시할 수 있다. 비주얼 표현의 이들 커스터마이즈된 양상들은 캐릭터 레코드(25)에 기록될 수 있다. 캐릭터 레코드(25)에 구성된 정보를 기록함으로써(디폴트이든지 또는 커스터마이즈이든지), 캐릭터가 가상 공간에 차후에 들어가기 위해 재구성될 필요가 없도록, 캐릭터가 가상 세계의 인스턴스를 떠나고 나서 어떤 장래의 시간에 가상 세계에 돌아가는 경우, 정보가 검색될 수 있게 한다.
가상 공간(또는 가상 공간들의 이러한 그룹이 일부인 가상 공간들의 일부 그룹)에 특정한 캐릭터의 비주얼 표현의 양상들을 구성하고 캐릭터 레코드(25)에 기록하는 것은 단지 설명을 위한 것임을 알 것이다. 캐릭터와 관련된 다른 정보(예를 들어, 다른 표명 정보, 캐릭터 목록 정보, 캐릭터 파라미터 정보, 캐릭터 인터페이스 정보 등)는, 전술한 캐릭터의 비주얼 표현의 양상들의 구성 및 저장과 실질적으로 동일하거나 유사한 방식으로 제1 시간 동안 가상 공간에 캐릭터가 들어갈 때 (디폴트 및/또는 커스터마이제이션에 기초하여) 캐릭터 모듈(31)에 의해 결정될 수 있다.
일부 구현들에서, 캐릭터와 관련된 정보는 인스턴스(32) 내에 캐릭터가 존재하는 동안 변경 및/또는 발전할 수 있다. 예를 들어, 캐릭터의 외관은 캐릭터의 성숙(maturation)을 나타내기 위해 시간이 지남에 따라 변할 수 있고/있거나, 캐릭터가 하나 이상의 스킬들을 습득 및/또는 강화할 수 있고/있거나, 캐릭터가 통화 및/또는 객체들을 획득할 수 있고/있거나, 캐릭터와 연관된 스코어가 변경될 수 있고/있거나, 캐릭터와 연관된 표명 정보가 변할 수 있고/있거나(예를 들어, 캐릭터가 성장하고, 손상되며, 더 강해지는 등), 캐릭터는 허가를 얻을 수 있고/있거나, 캐릭터는 새로운 사회적 연결을 만들거나 기존의 사회적 연결을 강화할 수 있고/있거나, 캐릭터와 연관된 다른 정보가 변할 수 있다. 이러한 변경은 인스턴스(32) 내에서 자발적으로 발생할 수 있고/있거나(예를 들어, 인스턴스(32)는 캐릭터가 시간이 지남에 따라 성숙하게 할 수 있음), 인스턴스(32) 내의 게임 플레이에 의해 야기될 수 있고/있거나, (클라이언트(16)를 통한) 사용자의 커스터마이제이션 및/또는 구성에 의해 야기될 수 있고/있거나, 다른 원인들을 가질 수 있다. 캐릭터 모듈(31)은 캐릭터 레코드(25)에서의 이러한 변경들의 스토리지를 관리할 수 있다. 이러한 변경은 캐릭터 레코드(25) 내에 저장될 수 있어서, 캐릭터가 인스턴스(32)를 떠나서 다른 가상 공간에 들어가면, 인스턴스(32) 및 다른 가상 공간 간에 영속하는 캐릭터와 관련된 정보는 다른 가상 공간들에서 변경들을 반영한다. 인스턴스(32) 내에서 변경되는 캐릭터와 관련된 정보가 인스턴스(32) 및 다른 가상 공간 간에 영속하지 않으면, 변경된 정보가 영속하는 인스턴스(32) 및/또는 일부 다른 가상 공간의 인스턴스에 캐릭터가 다시 들어갈 때까지, 이들 변경은 캐릭터 레코드(25) 내에 저장된다.
일부 실시예들에서, 클라이언트(16)는 뷰 디스플레이(38), 사용자 인터페이스 디스플레이(40), 입력 인터페이스(42), 및/또는 사용자가 가상 공간과 상호 작용할 수 있게 하는 다른 인터페이스를 포함하는 인터페이스를 사용자에게 제공한다. 클라이언트(16)는 서버 통신 모듈(44), 뷰 디스플레이 모듈(46), 인터페이스 모듈(48), 및/또는 다른 모듈들을 포함할 수 있다. 클라이언트(16)는 모듈들(44, 46)을 실행하는 프로세서, 사용자에게 디스플레이들(38, 40)을 전달하는 디스플레이 디바이스를 포함하고, 사용자가 시스템(10)에 정보를 입력할 수 있도록 사용자에게 입력 인터페이스(42)(예를 들어, 키보드, 키패드, 스위치, 노브, 레버, 터치패드, 터치스크린, 버튼, 조이스틱, 마우스, 트랙볼 등)를 제공하는 컴퓨팅 플랫폼에서 실행될 수 있다. 플랫폼은 데스크탑 컴퓨팅 시스템, 게임 시스템, 또는 다른 휴대형 시스템들(예를 들어, 모바일 폰, 퍼스널 디지털 어시스턴트, 핸드헬드 컴퓨터, 랩탑 컴퓨터 등)을 포함할 수 있다. 일부 실시예들에서, 클라이언트(16)는 (예를 들어, 웹 서비스로서) 분산 방식으로 형성될 수 있다. 일부 실시예들에서, 클라이언트(16)는 서버로 형성될 수 있다. 이러한 실시예들에서, 서버(14)에서 인스턴스된 소정의 가상 공간은 다른 가상 공간(서버(14)가 제1 소정의 가상 공간의 뷰들을 결정할 때 클라이언트가 됨)을 제시하는 하나 이상의 객체들을 포함할 수 있다.
서버 통신 모듈(44)은 서버(14)에서의 인스턴스(32)의 실행과 관련된 정보를 서버(14)로부터 수신하도록 구성될 수 있다. 예를 들어, 서버 통신 모듈(44)은 스토리지 모듈(12)(예를 들어, 서버(14)를 통해), 뷰 모듈(30), 및/또는 시스템(10)의 다른 컴포넌트들 또는 모듈들에 의해 생성된 마크업 요소들을 수신할 수 있다. 마크업 요소들에 포함된 정보는, 예를 들어, 가상 공간의 인스턴스(32)의 뷰를 기술하는 뷰 정보, 클라이언트(16)에 의해 사용자에게 제공되는 인터페이스의 각종 양상들을 기술하는 인터페이스 정보, 및/또는 다른 정보를 포함할 수 있다. 서버 통신 모듈(44)은, 예를 들어, WAP, TCP, UDP 및/또는 다른 프로토콜들과 같은 하나 이상의 프로토콜들을 통해 서버(14)와 통신할 수 있다. 서버 통신 모듈(44)에 의해 구현된 프로토콜은 서버 통신 모듈(44)과 서버(14) 간에 교섭될 수 있다.
뷰 디스플레이 모듈(46)은 뷰 디스플레이(38)에서의 디스플레이를 위해 서버(14)로부터 수신된 마크업 요소들에 의해 기술된 뷰를 포맷하도록 구성될 수 있다. 마크업 요소들에 의해 기술된 뷰를 포맷하는 것은, 마크업 요소들에 포함된 뷰 정보를 어셈블하는 것을 포함할 수 있다. 이는, 차후 프로세싱(예를 들어, 모션 경로 결정, 결단, 스케쥴링, 트리거링 등) 없이, 마크업 요소들에 지시된 속성들에 따라 마크업 요소들에 지시된 콘텐츠를 제공하는 것을 포함할 수 있다. 전술한 바와 같이, 일부 구현들에서, 마크업 요소들에 지시된 콘텐츠는 참조에 의해서만 지시될 수 있다. 이러한 구현들에서, 뷰 디스플레이 모듈(46)은, 마크업 요소들에 제공된 액세스 로케이션들(예를 들어, 네트워크 애셋(22 및/또는 36), 또는 서버(14)에 로컬로 캐시된 객체들을 참조하는 액세스 로케이션들)에서 콘텐츠에 액세스할 수 있다. 이러한 일부 구현들에서, 뷰 디스플레이 모듈(46)은, 차후 뷰들이 어셈블될 수 있는 속도를 향상시키기 위해, 액세스되는 하나 이상의 콘텐츠가 클라이언트(16)에 로컬로 캐시되게 할 수 있다. 마크업 요소들에서 제공된 뷰 정보를 어셈블함으로써 포맷된 뷰는 그 후 뷰 디스플레이(38)를 통해 사용자에게 전달될 수 있다.
전술한 바와 같이, 일부 구현들에서, 클라이언트(16)의 능력들은 상대적으로 제한될 수 있다. 이러한 일부 구현들에서, 클라이언트(16)는 이러한 제한들을 서버(14)에 통신할 수 있으며, 클라이언트(16)가 수신한 마크업 요소들은 통신된 제한들을 수용하도록 서버(14)에 의해 생성될 수 있다. 그러나, 이러한 일부 구현들에서, 클라이언트(16)는 서버(14)로부터 수신된 마크업 요소들에 포함된 콘텐츠 모두를 사용자에게 전달하는 것을 금지하는 제한들의 일부 또는 전부를 통신하지 않을 수도 있다. 유사하게, 서버(14)가 클라이언트(16)로의 송신을 위한 마크업 요소들을 생성하기 때문에, 서버(14)는 클라이언트(16)에 의해 통신된 모든 제한들을 수용하지 않을 수도 있다. 이러한 인스턴스들에서, 뷰 디스플레이 모듈(46)은 뷰를 포맷할 때 마크업 요소들에 포함된 콘텐츠를 제외 또는 변경시키도록 구성될 수 있다. 예를 들어, 클라이언트(16)가 사용자에게 오디오 콘텐츠를 제공하기 위한 능력을 포함하지 않으면, 뷰 디스플레이 모듈(46)은 오디오 콘텐츠를 무시할 수 있다. 다른 일례로서, 클라이언트(16)가 뷰에서 객체들의 이동을 전달하기 위한 프로세싱 및/또는 디스플레이 리소스들을 갖지 않으면, 뷰 디스플레이 모듈(46)은 마크업 요소들에 포함된 모션 정보에 의해 구술된 모션을 제한 및/또는 무시할 수 있다.
인터페이스 모듈(48)은 클라이언트(16)에 의해 사용자에게 제공된 인터페이스의 각종 양상들을 구성하도록 구성될 수 있다. 예를 들어, 인터페이스 모듈(48)은 마크업 요소들에서 제공된 인터페이스 정보에 따라 사용자 인터페이스 디스플레이(40) 및/또는 입력 인터페이스(42)를 구성할 수 있다. 사용자 인터페이스 디스플레이(40)는 사용자에게 사용자 인터페이스의 디스플레이를 가능케 할 수 있다. 일부 구현들에서, 사용자 인터페이스 디스플레이(40)는 뷰 디스플레이(38)로서 동일한 디스플레이 디바이스(예를 들어, 동일한 스크린)에서 사용자에게 제공될 수 있다. 전술한 바와 같이, 인터페이스 모듈(48)에 의해 사용자 인터페이스 디스플레이(40)에서 구성된 사용자 인터페이스는, 사용자가 가상 공간과 상호 작용하는 다른 사용자들에게 통신을 입력할 수 있게 해주며, 가상 공간 내의 하나 이상의 객체들에 의해 실행되는 액션들을 입력할 수 있게 해주고, 단순히 공간을 뷰잉함으로부터 명백해질 수 없는 가상 공간의 상태들에 대한 정보를 사용자에게 제공하며, 공간 내의 하나 이상의 객체들에 대한 정보를 사용자에게 제공하고, 사용자와 연관되는 인스턴스(32)에 캐릭터와 관련된 정보에 대한 요청 및 커맨드들을 입력할 수 있게 해주고, 및/또는 다른 상호 작용 특성들을 사용자를 위해 제공할 수 있다. 일부 구현들에서, 사용자 인터페이스의 양상들을 구술하는 마크업 요소들은 마크업 요소들을 통해 스토리지 모듈(12)로부터 서버(14)에 전달된 정보에 기초하여 (예를 들어, 인스턴스(32)의 개시시) 스토리지 모듈(12)에서 생성된 마크업 요소들 및/또는 서버(14)에 의해(예를 들어, 뷰 모듈(30)에 의해) 생성된 마크업 요소들을 포함할 수 있다. 이 정보는 스토리지 모듈(12)에 저장된 스페이스 레코드(24), 캐릭터 레코드(25) 및/또는 다른 레코드들(예를 들어, 사용자 레코드들) 내로부터의 정보를 포함할 수 있다.
일부 구현들에서, 인터페이스 모듈(48)은 마크업 요소들을 통해 서버(14)로부터 수신된 정보에 따라 입력 인터페이스(42)를 구성할 수 있다. 예를 들어, 인터페이스 모듈(48)은 마크업 요소들을 통해 서버(14)로부터 클라이언트(16)에게 전달된 미리 결정된 매핑에 기초하여 시스템(10)에 입력될 커맨드들에 사용자에 의한 입력 인터페이스(42)의 조작을 매핑할 수 있다. 미리 결정된 매핑은, 예를 들어, 키 맵 및/또는 다른 타입들의 인터페이스 매핑들(예를 들어, 입력들의 마우스, 조이스틱, 트랙볼, 및/또는 다른 입력 디바이스들로의 매핑)을 포함할 수 있다. 입력 인터페이스(42)가 사용자에 의해 조작되면, 인터페이스 모듈(48)은 사용자에 의한 입력 인터페이스(42)의 조작에 대응하는 적합한 커맨드(또는 커맨드들)을 결정하기 위해 매핑을 구현할 수 있다. 유사하게, (예를 들어, 커맨드 라인 프롬프트를 통해) 사용자 인터페이스 디스플레이(40)에 사용자가 입력한 정보는 인터페이스 모듈(48)에 의해 시스템(10)을 위한 적합한 커맨드로 포맷될 수 있다. 일부 구현들에서, 특정 커맨드들의 유용성, 및/또는 이러한 커맨드들의 매핑은 (예를 들어, 로그인으로부터 결정된 바와 같이) 클라이언트(16)를 조작하는 사용자와 연관된 특권들에 기초하여 제공될 수 있다. 예를 들어, 관리 특권, 프리미엄 특권(예를 들어, 화폐 지불을 통해 획득됨), 어드밴스 특권(예를 들어, 이전 게임-플레이를 통해 획득됨), 및/또는 다른 특권들을 가진 사용자가 강화된 집합의 커맨드들에 액세스할 수 있게 될 수 있다. 인터페이스 모듈(48)에 의해 포맷된 이러한 커맨드들은 서버 통신 모듈(44)에 의해 서버(14)에 통신될 수 있다.
(예를 들어, 통신 모듈(26)을 통해) 사용자가 입력한 커맨드들을 포함하는 커맨드들을 클라이언트(16)로부터 수신할 때, 서버(14)는 수신된 커맨드들을 실행하기 위해 큐에 넣을 수 있다(enqueue)(및/또는 실행할 수 있다). 수신된 커맨드들은 가상 공간의 인스턴스(32)의 실행과 관련된 커맨드들을 포함할 수 있다. 예를 들어, 커맨드들은, 디스플레이 커맨드들(예를 들어, 팬, 줌 등), 객체 조작 커맨드들(예를 들어, 미리 결정된 방식으로 하나 이상의 객체들을 이동), 캐릭터 액션 커맨드들(예를 들어, 클라이언트(16)와 연관된 캐릭터가 미리 결정된 액션을 수행), 통신 커맨드들(예를 들어, 가상 공간과 상호 작용하는 다른 사용자들과 통신), 정보 요청들, 및/또는 다른 커맨드들을 포함할 수 있다. 인스턴스화 모듈(38)은 가상 공간의 인스턴스(32)를 조작함으로써 가상 공간에서 커맨드들을 실행할 수 있다. 수신된 커맨드들에 응답하는 인스턴스(32)의 조작은 인스턴스(32)의 뷰 모듈(30)에 의해 생성된 뷰에서 반영될 수 있으며, 후에 뷰잉을 위해 클라이언트(16)에 다시 제공될 수 있다. 따라서, 클라이언트(16)에서 사용자가 입력한 커맨드들은, 사용자가 클라이언트(16) 자체에서 커맨드들의 실행 또는 프로세싱을 요구하지 않고 가상 공간과 상호 작용할 수 있게 해준다.
도 1에 도시된 시스템(10)은 각종 컴포넌트들의 수 및/또는 인스턴스된 가상 공간들의 수에 제한되는 것으로 의도되지 않음을 알아야 한다. 예를 들어, 도 2는, 스토리지 모듈(52), 복수의 서버들(54, 56, 58), 및 복수의 클라이언트들(60, 62, 64)을 포함하는, 시스템(10)과 유사한 시스템(50)을 도시한다. 스토리지 모듈(52)은 스토리지 모듈(12)(도 1에 도시되고 상술됨)과 실질적으로 동일한 기능을 실행할 수 있다. 서버들(54, 56, 58)은 서버(14)(도 1에 도시되고 상술됨)와 실질적으로 동일한 기능을 실행할 수 있다. 클라이언트들(60, 62, 64)은 클라이언트(16)(도 1에 도시되고 상술됨)와 실질적으로 동일한 기능을 실행할 수 있다.
스토리지 모듈(52)은, 전술한 바와 같이, 복수의 가상 공간들과 관련된 정보를 저장할 수 있으며, 마크업 언어의 마크업 요소들을 통해 서버들(54, 56, 및/또는 58)에 저장된 정보를 통신할 수 있다. 서버들(54, 56, 및/또는 58)은 가상 공간들의 인스턴스들(66, 68, 70, 및/또는 72)을 실행하기 위해 스토리지 모듈(52)로부터 수신된 정보를 구현할 수 있다. 도 2에서 알 수 있는 바와 같이, 소정의 서버, 예를 들어, 서버(58)는 복수의 가상 공간들의 인스턴스들(예를 들어, 인스턴스들(70, 72))을 실행하도록 구현될 수 있다. 클라이언트들(60, 62, 64)은, 클라이언트들(60, 62, 및/또는 64)이 서버들(54, 56, 및/또는 58)에서 인스턴스된 하나 이상의 가상 공간들에 사용자들을 위한 인터페이스를 제공할 수 있게 하는 정보를 서버들(54, 56, 및/또는 58)로부터 수신할 수 있다. 서버들(54, 56, 및/또는 58)로부터 수신된 정보는, 전술한 바와 같이, 마크업 언어의 마크업 요소들로서 제공될 수 있다.
적어도 부분적으로 시스템(50)의 컴포넌트들 간에 정보를 통신하기 위한 마크업 언어의 구현으로 인해, 서버들(54, 56, 및/또는 58) 중 임의의 서버가 스토리지 모듈(52)에 저장된 가상 공간들 중 임의의 가상 공간을 인스턴스할 수 있음을 전술한 설명으로부터 알 수 있다. 소정의 가상 공간을 인스턴스하는 서버들(54, 56, 및/또는 58)의 기능은, 예를 들어, 소정의 가상 공간의 지형학, 객체들 및/또는 힘들이 소정의 가상 공간에서 표명되는 방식, 및/또는 소정의 가상 공간의 스페이스 파라미터들로부터 독립적일 수 있다. 이러한 유연성(flexibility)은 가상 공간들의 특정 "타입들"만을 인스턴스할 수 있는, 가상 공간들을 인스턴스하기 위한 종래의 시스템들에 대한 개선점을 제공할 수 있다. 유사하게, 클라이언트들(60, 62, 및/또는 64)은 인스턴스들(66, 68, 70, 및/또는 72) 중 임의의 인스턴스와 상호 작용할 수 있다. 이러한 인터페이스는 종래의 시스템들에서 싱글 클라이언트에 대해 제공될 수 있는 가상 공간들의 "타입들"의 수를 제한할 수 있는 가상 공간의 상세 내용들(예를 들어, 지형학, 표명, 파라미터 등)과 무관하게 제공될 수 있다. 종래의 시스템들에서, 이러한 제한들은 클라이언트(16)를 실행하는 플랫폼들의 제한, 클라이언트(16) 자체의 제한, 및/또는 다른 제한의 산물(product)로서 생길 수 있다.
일부 실시예들에서, 시스템(10)은 사용자가 가상 공간을 생성할 수 있게 해줄 수 있다. 이러한 실시예들에서, 사용자는 (예를 들어, 사용자 인터페이스 디스플레이(48) 및/또는 입력 인터페이스(42)를 통해) 클라이언트(16)에서 가상 공간의 특성들의 집합을 선택할 수 있다. 사용자가 선택한 특성들은, 가상 공간의 지형학, 하나 이상의 객체들 및/또는 보이지 않는 힘들의 가상 공간에서의 표명, 사용자들이 새로운 가상 공간과 상호 작용할 수 있도록 사용자들에게 제공된 인터페이스, 새로운 가상 공간과 연관된 스페이스 파라미터들, 및/또는 새로운 가상 공간의 다른 특성들 중 하나 이상의 특성들을 포함할 수 있다.
본 발명이 현재 가장 실제적이고 양호한 실시예라고 생각되는 것에 기초하여 설명을 위해 상세히 기술되었지만, 이러한 상세한 기술은 단지 설명을 목적으로 한 것으로 본 발명은 개시된 실시예들에 제한되지 않으며, 대조적으로, 첨부된 청구항들의 원리 및 범위 내에 있는 변경들 및 동등한 구성들을 커버하는 것으로 의도됨을 알 것이다. 예를 들어, 가능한 정도에서, 임의의 실시예의 하나 이상의 특징들은 임의의 다른 실시예의 하나 이상의 특징들과 결합될 수 있음을 본 발명이 숙고한 것을 알 것이다.

Claims (22)

  1. 하나 이상의 사용자들에게 액세스될 수 있는 가상 공간을 제공하도록 구성된 시스템으로서,
    제1 가상 공간의 인스턴스(instance)를 실행하도록 구성되고, 상기 실행된 인스턴스로부터 상기 제1 가상 공간의 뷰들(views)을 결정하도록 또한 구성된 제1 서버 - 상기 제1 가상 공간은, 지형학(topography)을 갖고, 상기 하나 이상의 사용자들에 의한 실시간 상호작용을 표현하고, 상기 지형학 내의 운동(locomotion)을 경험할 수 있는, 상기 지형학 내에 위치한 하나 이상의 객체들을 포함하는 시뮬레이팅된 물리적 공간임 -;
    제2 가상 공간의 인스턴스를 실행하도록 구성되고, 상기 실행된 인스턴스로부터 상기 제2 가상 공간의 뷰들을 결정하도록 또한 구성된 제2 서버 - 상기 제2 가상 공간은, 지형학을 갖고, 상기 하나 이상의 사용자들에 의한 실시간 상호작용을 표현하고, 상기 지형학 내의 운동을 경험할 수 있는, 상기 지형학 내에 위치한 하나 이상의 객체들을 포함하는 시뮬레이팅된 물리적 공간이고, 상기 제1 가상 공간은 2차원 공간, 3차원 공간, 사회적 공간(social space), 1인칭(first-person) 공간, 3인칭(third-person) 공간, 액션 게임 공간, 역할 연기(role-playing) 공간, 실시간 공간, 또는 턴-기반 공간 중 하나 이상을 포함하는 타입이고, 상기 제2 가상 공간은 상기 제1 가상 공간과 상이한 타입임 -;
    상기 제1 서버로부터 상기 제1 가상 공간의 뷰를 수신하도록 구성된 제1 클라이언트 - 상기 제1 클라이언트는 상기 수신된 뷰를 사용자에게 제공하도록 또한 구성됨 -;
    상기 제2 서버로부터 상기 제2 가상 공간의 뷰를 수신하도록 구성된 제2 클라이언트 - 상기 제2 클라이언트는 상기 제2 가상 공간의 뷰를 상기 사용자에게 제공하도록 또한 구성됨 -; 및
    상기 제1 클라이언트 및 상기 제2 클라이언트로부터 원격에 있으며, 상기 사용자와 연관되는 제1 캐릭터에 관련된 정보를 저장하도록 구성된 스토리지 모듈 - 상기 스토리지 모듈은 상기 사용자와 연관되는 제2 캐릭터에 관련된 정보를 저장하도록 또한 구성됨 -
    을 포함하고,
    상기 제1 서버는, 상기 스토리지 모듈에 저장되는 상기 제1 캐릭터에 관련된 정보에 기초하여 상기 제1 가상 공간 내에서 상기 제1 캐릭터가 표명될(manifested) 수 있게 하고, 상기 제2 서버는, 상기 스토리지 모듈에 저장되는 상기 제2 캐릭터에 관련된 정보에 기초하여 상기 제2 가상 공간 내에서 상기 제2 캐릭터가 표명될 수 있게 하고,
    상기 제1 클라이언트는, 상기 제1 가상 공간의 인스턴스 내에서 상기 제1 캐릭터를 제어하는 커맨드들을 상기 사용자가 상기 제1 서버에 입력할 수 있게 하고, 상기 제2 클라이언트는, 상기 제2 가상 공간의 인스턴스 내에서 상기 제2 캐릭터를 제어하는 커맨드들을 상기 사용자가 상기 제2 서버에 또한 입력할 수 있게 하고, 상기 스토리지 모듈에 저장된 정보 중 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는(persistent) 시스템.
  2. 제1항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는, 상기 제1 캐릭터에 특정한 표명(manifestation) 정보, 캐릭터 파라미터 정보, 또는 캐릭터 목록(character inventory) 정보 중 하나 이상을 포함하는 시스템.
  3. 제2항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 캐릭터에 특정한 표명 정보를 포함하고, 상기 제1 캐릭터에 특정한 표명 정보는, 상기 제1 캐릭터의 비주얼 표현에 관련된 정보, 상기 제1 캐릭터의 세기, 크기, 무게 또는 이동 중 적어도 하나에 관련된 정보, 또는 상기 제1 캐릭터의 하나 이상의 음파(sonic) 특성들 중 하나 이상을 포함하고, 상기 표명 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 시스템.
  4. 제2항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 파라미터 정보를 포함하고, 상기 캐릭터 파라미터 정보는, 상기 제1 캐릭터의 스킬 레벨(skill level), 상기 제1 캐릭터의 상태, 상기 제1 캐릭터의 허가(permission), 또는 상기 제1 캐릭터의 사회적 연결(social connection) 중 하나 이상을 포함하고, 상기 캐릭터 파라미터 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 시스템.
  5. 제2항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 목록 정보를 포함하고, 상기 캐릭터 목록 정보는, 상기 제1 캐릭터에 의해 소유된 가상 통화(currency)의 양에 관련된 정보, 또는 상기 제1 캐릭터의 소유에 있는 객체들에 관련된 정보 중 하나 또는 둘 다를 포함하고, 상기 캐릭터 목록 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 시스템.
  6. 제1항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 상기 사용자의 하나 이상의 선호도들(preferences)을 포함하는 시스템.
  7. 제1항에 있어서,
    상기 스토리지 모듈에 의해 저장되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 상이한 상기 사용자의 하나 이상의 선호도들을 포함하는 시스템.
  8. 가상 공간들 내의 캐릭터들에 관련된 정보를 저장하도록 구성된 정보 스토리지 시스템으로서,
    제1 캐릭터 레코드 및 제2 캐릭터 레코드를 포함하는 복수의 캐릭터 레코드들을 저장하는 캐릭터 스토리지를 포함하고,
    상기 캐릭터 스토리지는, 제1 가상 공간의 인스턴스를 실행하는, 상기 캐릭터 스토리지로부터 원격에 있는 제1 서버로부터 상기 저장된 캐릭터 레코드들 중 하나의 캐릭터 레코드 내에 포함된 정보에 대한 요청을 수신하도록 구성되고, 상기 제1 가상 공간은, 지형학을 갖고, 하나 이상의 사용자들에 의한 실시간 상호작용을 표현하고, 상기 지형학 내의 운동을 경험할 수 있는, 상기 지형학 내에 위치한 하나 이상의 객체들을 포함하는 시뮬레이팅된 물리적 공간이고, 상기 캐릭터 스토리지로부터 요청된 정보는, 상기 제1 서버에 의해 실행되는 상기 제1 가상 공간의 인스턴스에서 상기 요청된 캐릭터 레코드에 대응하는 제1 캐릭터를 상기 제1 서버가 표명할 수 있게 하는 정보를 포함하고,
    상기 캐릭터 스토리지는, 제2 가상 공간의 인스턴스를 실행하는, 상기 캐릭터 스토리지로부터 원격에 있는 제2 서버로부터 상기 저장된 캐릭터 레코드들 중 하나의 캐릭터 레코드 내에 포함된 정보에 대한 제2 요청을 수신하도록 또한 구성되고, 상기 제2 가상 공간은, 지형학을 갖고, 상기 하나 이상의 사용자들에 의한 실시간 상호작용을 표현하고, 상기 지형학 내의 운동을 경험할 수 있는, 상기 지형학 내에 위치한 하나 이상의 객체들을 포함하는 시뮬레이팅된 물리적 공간이고, 상기 제2 요청을 통해 상기 캐릭터 스토리지로부터 요청된 정보는, 상기 제2 서버에 의해 실행되는 상기 제2 가상 공간의 인스턴스에서 상기 요청된 캐릭터 레코드에 대응하는 제2 캐릭터를 상기 제2 서버가 표명할 수 있게 하는 정보를 포함하고, 상기 제1 가상 공간은 2차원 공간, 3차원 공간, 사회적 공간, 1인칭 공간, 3인칭 공간, 액션 게임 공간, 역할 연기 공간, 실시간 공간, 또는 턴-기반 공간 중 하나 이상을 포함하는 타입이고, 상기 제2 가상 공간은 상기 제1 가상 공간과 상이한 타입이고, 상기 캐릭터 스토리지로부터 요청된 정보 중 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하고,
    상기 제1 캐릭터 레코드는, 제1 캐릭터가 상기 제1 가상 공간 내에서 표명될 수 있게 하는 상기 제1 캐릭터에 관련된 정보를 포함하고,
    상기 제2 캐릭터 레코드는, 제2 캐릭터가 상기 제2 가상 공간 내에서 표명될 수 있게 하는 상기 제2 캐릭터에 관련된 정보를 포함하고,
    상기 캐릭터 스토리지는, 사용자가, 상기 제1 서버에 의해 실행되는 상기 제1 가상 공간의 인스턴스 또는 상기 제2 서버에 의해 실행되는 상기 제2 가상 공간의 인스턴스에 액세스하고 제어할 수 있게 하는 클라이언트로부터 원격에 있는 정보 스토리지 시스템.
  9. 제8항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는, 상기 제1 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 또는 캐릭터 목록 정보 중 하나 이상을 포함하는 정보 스토리지 시스템.
  10. 제9항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 캐릭터에 특정한 표명 정보를 포함하고, 상기 제1 캐릭터에 특정한 표명 정보는, 상기 제1 캐릭터의 비주얼 표현에 관련된 정보, 상기 제1 캐릭터의 세기, 크기, 무게 또는 이동 중 적어도 하나에 관련된 정보, 또는 상기 제1 캐릭터의 하나 이상의 음파 특성들 중 하나 이상을 포함하고, 상기 표명 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 정보 스토리지 시스템.
  11. 제9항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 파라미터 정보를 포함하고, 상기 캐릭터 파라미터 정보는, 상기 제1 캐릭터의 스킬 레벨, 상기 제1 캐릭터의 상태, 상기 제1 캐릭터의 허가, 또는 상기 제1 캐릭터의 사회적 연결 중 하나 이상을 포함하고, 상기 캐릭터 파라미터 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 정보 스토리지 시스템.
  12. 제9항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 목록 정보를 포함하고, 상기 캐릭터 목록 정보는, 상기 제1 캐릭터에 의해 소유된 가상 통화의 양에 관련된 정보, 또는 상기 제1 캐릭터의 소유에 있는 객체들에 관련된 정보 중 하나 또는 둘 다를 포함하고, 상기 캐릭터 목록 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 정보 스토리지 시스템.
  13. 제8항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 하나 이상의 사용자 선호도들을 포함하는 정보 스토리지 시스템.
  14. 제8항에 있어서,
    상기 제1 캐릭터 레코드에 포함되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 상이한 하나 이상의 사용자 선호도들을 포함하는 정보 스토리지 시스템.
  15. 복수의 상이한 가상 공간들의 인스턴스들을 실행하도록 구성된 서버로서,
    컴퓨터 프로그램 모듈들을 실행하도록 구성된 하나 이상의 프로세서들을 포함하고,
    상기 컴퓨터 프로그램 모듈들은,
    상기 복수의 상이한 가상 공간들 중 하나의 가상 공간인 제1 가상 공간에 관련된 정보를 원격 정보 스토리지로부터 수신하고, 상기 제1 가상 공간의 인스턴스를 실행하도록 상기 수신된 정보를 구현하는 인스턴스화(instantiation) 모듈 - 가상 공간은, 지형학을 갖고, 하나 이상의 사용자들에 의한 실시간 상호작용을 표현하고, 상기 지형학 내의 운동을 경험할 수 있는, 상기 지형학 내에 위치한 하나 이상의 객체들을 포함하는 시뮬레이팅된 물리적 공간이고, 상기 인스턴스화 모듈은 또한 제2 가상 공간에 관련된 제2 정보를 수신하고, 상기 제2 가상 공간의 인스턴스를 실행하도록 상기 수신된 제2 정보를 구현하고, 상기 제1 가상 공간은 2차원 공간, 3차원 공간, 사회적 공간, 1인칭 공간, 3인칭 공간, 액션 게임 공간, 역할 연기 공간, 실시간 공간, 또는 턴-기반 공간 중 하나 이상을 포함하는 타입이고, 상기 제2 가상 공간은 상기 제1 가상 공간과 상이한 타입임 -;
    상기 제1 가상 공간의 인스턴스를 구현하여 상기 제1 가상 공간의 뷰를 결정하고, 클라이언트로의 송신을 위해 상기 제1 가상 공간의 뷰를 기술하는 뷰 정보를 생성하는 뷰 모듈 - 상기 클라이언트는 상기 뷰 정보를 어셈블(assemble)함으로써 사용자에 대한 상기 제1 가상 공간의 뷰의 디스플레이를 생성하고, 상기 뷰 모듈은 또한 상기 제2 가상 공간의 인스턴스를 구현하여 상기 제2 가상 공간의 뷰를 결정하고, 상기 클라이언트로의 송신을 위해 상기 제2 가상 공간의 뷰를 기술하는 뷰 정보를 생성하고, 상기 클라이언트는 상기 사용자에 대한 상기 제2 가상 공간의 뷰의 디스플레이를 생성함 -; 및
    상기 클라이언트로부터 원격에 위치한 정보 스토리지로부터 상기 사용자와 연관되는 제1 캐릭터에 관련된 정보를 수신하는 캐릭터 모듈
    을 포함하고,
    상기 캐릭터 모듈에 의해 수신된 정보는, 상기 제1 캐릭터가 상기 클라이언트를 통해 상기 사용자에 의해 제어가능하도록 상기 인스턴스화 모듈에 의해 실행되는 상기 제1 가상 공간 내에서 상기 인스턴스화 모듈이 상기 제1 캐릭터를 표명할 수 있게 하고, 상기 캐릭터 모듈은 또한 정보 스토리지로부터 상기 사용자와 연관되는 제2 캐릭터에 관련된 제2 정보를 수신하고, 상기 제2 정보는 상기 인스턴스화 모듈이 상기 제2 가상 공간 내에서 상기 제2 캐릭터를 표명할 수 있게 하고, 상기 제1 캐릭터에 관련된 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 서버.
  16. 제15항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는, 상기 제1 캐릭터에 특정한 표명 정보, 캐릭터 파라미터 정보, 또는 캐릭터 목록 정보 중 하나 이상을 포함하는 서버.
  17. 제16항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 캐릭터에 특정한 표명 정보를 포함하고, 상기 제1 캐릭터에 특정한 표명 정보는, 상기 제1 캐릭터의 비주얼 표현에 관련된 정보, 상기 제1 캐릭터의 세기, 크기, 무게 또는 이동 중 적어도 하나에 관련된 정보, 또는 상기 제1 캐릭터의 하나 이상의 음파 특성들 중 하나 이상을 포함하고, 상기 표명 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 서버.
  18. 제16항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 파라미터 정보를 포함하고, 상기 캐릭터 파라미터 정보는, 상기 제1 캐릭터의 스킬 레벨, 상기 제1 캐릭터의 상태, 상기 제1 캐릭터의 허가, 또는 상기 제1 캐릭터의 사회적 연결 중 하나 이상을 포함하고, 상기 캐릭터 파라미터 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 서버.
  19. 제16항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는 캐릭터 목록 정보를 포함하고, 상기 캐릭터 목록 정보는, 상기 제1 캐릭터에 의해 소유된 가상 통화의 양에 관련된 정보, 또는 상기 제1 캐릭터의 소유에 있는 객체들에 관련된 정보 중 하나 또는 둘 다를 포함하고, 상기 캐릭터 목록 정보의 적어도 일부는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 서버.
  20. 제15항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 영속하는 상기 사용자의 하나 이상의 선호도들을 포함하는 서버.
  21. 제15항에 있어서,
    상기 캐릭터 모듈에 의해 수신되는 상기 제1 캐릭터에 관련된 정보는 상기 제1 가상 공간과 상기 제2 가상 공간 사이에서 상이한 상기 사용자의 하나 이상의 선호도들을 포함하는 서버.
  22. 제1항에 있어서,
    상기 제1 클라이언트 및 상기 제2 클라이언트는 단일의 컴퓨팅 플랫폼 상에서 실행되는 시스템.
KR1020117000560A 2008-06-09 2009-06-08 캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법 KR101516467B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/135,854 2008-06-09
US12/135,854 US8066571B2 (en) 2008-06-09 2008-06-09 System and method for enabling characters to be manifested within a plurality of different virtual spaces
PCT/US2009/046566 WO2009152077A1 (en) 2008-06-09 2009-06-08 System and method for enabling characters to be manifested within a plurality of different virtual spaces

Publications (2)

Publication Number Publication Date
KR20110055512A KR20110055512A (ko) 2011-05-25
KR101516467B1 true KR101516467B1 (ko) 2015-05-04

Family

ID=41401229

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117000560A KR101516467B1 (ko) 2008-06-09 2009-06-08 캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법

Country Status (6)

Country Link
US (2) US8066571B2 (ko)
EP (1) EP2291227A4 (ko)
JP (2) JP2011522631A (ko)
KR (1) KR101516467B1 (ko)
CN (1) CN102099086B (ko)
WO (1) WO2009152077A1 (ko)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745173B1 (en) * 2011-12-30 2014-06-03 hopTo Inc. Client computing system for and method of receiving cross-platform remote access to 3D graphics applications
US8196050B2 (en) 2007-09-17 2012-06-05 Mp 1, Inc. System and method for embedding a view of a virtual space in a banner ad and enabling user interaction with the virtual space within the banner ad
US9968850B2 (en) * 2007-09-17 2018-05-15 Disney Enterprises, Inc. System for providing virtual spaces for access by users
US20090077475A1 (en) * 2007-09-17 2009-03-19 Areae, Inc. System for providing virtual spaces with separate places and/or acoustic areas
JP5181180B2 (ja) * 2007-11-22 2013-04-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 三次元仮想空間上での取引方法、プログラム及びそのサーバシステム
US9403087B2 (en) * 2008-06-09 2016-08-02 Disney Enterprises, Inc. System and method of providing access to virtual spaces that are associated with physical analogues in the real world
US8066571B2 (en) 2008-06-09 2011-11-29 Metaplace, Inc. System and method for enabling characters to be manifested within a plurality of different virtual spaces
US20090315893A1 (en) * 2008-06-18 2009-12-24 Microsoft Corporation User avatar available across computing applications and devices
KR20100009947A (ko) * 2008-07-21 2010-01-29 삼성전자주식회사 가상 현실 서비스 간의 상호 연동을 위한 장치 및 방법
US20100035692A1 (en) * 2008-08-08 2010-02-11 Microsoft Corporation Avatar closet/ game awarded avatar
US9100249B2 (en) * 2008-10-10 2015-08-04 Metaplace, Inc. System and method for providing virtual spaces for access by users via the web
JP4843060B2 (ja) * 2009-02-05 2011-12-21 株式会社スクウェア・エニックス ゲーム装置、ゲームキャラクタの表示方法、ゲームプログラム及び記録媒体
US20120088586A1 (en) * 2010-10-06 2012-04-12 XMG Studio Inc. Linkable and extensible virtual characters
JP5520190B2 (ja) * 2010-10-20 2014-06-11 株式会社ソニー・コンピュータエンタテインメント 画像処理システム、画像処理方法、動画像送信装置、動画像受信装置、プログラム及び情報記憶媒体
US20120242793A1 (en) * 2011-03-21 2012-09-27 Soungmin Im Display device and method of controlling the same
US9180378B2 (en) 2011-05-17 2015-11-10 Activision Publishing, Inc. Conditional access to areas in a video game
US8799788B2 (en) * 2011-06-02 2014-08-05 Disney Enterprises, Inc. Providing a single instance of a virtual space represented in either two dimensions or three dimensions via separate client computing devices
WO2013026048A2 (en) * 2011-08-18 2013-02-21 Utherverse Digital, Inc. Systems and methods of virtual world interaction
JP5572142B2 (ja) * 2011-09-30 2014-08-13 株式会社スクウェア・エニックス ネットワークゲームシステム、サーバ装置及びゲーム装置
US8769052B1 (en) 2011-12-30 2014-07-01 hopTo Inc. Cloud-based server computing system for and method of providing cross-platform remote access to 3D graphics applications
US8838749B1 (en) 2011-12-30 2014-09-16 hopTo Inc. Cloud based client computing system for and method of receiving cross-platform remote access to 3D graphics applications
US8766990B1 (en) 2011-12-30 2014-07-01 hopTo Inc. Server computing system for and method of providing cross-platform remote access to 3D graphics applications
US9220982B2 (en) * 2012-05-04 2015-12-29 Blizzard Entertainment, Inc. Cross-realm zones for interactive gameplay
US9597586B1 (en) 2012-05-07 2017-03-21 CP Studios Inc. Providing video gaming action via communications in a social network
KR101282969B1 (ko) * 2012-06-08 2013-07-08 (주)네오위즈게임즈 아이템 연속 강화 방법 및 서버
US8790185B1 (en) 2012-12-04 2014-07-29 Kabam, Inc. Incentivized task completion using chance-based awards
US8831758B1 (en) 2013-03-20 2014-09-09 Kabam, Inc. Interface-based game-space contest generation
US9007189B1 (en) 2013-04-11 2015-04-14 Kabam, Inc. Providing leaderboard based upon in-game events
US9613179B1 (en) 2013-04-18 2017-04-04 Kabam, Inc. Method and system for providing an event space associated with a primary virtual space
US9626475B1 (en) 2013-04-18 2017-04-18 Kabam, Inc. Event-based currency
US8961319B1 (en) 2013-05-16 2015-02-24 Kabam, Inc. System and method for providing dynamic and static contest prize allocation based on in-game achievement of a user
US9463376B1 (en) 2013-06-14 2016-10-11 Kabam, Inc. Method and system for temporarily incentivizing user participation in a game space
US9658737B2 (en) * 2013-08-16 2017-05-23 Disney Enterprises, Inc. Cross platform sharing of user-generated content
US10668384B2 (en) * 2013-08-16 2020-06-02 Disney Enterprises, Inc. System using rule based techniques for handling gameplay restrictions
US9799163B1 (en) 2013-09-16 2017-10-24 Aftershock Services, Inc. System and method for providing a currency multiplier item in an online game with a value based on a user's assets
US11058954B1 (en) 2013-10-01 2021-07-13 Electronic Arts Inc. System and method for implementing a secondary game within an online game
EP2866182A1 (en) * 2013-10-25 2015-04-29 Nokia Technologies OY Providing contextual information
US10282739B1 (en) 2013-10-28 2019-05-07 Kabam, Inc. Comparative item price testing
US10482713B1 (en) 2013-12-31 2019-11-19 Kabam, Inc. System and method for facilitating a secondary game
US9508222B1 (en) 2014-01-24 2016-11-29 Kabam, Inc. Customized chance-based items
US10226691B1 (en) 2014-01-30 2019-03-12 Electronic Arts Inc. Automation of in-game purchases
US9873040B1 (en) 2014-01-31 2018-01-23 Aftershock Services, Inc. Facilitating an event across multiple online games
US9795885B1 (en) 2014-03-11 2017-10-24 Aftershock Services, Inc. Providing virtual containers across online games
US9517405B1 (en) 2014-03-12 2016-12-13 Kabam, Inc. Facilitating content access across online games
US9610503B2 (en) 2014-03-31 2017-04-04 Kabam, Inc. Placeholder items that can be exchanged for an item of value based on user performance
WO2015164969A1 (en) * 2014-04-29 2015-11-05 Socialplay Inc. System and method for cross-application virtual goods management
US9744445B1 (en) 2014-05-15 2017-08-29 Kabam, Inc. System and method for providing awards to players of a game
US9744446B2 (en) 2014-05-20 2017-08-29 Kabam, Inc. Mystery boxes that adjust due to past spending behavior
US10307666B2 (en) 2014-06-05 2019-06-04 Kabam, Inc. System and method for rotating drop rates in a mystery box
US9717986B1 (en) 2014-06-19 2017-08-01 Kabam, Inc. System and method for providing a quest from a probability item bundle in an online game
US9452356B1 (en) 2014-06-30 2016-09-27 Kabam, Inc. System and method for providing virtual items to users of a virtual space
US9539502B1 (en) 2014-06-30 2017-01-10 Kabam, Inc. Method and system for facilitating chance-based payment for items in a game
US9579564B1 (en) 2014-06-30 2017-02-28 Kabam, Inc. Double or nothing virtual containers
US10463968B1 (en) 2014-09-24 2019-11-05 Kabam, Inc. Systems and methods for incentivizing participation in gameplay events in an online game
US10163420B2 (en) 2014-10-10 2018-12-25 DimensionalMechanics, Inc. System, apparatus and methods for adaptive data transport and optimization of application execution
US10062354B2 (en) 2014-10-10 2018-08-28 DimensionalMechanics, Inc. System and methods for creating virtual environments
US9656174B1 (en) 2014-11-20 2017-05-23 Afterschock Services, Inc. Purchasable tournament multipliers
US9827499B2 (en) 2015-02-12 2017-11-28 Kabam, Inc. System and method for providing limited-time events to users in an online game
KR101872000B1 (ko) * 2017-04-27 2018-06-27 김동현 가상현실공간 내의 상호작용 반영 방법
US10474991B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Deep learning-based store realograms
US11232687B2 (en) * 2017-08-07 2022-01-25 Standard Cognition, Corp Deep learning-based shopper statuses in a cashier-less store
US10650545B2 (en) 2017-08-07 2020-05-12 Standard Cognition, Corp. Systems and methods to check-in shoppers in a cashier-less store
US10853965B2 (en) 2017-08-07 2020-12-01 Standard Cognition, Corp Directional impression analysis using deep learning
US11250376B2 (en) 2017-08-07 2022-02-15 Standard Cognition, Corp Product correlation analysis using deep learning
US10474988B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Predicting inventory events using foreground/background processing
US11200692B2 (en) 2017-08-07 2021-12-14 Standard Cognition, Corp Systems and methods to check-in shoppers in a cashier-less store
CN108159697B (zh) * 2017-12-29 2021-09-07 网易(杭州)网络有限公司 虚拟对象传送方法及装置、存储介质、电子设备
JP6743102B2 (ja) * 2018-09-06 2020-08-19 株式会社アグニ・フレア ゲームプログラム、記録媒体及びゲーム制御方法
CN109829977A (zh) * 2018-12-30 2019-05-31 贝壳技术有限公司 在虚拟三维空间中看房的方法、装置、电子设备及介质
US11232575B2 (en) 2019-04-18 2022-01-25 Standard Cognition, Corp Systems and methods for deep learning-based subject persistence
CN110532055A (zh) * 2019-09-03 2019-12-03 网易(杭州)网络有限公司 游戏运行方法、装置及电子设备
CA3154489A1 (en) * 2020-03-13 2021-09-16 Google Llc Peer-to-peer multiplayer cloud gaming architecture
US11361468B2 (en) 2020-06-26 2022-06-14 Standard Cognition, Corp. Systems and methods for automated recalibration of sensors for autonomous checkout
US11303853B2 (en) 2020-06-26 2022-04-12 Standard Cognition, Corp. Systems and methods for automated design of camera placement and cameras arrangements for autonomous checkout
US20240001231A1 (en) * 2022-06-29 2024-01-04 Superplay Ltd Altering computer game tiles having multiple matchable ends
US11857882B1 (en) * 2022-06-29 2024-01-02 Superplay Ltd Altering computer game tiles having multiple matchable ends
JP7332768B1 (ja) 2022-09-08 2023-08-23 Kddi株式会社 仮想空間サービス管理装置及び仮想空間サービス管理方法
JP7321346B1 (ja) 2022-09-29 2023-08-04 Kddi株式会社 仮想空間サービス管理装置及び仮想空間サービス管理方法
JP7457181B1 (ja) 2023-03-10 2024-03-27 Kddi株式会社 情報処理装置及び情報処理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040014527A1 (en) 2002-07-19 2004-01-22 Orr Scott Stewart System and method to integrate digital characters across multiple interactive games

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5525765A (en) 1993-09-08 1996-06-11 Wenger Corporation Acoustical virtual environment
US5659691A (en) 1993-09-23 1997-08-19 Virtual Universe Corporation Virtual reality network with selective distribution and updating of data to reduce bandwidth requirements
US5736982A (en) 1994-08-03 1998-04-07 Nippon Telegraph And Telephone Corporation Virtual space apparatus with avatars and speech
US6430997B1 (en) 1995-11-06 2002-08-13 Trazer Technologies, Inc. System and method for tracking and assessing movement skills in multidimensional space
US6219045B1 (en) * 1995-11-13 2001-04-17 Worlds, Inc. Scalable virtual world chat client-server system
US6323857B1 (en) 1996-04-19 2001-11-27 U.S. Philips Corporation Method and system enabling users to interact, via mutually coupled terminals, by reference to a virtual space
US6009458A (en) * 1996-05-09 1999-12-28 3Do Company Networked computer game system with persistent playing objects
JP2000076487A (ja) 1998-09-03 2000-03-14 Sony Corp 情報処理装置および方法、並びに提供媒体
JP4232232B2 (ja) * 1998-09-30 2009-03-04 ソニー株式会社 情報処理装置および方法、並びに記録媒体
EP1037134A2 (en) 1999-03-16 2000-09-20 Matsushita Electric Industrial Co., Ltd. Virtual space control data receiving apparatus and method
US6289248B1 (en) 1999-08-20 2001-09-11 Cardiac Pacemakers, Inc. System and method for detecting and displaying parameter interactions
EP1272949A2 (en) 1999-10-21 2003-01-08 Adfluence, Inc. Network methods for interactive advertising and direct marketing
US7231327B1 (en) 1999-12-03 2007-06-12 Digital Sandbox Method and apparatus for risk management
US6854012B1 (en) 2000-03-16 2005-02-08 Sony Computer Entertainment America Inc. Data transmission protocol and visual display for a networked computer system
JP2001326632A (ja) 2000-05-17 2001-11-22 Fujitsu Ltd 分散グループ管理システムおよび方法
US6951516B1 (en) * 2001-08-21 2005-10-04 Nintendo Co., Ltd. Method and apparatus for multi-user communications using discrete video game platforms
JP2002024285A (ja) 2000-06-30 2002-01-25 Sanyo Electric Co Ltd ユーザ支援方法およびユーザ支援装置
US6971063B1 (en) 2000-07-28 2005-11-29 Wireless Valley Communications Inc. System, method, and apparatus for portable design, deployment, test, and optimization of a communication network
US20020112033A1 (en) 2000-08-09 2002-08-15 Doemling Marcus F. Content enhancement system and method
KR20020017558A (ko) 2000-08-31 2002-03-07 김종민 가상 공간 상에서의 북마킹 시스템 및 방법
US7788323B2 (en) 2000-09-21 2010-08-31 International Business Machines Corporation Method and apparatus for sharing information in a virtual environment
US7319992B2 (en) 2000-09-25 2008-01-15 The Mission Corporation Method and apparatus for delivering a virtual reality environment
JP2002109394A (ja) 2000-09-26 2002-04-12 Sony Corp コミュニティサービス提供装置、コミュニティサービス提供方法、プログラム格納媒体およびコミュニティシステム
US20020082910A1 (en) 2000-12-22 2002-06-27 Leandros Kontogouris Advertising system and method which provides advertisers with an accurate way of measuring response, and banner advertisement therefor
WO2002079951A2 (en) 2001-03-30 2002-10-10 Fpba Group, Llc Network banner advertisement system and method
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
JP3606316B2 (ja) * 2001-06-07 2005-01-05 ソニー株式会社 キャラクタデータ管理システム、キャラクタサーバー、およびキャラクタデータ管理方法、並びにプログラム
US20030064705A1 (en) 2001-10-02 2003-04-03 Desiderio Piero L. Communication of real estate information utilizing moving map GPS and wireless telecommunications to access MLS and other property specific information from remote databases
US6791549B2 (en) 2001-12-21 2004-09-14 Vrcontext S.A. Systems and methods for simulating frames of complex virtual environments
AU2003223091A1 (en) 2002-04-30 2003-11-17 Telmap Ltd. Dynamic navigation system
US7827507B2 (en) 2002-05-03 2010-11-02 Pixearth Corporation System to navigate within images spatially referenced to a computed space
KR20030094703A (ko) 2002-06-07 2003-12-18 (주)아오조라 엔터테인먼트 게임캐릭터 연동형 아바타 서비스 시스템 및 방법
US20030231212A1 (en) 2002-06-18 2003-12-18 Bellsouth Intellectual Property Corporation User interface to a device environment
GB0222554D0 (en) 2002-09-28 2002-11-06 Koninkl Philips Electronics Nv Data processing system and method of operation
JP4218336B2 (ja) 2002-12-12 2009-02-04 ソニー株式会社 情報処理システム、サービス提供装置および方法、情報処理装置および方法、並びにプログラム
JP4583181B2 (ja) 2003-01-06 2010-11-17 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ中心のサービス提供装置およびサービス提供方法
US7454715B2 (en) 2003-02-04 2008-11-18 Microsoft Corporation Open grid navigational system
US20040230458A1 (en) 2003-02-26 2004-11-18 Kabushiki Kaisha Toshiba Cyber hospital system for providing doctors' assistances from remote sites
US7789741B1 (en) 2003-02-28 2010-09-07 Microsoft Corporation Squad vs. squad video game
US20040243307A1 (en) 2003-06-02 2004-12-02 Pieter Geelen Personal GPS navigation device
GB2404315A (en) * 2003-07-22 2005-01-26 Kelseus Ltd Controlling a virtual environment
US7681114B2 (en) 2003-11-21 2010-03-16 Bridgeborn, Llc Method of authoring, deploying and using interactive, data-driven two or more dimensional content
US20050160141A1 (en) 2004-01-21 2005-07-21 Mark Galley Internet network banner
WO2005079341A2 (en) 2004-02-12 2005-09-01 Besjon Alivandi System and method for producing merchandise from a virtual environment
US7534169B2 (en) 2005-07-08 2009-05-19 Cfph, Llc System and method for wireless gaming system with user profiles
CA2559726C (en) 2004-03-24 2015-10-20 A9.Com, Inc. System and method for displaying images in an online directory
US7577847B2 (en) 2004-11-03 2009-08-18 Igt Location and user identification for online gaming
US20060223635A1 (en) 2005-04-04 2006-10-05 Outland Research method and apparatus for an on-screen/off-screen first person gaming experience
US20070190494A1 (en) 2005-04-04 2007-08-16 Outland Research, Llc Multiplayer gaming using gps-enabled portable gaming devices
US7797261B2 (en) 2005-04-13 2010-09-14 Yang George L Consultative system
US7711478B2 (en) 2005-06-21 2010-05-04 Mappick Technologies, Llc Navigation system and method
US8083586B2 (en) * 2005-06-22 2011-12-27 Nokia Corporation System and method for providing interoperability of independently-operable electronic games
US20070020603A1 (en) 2005-07-22 2007-01-25 Rebecca Woulfe Synchronous communications systems and methods for distance education
EP2764899A3 (en) 2005-08-29 2014-12-10 Nant Holdings IP, LLC Interactivity via mobile image recognition
JP3968758B2 (ja) * 2005-09-08 2007-08-29 株式会社光栄 ネットワークゲームシステム,クライアント機器,サーバ機器,キャラクタ管理プログラムおよびキャラクタ管理プログラムを記憶した記憶媒体
US7703023B2 (en) 2005-09-15 2010-04-20 Microsoft Corporation Multipersona creation and management
US20070082738A1 (en) * 2005-10-06 2007-04-12 Game Driven Corporation Self-organizing turn base games and social activities on a computer network
US20070083323A1 (en) 2005-10-07 2007-04-12 Outland Research Personal cuing for spatially associated information
US20070167239A1 (en) * 2006-01-19 2007-07-19 O'rourke Jason Arcade Casino Game
US9205329B2 (en) * 2006-07-25 2015-12-08 Mga Entertainment, Inc. Virtual world electronic game
US9746912B2 (en) 2006-09-28 2017-08-29 Microsoft Technology Licensing, Llc Transformations for virtual guest representation
US9329743B2 (en) 2006-10-04 2016-05-03 Brian Mark Shuster Computer simulation method with user-defined transportation and layout
US20080096665A1 (en) * 2006-10-18 2008-04-24 Ariel Cohen System and a method for a reality role playing game genre
US20080120558A1 (en) * 2006-11-16 2008-05-22 Paco Xander Nathan Systems and methods for managing a persistent virtual avatar with migrational ability
AU2007343401A1 (en) 2007-01-10 2008-07-17 Tomtom International B.V. A navigation device and method for driving break warning
KR101322055B1 (ko) 2007-03-06 2013-10-25 삼성전자주식회사 위성 영상을 이용한 네비게이션 방법 및 단말
US8521501B2 (en) * 2007-06-27 2013-08-27 International Business Machines Corporation Real-time performance modeling of application in distributed environment and method of use
US20090036216A1 (en) 2007-07-30 2009-02-05 Trey Ratcliff Video game for interactive engagement between multiple on-line participants in competition over internet websites
US20090040186A1 (en) 2007-08-07 2009-02-12 Esenther Alan W Method and System for Displaying Multiple Synchronized Images
US8196050B2 (en) 2007-09-17 2012-06-05 Mp 1, Inc. System and method for embedding a view of a virtual space in a banner ad and enabling user interaction with the virtual space within the banner ad
US20090077475A1 (en) 2007-09-17 2009-03-19 Areae, Inc. System for providing virtual spaces with separate places and/or acoustic areas
US9968850B2 (en) 2007-09-17 2018-05-15 Disney Enterprises, Inc. System for providing virtual spaces for access by users
US8082133B2 (en) * 2008-05-21 2011-12-20 Science Applications International Corporation Terrain paging during a distributed simulation involving multiple objects
US9403087B2 (en) 2008-06-09 2016-08-02 Disney Enterprises, Inc. System and method of providing access to virtual spaces that are associated with physical analogues in the real world
US8066571B2 (en) 2008-06-09 2011-11-29 Metaplace, Inc. System and method for enabling characters to be manifested within a plurality of different virtual spaces
US20100058235A1 (en) 2008-09-03 2010-03-04 Ganz Method and system for naming virtual rooms
US9100249B2 (en) 2008-10-10 2015-08-04 Metaplace, Inc. System and method for providing virtual spaces for access by users via the web

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040014527A1 (en) 2002-07-19 2004-01-22 Orr Scott Stewart System and method to integrate digital characters across multiple interactive games

Also Published As

Publication number Publication date
CN102099086A (zh) 2011-06-15
US9550121B2 (en) 2017-01-24
EP2291227A4 (en) 2013-11-13
US8066571B2 (en) 2011-11-29
JP2015122075A (ja) 2015-07-02
KR20110055512A (ko) 2011-05-25
JP2011522631A (ja) 2011-08-04
CN102099086B (zh) 2015-07-29
US20120059881A1 (en) 2012-03-08
EP2291227A1 (en) 2011-03-09
US20090307226A1 (en) 2009-12-10
WO2009152077A1 (en) 2009-12-17

Similar Documents

Publication Publication Date Title
KR101516467B1 (ko) 캐릭터들이 복수의 상이한 가상 공간들 내에서 표명되게 할 수 있는 시스템 및 방법
KR101511407B1 (ko) 실세계에서의 물리적 아날로그와 연관된 가상 공간에 대한 액세스 제공
US9968850B2 (en) System for providing virtual spaces for access by users
US20090077475A1 (en) System for providing virtual spaces with separate places and/or acoustic areas
US9854065B2 (en) System and method for providing virtual spaces for access by users via the web
US20120142429A1 (en) Collaborative electronic game play employing player classification and aggregation
CN108686374A (zh) 游戏系统
US20090055754A1 (en) Avatar aggregation in a virtual universe
US11571628B2 (en) Modifying game content to reduce abuser actions toward other users
US10086276B2 (en) Systems and methods for procedural game content generation via interactive non-player game entities
US9483750B2 (en) Location independent communication in a virtual world
Wu et al. Metaverse: The World Reimagined
KR102553856B1 (ko) 통제 정보 제공 장치 및 방법, 통제 정보 표시 장치 및 방법
KR20220166088A (ko) 게임에서 캐릭터 대여 서비스를 제공하기 위한 방법, 장치, 및 컴퓨터 프로그램
Peed et al. Origin of Virtual Reality
KR20220161882A (ko) 퀘스트 관리 서비스 제공 장치 및 방법
JP2023049267A (ja) ゲームシステム、プログラム及びゲーム提供方法
US9480909B1 (en) System and method for dynamically adjusting a game based on predictions during account creation
CN117046101A (zh) 游戏中的交互方法、装置、电子设备及可读存储介质
Feungchan An agent-based novel interactive framework for ubiquitous electronic entertainment.
KR100778315B1 (ko) 온라인 병렬 게임 제공 방법 및 시스템
CN117046117A (zh) 游戏中的组队方法、装置、电子设备及可读存储介质

Legal Events

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

Payment date: 20180404

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190416

Year of fee payment: 5