KR20110040734A - 대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행 - Google Patents

대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행 Download PDF

Info

Publication number
KR20110040734A
KR20110040734A KR20100100259A KR20100100259A KR20110040734A KR 20110040734 A KR20110040734 A KR 20110040734A KR 20100100259 A KR20100100259 A KR 20100100259A KR 20100100259 A KR20100100259 A KR 20100100259A KR 20110040734 A KR20110040734 A KR 20110040734A
Authority
KR
South Korea
Prior art keywords
game
input
dedicated
mapping
alternate
Prior art date
Application number
KR20100100259A
Other languages
English (en)
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 KR20110040734A publication Critical patent/KR20110040734A/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/20Input arrangements for video game devices
    • A63F13/22Setup operations, e.g. calibration, key configuration or button assignment
    • 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/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • 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
    • A63F13/49Saving the game status; Pausing or ending the 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/61Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor using advertising information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/215Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
    • 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
    • A63F13/49Saving the game status; Pausing or ending the game
    • A63F13/493Resuming a game, e.g. after pausing, malfunction or power failure
    • 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
    • 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/10Features 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 input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1018Calibration; Key and button assignment
    • 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/10Features 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 input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1025Features 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 input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection
    • 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/10Features 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 input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features 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 input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features 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 input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • 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/10Features 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 input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features 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 input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features 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 input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • 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/30Features 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 output arrangements for receiving control signals generated by the game device
    • A63F2300/308Details of the user interface
    • 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/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • 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/552Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
    • 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/554Game data structure by saving game or status data
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/636Methods for processing data by generating or executing the game program for controlling the execution of the game in time involving process of starting or resuming a game

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

대체 제어 및 인터페이스를 이용하여 브라우저 기반의 게임을 실행하기 위한 방법, 시스템, 및 컴퓨터 프로그램이 제안된다. 하나의 방법에서, 게임을 위해 정의된 전용 입력의 정의가 수신된다. 전용 입력은 전용 장치에서 기인하며 게임 내에서 동작을 유도할 수 있다. 또한, 상기 방법은 모든 전용 입력을 가지지 않는 대체 장치를 검출한다. 전용 장치로부터의 전용 입력은 대체 장치로부터의 대체 입력에 매핑 된다. 대체 장치에 의해 생성된 입력은 매핑에 따라 대응하는 전용 입력으로 변환되어 게임 내의 대응하는 동작을 유도한다. 또 다른 방법에서, 게임 실행을 위해 웹 페이지 내의 게임 영역이 식별된다. 게임 영역은 웹 페이지 내의 다른 요소들의 크기를 줄이는 한편 게임 영역의 크기를 늘임으로써 확장된다.

Description

대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행{Playing Browser Based Games with Alternative Controls and Interfaces}
본 발명은 브라우저 기반의 게임 실행 방법, 시스템, 및 컴퓨터 프로그램에 관한 것으로, 더욱 상세하게는, 대체 제어 및 향상된 인터페이스를 이용한 브라우저 기반의 게임 실행 시스템 및 컴퓨터 프로그램에 관한 것이다.
브라우저 게임은 웹 브라우저 상에서 실행되는 비디오 게임이다. 브라우저 게임은 일반적으로 웹 브라우저 외에 어떠한 소프트웨어를 설치할 필요가 없다는 점에서 다른 비디오 및 컴퓨터 게임들과 다르다. 어떤 게임들이 서버 측 스크립트를 이용하는 반면 어떤 게임들은 자바스크립트 (JavaScript) 또는 플래쉬 플레이어(FLASHTM Player) 또는 자바 (JAVATM) 등의 공유 플러그인 같은 클라이언트 측 기술에만 의존한다. 서버 측 컴퓨팅을 이용하는 게임들은 대규모 멀티플레이어 게임 또는 사용자가 서버 컴퓨터 또는 두 번째 플레이어와 게임하는 2인 보드 게임들이다. 클라이언트 측 게임들은 일반적으로 1인 게임들이다. 브라우저 내에서 실행되는 게임을 종종 브라우저 기반 게임 (Browser-Based Game, BBG)이라 일컷는다.
BBG의 중요한 이점 중의 하나는 자신들의 컴퓨터 상에서 웹 브라우저에 대한 접속을 이용한 대규모 사용자 공동체가 존재한다는 것이다. 웹 브라우저는 하드웨어 독립적이기 때문에, BBG는 비싼 플랫폼 개인화 (customization) 과정이 필요 없이 다양한 형태의 컴퓨터와 하드웨어 구조에서 실행이 가능하다. 더욱이, 게임 복잡도가 낮고 장시간 기다림 없이 플레이어들이 게임을 다운로드 할 수 있을 만큼 파일 사이즈가 충분히 작기 때문에 인터넷을 통해 게임을 쉽게 다운로드 할 수 있다.
반대로, BBG는 어쩔 수 없는 단점도 가지고 있다. 이들 게임은 일반적인 브라우저 플랫폼용으로 설계되기 때문에, 게임 특성이 브라우저에 의해 제공되는 제한된 기능성에 의해 구속 받는다. 예를 들어, 대부분의 BBG는 사격 게임 같은 일부 게임들에는 적합하지 않은 키보드 또는 마우스 입력을 이용한다. 더욱이, BBG의 사용자 인터페이스는 브라우저에 의해 제한된다. 때로는, 이들 게임이 무료이고 개발자들이 그들의 웹사이트를 유지하기 위해 광고 수입에 의존하기 때문에, 광고와 여타 웹의 특정 요소들에 의해 둘러싸여 실행 영역이 협소해진다.
이와 같은 배경으로부터 본 발명의 실시예들이 안출되었다.
본 발명은 상술한 문제점을 해결하기 위하여 제안된 것으로 사용자가 편리하게 방송 채널을 검색하여 원하는 채널을 선택할 수 있도록 하는 채널 조정 방법 및 장치를 제공하는데 그 목적이 있다.
일 실시예에서, 게임을 위해 정의되는 전용 입력 (native input)의 정의가 수신된다. 전용 입력은 전용 장치 (native device)에서 기원하며 게임에서 행위를 유도할 수 있다. 또한, 이러한 방법은 모든 전용 입력을 가지지 않는 대체 장치를 검출한다. 전용 입력은 전용 장치로부터 매핑 되어 대체 장치로부터의 입력으로 대체 된다. 대체 장치를 이용하여 생성된 입력은 게임에서 대응하는 행위에 대한 매핑 및 유도에 따라 대응하는 전용 입력으로 해석된다. 다른 실시예에서, 컴퓨터 프로그램이 이 방법의 동작들을 수행한다.
다른 실시예에서, 웹 페이지 내의 게임 영역이 게임 실행을 위해 식별된다. 게임 영역은 웹 페이지 내의 타 요소들의 크기를 줄이고 게임 영역의 크기를 키움으로써 확장된다.
또 다른 실시예에 따른 방법은 게임에 필요한 입력 파라미터들을 수신하기 위한 동작을 포함한다. 또한, 입력 파라미터들을 위한 전용 입력 키들이 결정되며, 여기서 전용 입력 키들은 전용 입력 제어 장치를 위해 정의된다. 전용 입력 키들은 비-전용 제어 장치 (non-native control device)에 매핑 되며, 입력은 비-전용 제어 장치로부터 검출된다. 입력이 검출되면, 검출된 입력들은 방법의 동작에 의해 전용 입력 키들로 해석된다. 전용 입력 키들의 매핑은 비-전용 제어 장치를 이용해 전용 입력 제어 장치를 흉내내기 위해 검출된 입력을 해석하도록 게임 실행 동안 유지된다.
또 다른 실시예에서, 브라우저 기반 게임 (BBG)을 실행하기 위한 시스템은 게임 정보 수집 모듈과 입력 변환 모듈을 포함한다. 게임 정보 수집 모듈은 게임을 위한 전용 입력의 정의를 수신한다. 전용 입력은 게임에서 행위를 유도 할 수 있으며 전용 장치를 통해 행위에 연결될 수 있다. 또한, 입력 변환 모듈은 전용 장치로부터의 전용 입력을 전용 입력을 갖지 않은 대체 장치로부터의 다수의 대체 입력에 매핑 시킨다. 따라서, 입력 변환 모듈은 대체 장치에 의해 생성된 입력을 매핑 된 전용 입력에 따라 대응하는 전용 입력으로 해석한다.
본 발명의 다른 국면들은 본 발명의 개념을 예시적으로 도시한 첨부된 도면을 참조하여 설명된 이하의 상세한 설명으로부터 명확해 질 것이다.
상술한 바와 같이 본 발명은 사용자가 편리하게 방송 채널을 검색하여 원하는 채널을 선택할 수 있도록 하는 이점을 제공한다.
도 1은 일 실시예에 따른 브라우저 기반 게임 (BBG) 실행을 위한 망 환경의 개략도이다.
도 2A-2C는 일 실시예에 따른 BBG 실행을 위한 클라이언트 구조를 도시한 도면이다.
도 3은 일 실시예에 따른 FLASHTM 게임 실행을 위한 게임 웹 페이지를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따라 웹 게임 실행을 위한 수정된 웹 페이지를 도시한 도면이다.
도 5는 일 실시예에 따라 확장된 게임 실행 영역을 가지는 수정된 웹 페이지를 도시한 도면이다.
도 6은 일 실시예에 따른 개인 BBG 포털을 도시한 도면이다.
도 7은 일 실시예에 따라 대체 입력 장치를 이용하여 수신된 명령을 해석하기 위한 입력 매핑 테이블을 도시한 도면이다.
도 8은 일 실시예에 따라 BBG 탐색 페이지를 도시한 도면이다.
도 9는 본 발명의 일 실시예에 따라 BBG를 실행하기 위한 프로세스 흐름을 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따라 BBG 실행을 위해 사용될 수 있는 하드웨어와 사용자 인터페이스를 도시한 도면이다.
도 11은 본 발명의 일 실시예에 따라 인스트럭션 처리를 위해 사용될 수 있는 추가 하드웨어를 도시한 도면이다.
도 12는 본 발명의 일 실시예에 따라 인터넷을 통해 서버 처리에 연결되는 게임 클라이언트 1102와 상호 작용하는 장면 A 내지 장면 E와 각각의 사용자 A 내지 사용자 E 를 도시한 도면이다.
도 13은 일 실시예에 따른 정보 서비스 제공자 구조를 도시한 도면이다.
다음 실시예들은 대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행 방법 및 장치를 설명한다. 그러나, 본 발명이 이러한 상세 설명의 일부 또는 전부 없이도 실시될 수 있음은 당업자에게 명확하다. 다른 예들에서, 본 발명의 요지를 흐리게 할 수 있는 공지의 처리 동작에 대한 상세한 설명은 생략되었다.
도 1은 일 실시예에 따라 브라우저 기반 게임(BBG)을 위한 망 환경을 도시한 개략도이다. 게임 제공자에 의해 설정된 웹 서버(102)는 표준 HTTP (Hypertext Transfer Protocol)를 이용하여 사용자(114a-114c)에게 웹 페이지를 전달한다. 이들 웹 페이지는 웹 브라우징 능력을 갖춘 많은 장치들 중 하나에서 BBG 실행을 위한 코드를 포함한다. 어떤 경우에, 사용자는 인터넷 브라우징이 힘든 입력 장치를 가진다. 예를 들어, 게임 제어기를 가진 플레이어가 알파벳 표시로부터 한번에 한 자를 선택하는 소프트웨어를 사용하여 브라우저에서 웹 페이지 주소를 선택 할 수도 있을 것이다. 더욱이, 이들 게임이 일반적으로 키보드와 마우스를 위해 설계되기 때문에, 게임 제어기를 가진 플레이어가 게임 제어기로 BBG를 실행하지 못할 수도 있다.
본 발명의 실시예들은 웹 브라우저와 여러 가지 입력 장치를 사용하는 플레이어가 쉽게 BBG에 접근하여 실행할 수 있도록 한다. 수천 가지 웹 기반 게임들이 다양한 게임 웹 사이트들에서 인터넷을 통해 가능하다. 본 발명의 실시예들은 사용자들이 브라우저 기반 게임 진행 상태를 저장하는 것은 물론 사용자가 다양한 웹 사이트들을 통해 게임을 찾고 선택하는 것을 돕는다. 더욱 상세하게는, 본 발명의 실시예들은 텔레비전, 게임 콘솔, 또는 마우스와 키보드 입력 장치를 가지지 않는 여타 입력장치 상에서 플래쉬 기반의 게임에 대한 접속, 개시, 및 실행을 용이하게 한다.
하기의 본 발명의 실시예들에서는 키보드와 마우스를 위한 입력 매핑이 사용되지만, 본 발명의 원리는 어떤 장치로부터 다른 장치로의 입력을 해석하기 위해 적용될 수 있다. 예를 들어, 게임 제어기를 이용하여 실행되도록 설계된 게임은 카메라를 통해 획득되고 대응하는 게임 제어기 입력으로 해석되는 제스처를 취함으로써 실행될 수 있다. 게임에 의해 기대되는 입력을 생성하는 장치를 전용 장치로 칭한다. 표준 데스크톱 컴퓨터의 경우, 일반적으로 키보드 또는 마우스가 전용 장치이다. 전용 장치는 키 누름 또는 마우스 클릭과 같은 전용 입력을 생성한다. 또한, 그것의 입력이 게임을 실행하도록 해석되는 장치를 여기서는 대체 장치라고 부른다. 때때로 편의상 제스처를 만드는 플레이어를 대체 장치로 부를 수도 있으며, 이는 제스처가 카메라에 의해 캡처 되어 카메라 프로그램에 의해 해석되는 것을 의미한다. 개시된 실시예들이 배제 또는 제한되는 것으로 해석되는 것이 아니라 예시적 또는 도시적으로 해석되어야 한다.
웹 게임 서버(104)는 BBG에 관련된 정보를 제공한다. 웹 게임 서버(104)에 의해 제공되는 서비스들의 일부로, 다중 웹 사이트에서 웹 게임을 찾기 위한 중앙 위치를 제공하고; 게임 정보 교환 및 등급을 교환하기 위한 공동체 게임 사이트를 생성하고; 웹 게임 서버(104)로부터 게임을 다운로드 할 수 있는 일부 웹 페이지를 저장하고; 플레이어 점수를 저장하고; 사용자 통계를 제공하고; 광고 같은 웹 게임 페이지를 위한 부가 콘텐트를 다운로드 하는 등의 서비스가 포함된다. 다양한 웹 게임 서버 구현을 통해 다른 형태의 서비스들이 제공될 수 있음을 당업자라면 쉽게 이해할 것이다. 일 실시예에서, 게임 웹 서버가 게임 실행 기능을 제공할 필요는 없으며, 모든 향상된 실행 서비스들이 플레이어에 의해 사용되는 클라이언트 장치에 의해 전달된다.
브라우저 게임 실행을 위한 가장 잘 일반적인 플러그인은 아마도 애니메이션과 영화를 웹 브라우저에서 볼 수 있도록 해주는 어도비(Adobe)의 플래쉬 (FLASH) 플레이어일 것이다. 플래쉬 플레이어 또는 플래쉬 플레이어 플러그인을 가진 브라우저는 SWF 확장자를 가진 파일을 구동시킨다. 이들 SWF 파일은 어도비의 플래쉬 저작 툴과 같은 여러 가지 툴에 의해 생성될 수 있다. 어도비 플래쉬 또는 축약하여 플래쉬는 벡터(vector)와 래스터 (raster), 동작스크립트(ActionScript)로 불리는 전용 스크립트 언어 및 양방향 비디오 및 오디오 스트림을 이용하는 멀티미디어 저작 프로그램과 어도비 플래쉬 플레이어 모두를 일컷는다. 플래쉬는 웹 페이지에 포함되는 게임, 애니메이션, 그래픽 유저 인터페이스 (GUI)를 위한 일반적인 포맷이다. 플래쉬 플레이어는 다중 하드웨어 플랫폼 상에서 모질라 파이어폭스 (Mozilla Firefox), 오페라 (Opera), 사파리 (Safari), 및 인터넷 익스플로러 (Internet Explorer)와 같은 웹 브라우저들의 최신 버전을 위한 플러그인으로 유용하다.
플레이어들은 이동 전화기(118), 게임 콘솔(106), 개인용 컴퓨터(126), 개인용 정보 단말기(PDA), 랩탑, 워크스테이션, 등의 브라우저를 포함하는 어떠한 단말을 통해 BBG에 접근할 수 있다. BBG는 주로 마우스와 키보드 입력을 염두에 두고 설계되지만, 본 발명의 실시예들은 플레이어들(114a-114c)이 게임 인터페이스를 위한 여타 방법 및 장치는 물론 키보드와 마우스의 사용을 가능하게 한다. 이들 장치는 터치스크린 또는 숫자 키패드, (플레이어의 이동과 소리를 캡처하기 위한) 카메라(110), 양손형 제어기(124), 한손형 제어기(112), 및 리모트 컨트롤(122) 등을 포함한다.
일 실시예에서, 게임 제공자는 대체 장치를 위한 매핑과 관련된 유용한 정보를 생성할 수 있다. 게임 개발자는 사용자가 대체 장치를 선택하기 위한 옵션을 선택하고 플러그인이 대체 장치를 위한 매핑을 식별할 수 있도록 BBG를 위한 프러그인 애플리케이션을 적용할 수 있다. 예를 들어, 사용자는 시스템에 연결된 블루투스 장치를 이용하여 무선 연결을 통해 어떤 제어기를 이용할 수 있다. 또한, 대체 장치는 사용자가 제스처를 통해 입력을 수행하도록 움직임 검출을 위한 대응 소프트웨어를 갖춘 카메라일 수 있다. 게임 개발자는 사용자가 제스처를 이용하기 위한 옵션을 제공하고, 만약 플레이어가 이 옵션을 선택하며, 게임은 게임 동작을 유도시킬 수 있는 제스처들을 사용자에게 보여준다. 예를 들어, 게임은 게임과 상호 동작하기 위해 플레이어가 손으로 할 수 있는 4가지 동작이 있음을 설명할 수 있다. 왼쪽 이동을 위해, 왼손을 몸에서 멀리 떨어뜨리고, 오른쪽 이동을 위해 오른손을 몸에서 멀리 떨어뜨리고, 멈추기 위해 양손을 앞쪽에 두는 등이다.
도 2A-2C는 BBG 실행을 위한 클라이언트 구조의 일 실시예를 보인 도면이다. 클라이언트(202)는 플레이어(242)에 의해 요청된 브라우저 기반의 게임을 다운로드 하기 위해 망(206)을 통해 게임 웹사이트(208)에 접속한다. 웹 게임 서버(204)는 도 1을 참조하여 설명한 바와 같이 클라이언트(202)로부터 게임 정보를 수집함을 물론 클라이언트(202)로 추가의 게임 정보를 제공할 수 있다. 게임 프로세서(220)는 사용자에게 게임 옵션들을 제시하고, BBG를 다운로드하고, 실행을 위한 향상된 구도로 BBG를 실행하고, 웹 게임 서버로 점수를 보고하는 등 클라이언트 내에서의 서로 다른 게임 관련 동작들을 상호 조율한다.
웹 브라우저(210)는 웹 서버 상에서 정보 자원의 획득, 표시, 및 횡단(traversing)을 위한 강화된 브라우저이다. BBG를 포함하는 웹 페이지는 하이퍼텍스트 전송 프로토콜 (HTTP)과 같은 표준 웹 프로토콜을 이용하여 게임 웹 사이트(208)로부터 다운로드 된다. 다운로드 된 웹 페이지는 게임 데이터베이스(212)에 저장될 수 있다. 웹 브라우저(210)는 게임 데이터베이스(212)로부터 웹 페이지와 게임을 획득할 수 도 있으며 게임 웹 사이트(208)로부터 다운로드 된 웹 페이지들에 웹 게임 서버(204)로부터 다운로드 된 광고 같은 요소를 추가할 수도 있다. 또한, 게임 서버(220)는 게임을 멈추고 게임 데이터베이스(212에 게임의 상태를 저장할 수 있다. 게임 데이터베이스(212)에 충분한 정보가 저장되면 게임이 중단되었던 시점에서의 게임 상태에서 다시 게임이 시작될 수 있다. 이러한 상태는 플래쉬 플레이어의 상태를 포함하는 웹 페이지 구송요소 상태를 포함한다.
설정 관리기(214)는 사용자가 사용자 프로필과 사용자 식별을 생성하고, BBG 웹 사이드를 선택하고, BBG 웹 사이트에서 사용자 로그인을 저장하고, 선호 게임을 식별하고, 소셜 망 정보를 입력하고, 입력 장치를 맞춤 설정(customizing)하는 등의 BBG실행을 위한 여러 가지 옵션을 설정할 수 있도록 한다. 사용자 데이터베이스(218)는 사용자 관련 정보를 저장하기 위해 사용된다. 게임 정보 획들 모듈(216)은 웹 게임 서버(204)와 게임 웹 사이트(208)로부터 게임 관련 정보를 획득한다. 예를 들어, 게임 정보 획득 모듈(216)은 게임 통계, 신규 게임, 신규 웹 사이트, 게임의 사용자 등급 등과 관련된 정보를 얻는다.
사용자로부터의 입력은 입력 처리기(230)에 의해 수신된다. 사용자 입력은 서로 다른 종류일 수 있으며, 입력 처리기(230) 내의 모듈들은 서로 다른 형태의 입력을 처리하도록 정의 된다. 예를 들어, 제어기 모듈(232)은 게임 제어기를 통해 사용자와 상호 동작하고, 움직임 모듈(234)은 카메라 또는 여타 다른 환경 검출 장치를 통해 사용자 움직임을 획득하고, 음성 모듈(236)은 마이크를 통해 수신된 사용자의 음성 명령을 처리하고, 키보드와 마우스 모듈(238)은 키보드와 마우스 입력을 처리하고, 터치 모듈(240)은 표시 스크린 또는 마우스 패드 상의 터치를 처리한다.
입력 처리기(230)는 입력을 입력 변환 모듈(222), 게임 탐색 모듈(226), 및 게임 선택 모듈(228)로 전송한다. 입력 변환 모듈(222)은 사용자 입력을 게임 프로세서(220)와 웹 브라우저(210)에 의해 사용되는 정보로 변환한다. 예를 들어, 제어기 상의 버튼 활성화는 키보드 입력만을 받아들이는 게임을 실행하기 위해 대등한 키보드 입력 (예를 들어 왼쪽 화살표 키)으로 해석 된다. 입력 변환 모듈(222)은 각 게임에 대해 사용자로부터의 입력을 어떻게 해석하는 지를 정의하는 입력 변환 방법(224)을 포함한다. 입력 변환 방법에 관해서는 아래에서 도 2B 및 도 7을 참조하여 더 상세하게 설명될 것이다.
게임 탐색 모듈(226)은 게임 데이터베이스(212), 게임 웹 사이트(208), 및 웹 게이밍 서버(204)에서 게임을 탐색하기 위해 사용된다. 게임 탐색 모듈을 위한 샘플 인터페이스가 도 8에 도시되어 있다. 게임 선택 모듈은 웹이나 게임 데이터베이스(212)로부터 다운로드 할 수 있는 실행 가능한 게임을 선택하는데 사용된다. 게임 선택 웹 페이지의 일 실시예가 도 6에 도시되어 있다.
도 2B는 입력 변환 모듈의 일 실시예를 도시하고 있다. 매핑 조정 모듈(254)은 대체 모듈을 이용해 BBG를 실행할 때 요구되는 매핑을 결정한다. 입력 변환 모듈(222)은 장치, 매핑, 게임 입력 테이블들을 포함한다. 장치 테이블의 각 항목은 대응 장치의 입력 배치 (layout)를 포함한다. 입력 배치는 장치를 이용해 수행될 수 있는 가능한 입력의 전부 또는 일부를 포함한다. 예를 들어, 키보드 장치는 모든 대문자, 소문자, 스페이스 바, 제어(Ctrl) 키 등의 리스트를 포함할 수 있다. PS3 제어기는 모든 버튼과 조이스틱 움직임 등을 포함할 수 있다.
게임 입력은 각각의 BBG-전용 장치 쌍을 위한 엔트리(entry)를 갖는다. 이들 표제는 전용 장치를 이용해 수행하기 위해 BBG 제공자에 의해 주어진 정의에 대응한다. 매핑 조정기(254)는 매핑 테이블 항목을 생성하거나 다운로드 한다. 각각의 매핑 테이블 항목은 전용 장치와 대응 게임을 수행하기 위한 대체 장치 사이의 매핑을 설명한다. 또한, 특정 게임에 연결되지 않은 서로 다른 두 장치 간의 일반적 매핑이 존재할 수 있다. 이런 식으로 일반적 매핑이 대체 장치를 이용하여 신규 게임을 실행하기 위한 시작점으로서 사용될 수 있다. 이하, 매핑 테이블의 일 실시예를 도 7를 참조하여 상세히 설명한다.
일 실시예에서, 매핑 조정기(254)는 웹 게임 서버(204)로부터 하나의 게임을 위한 매핑 항목을 다운로드 한다. 매핑은 플레이어의 선호에 따라 플레이어에 의해 수정될 수 있다. 플레이어는 테이블 상에 값들을 결정하거나 별도의 항목을 생성할 수 있다. 다른 일 실시예에서, 매핑 조정기(254)는 플레이어에 의해 사용되는 대체 장치를 검출하고 장치 제조 사이트에서 장치 설정을 다운로든 받는다. 일단 장치 레이아웃을 알면, 매핑 조정기(254)는 검출된 대체 장치로 BBG를 실행하기 위해 매핑 테이블 항목을 생성한다. 게임에서 정의된 각각의 동작과 대응하는 전용 입력은 다운로드 된 장치 레이아웃으로부터 선택된 다른 입력을 할당 받는다. 입력 레이아웃은 사용자가 그래픽 유저 인터페이스를 이용해 설정을 변경할 수 있도록 도식적 표현을 포함할 수 있다.
도 2A 및 도 2B에 도시된 실시예들은 BBG 실행을 위한 클라이언트의 예시적 모듈 구성요소들임을 이해하여야 한다. 다른 실시예들에서는 다른 모듈들이 이용되거나 다양한 방식으로 통신 및 인터페이스가 배치될 수 있다. 그러므로, 도 2A및 2B에 도시된 실시예들은 배제되거나 한정되어 해석되어서는 아니 되며 단지 예시적 또는 도시적으로 해석되어야 한다.
도 2C는 전용 입력을 대체 입력으로 매칭하기 위한 방법의 일 실시예를 도시하고 있다. 동작(272)에서, 입력 변환 모듈은 BBG와 관련된 전용 입력과 전용 장치로부터의 전용 입력이 BBG를 실행하기 위해 사용되는 것을 식별할 수 있다. 게임 실행을 위한 대체 장치는 동작(274)에서 확인 된다. 일단 전용 입력과 대체 장치가 식별되면, 입력 변환 모듈의 조정기는 BBG, 전용 장치, 및 대체 장치를 위한 항목이 존재하는지 확인하기 위해 매핑 테이블을 스캔 한다. 특정 항목이 발견되지 않으면, 조정기는 일반 게임 매핑 항목을 위해 스캔 할 수도 있다. 일 실시예에서, 조정기는 또한 전용 장치와 대체 장치를 사용하는 다른 게임들을 위한 항목들을 스캔한다. 동작(278)에서, 조정기는 매핑 테이블 스캔 결과를 이용하여 전용 입력을 대체 입력에 연결한다.
동작(286)에서 방법은 어떤 전용 입력이 아직 매핑 되지 않았는지를 확인한다. 조정기는 식별되는 매핑을 가지지 않거나 부분 매핑 리스트를 가질 수 있다. 예를 들어, 조정기는 키보드의 화살표 키들을 게임 제어기 상의 방향 버튼들에 매핑 시킬 수 있지만, 조정기는 키보드의 스페이스 바를 아직 제어기의 대응 버튼에 매칭시키지 않았을 수도 있다. 아직 매핑 되지 않은 전용 입력이 존재하면, 방법은 동작(282)으로 진행하고 그렇지 않으면 동작(280)으로 진행한다.
동작(282)에서, 조정기는 아직 매핑 되지 않은 전용 입력을 매치 시키기 위해 서버 또는 서버들에 질의 할 수 있다. 서버는 장치 제조자, 게임 제조자, 콘솔 제조자, 등에 속할 수 있다. 일단 이러한 정보가 수집되면, 조정기는 아직 매핑 되지 않은 전용 입력(284)을 서버로부터 수신된 정보에 매핑 한다. 일 실시예에서, 매핑 정보가 없기 때문에 조정기는 대체 장치에 대한 정보만을 수신한다. 이 경우, 조정기는 무작위 매핑을 통해 사용자가 임으로 설정하게 할 수 있다. 일 실시예에서, 조정기는 정용 장치와 대체 입력 사이의 미리 정해진 확률적 할당을 이용할 수 있다. 조정기는 어떤 전용 입력이 대체 장치 내의 대체 입력에 매핑 될 동일한 또는 유사한 확률이 있을 때 결정을 내릴 수 있도록 정의된다.
조정기는 실행되는 게임의 형태 및 기대되는 전용 입력의 이용 및 빈도를 고려할 수도 있다. 조정기는 같은 손의 동일한 손가락 같이 전용 입력과 유사한 동작으로 시발되는 대체 입력을 선택할 수도 있다. 조정기는 특정 게임을 위해 가장 자주 사용되는 버튼에 대한 이해를 기반으로 대체 장치 상의 두 버튼 중에 결정을 내릴 수 도 있다. 예를 들어, 게임에서 버튼이 빈번히 눌려지는 것을 요하면, 조정기는 집게 손가락에 가까운 버튼을 이용하는 대신 엄지 손가락에 가까운 대체 입력을 선택할 수도 있다. 운전 게임과 같이 게임이 빈번한 동작과 관련 있는 경우, 그리고 대체 장치가 조이스틱을 가지는 경우, 조정기는 대체 장치가 자이로, 관성 센서 등의 동작 검출 능력을 가진다면 다른 할당을 수행할 수도 있다. 이런 경우, 조정기는 게임 동작 동작으로 해석하기 위해 제어기 동작을 사용할 것이고, 따라서 사용자는 운전대와 같은 제어기를 이용할 수 있다.
다른 일 실시예에서, 조정기는 브라우저가 게임 정보에 접속하고 다운로드 하는 위치를 식별하기 위해 브라우저와 상호 동작한다. 조정기는 게임 형태를 결정하기 위해 게임 식별은 물론 게임 제공자를 분석 할 수 있다. 일단, 조정기가 게임 형태를 결정하면, 조정기는 이 게임 형태를 관련 지어 상술한 바와 같이 게임 형태에 가장 잘 맞는 매핑을 수행하도록 진행한다.
일단 모든 매핑이 완료되면, 대체 장치로부터 전용 입력으로의 매핑 또는 동작들은 리스트의 형태 또는 대체 장치의 그래픽 표시를 이용하여 서른 다른 전용 입력 또는 게임 동작들이 어떻게 대체 장치를 이용하여 생성되는지를 보여주도록 사용자에게 표시된다.
도 3은 일 실시예에 따른 플래쉬(FLASHTM) 게임 실행을 위한 게임 웹 페이지를 도시하고 있다. 웹 페이지(302)는 컴퓨터 브라우저 상에 표시되면 여러 가지 구성요소를 포함한다. 메뉴 바(304)는 사용자가 명령을 입력하고 브라우저 관련 동작을 수행하기 위한 하위 메뉴에 접근할 수 있도록 한다. 탭(306)은 사용자가 웹 페이지 내의 옵션을 선택하고, 웹 페이지의 다른 영역을 선택하거나, 다른 옵션 세트를 선택할 수 있도록 한다. 예를 들어, 도 3의 실시예는 게임 실행을 위한 페이지 선택을 위한 게임 (Games) 탭, 웹 사이트 내의 게임 구매 페이지로 가지 위한 구매 (Buy) 탭, 그리고 멀티플레이어 게임 실행을 위한 영역으로 브라우저를 전환하기 위한 멀티플레이어 (Multiplayer) 탭을 포함한다.
게임 카테고리 선책 메뉴(308)는 브라우저를 위한 명령을 입력하기 위해 사용되는 메뉴 바(304)와 달리 사용자가 웹 페이지와 연관된 명령을 입력할 수 있도록 한다. 게임이 실행되는 게임 영역(312)은 주목을 끌도록 웹 페이지의 중앙에 위치한다. 일 실시예에서, 게임 영역(312)은 플래쉬 게임을 실행하기 위한 플래쉬 파일에 연결된다. 광고 영역(310)은 상업적 메시지를 표시하며 왼쪽 측면, 오른쪽 측면, 하단 면, 및 상단면 (미도시) 등 페이지의 서로 다른 부분에 위치할 수 있다. 상업 메시지는 텍스트, 그래픽 배너, 비디오 표시, 그래픽 애니메이션, 등 다양한 포맷으로 보여질 수 있다.
게임 선택 영역(314)은 게임을 선택하기 위해 사용된다. 도 3의 실시예는 텍스트 선택 메뉴를 도시하고 있지만 그래픽, 애니매이션, 풀다운 메뉴, 스크롤 바 등 다른 메뉴 영역도 가능하다. 다른 일 실시예에서, 게임 선택은 별도의 웹 페이지에서 수행되며, 일단 플레이어에 의해 게임이 선택되면, 게임 영역(312)을 포함하는 페이지가 다운로드 된다.
도 3에 도시된 실시예는 BBG 페이지를 위한 예시적 구도라는 것을 이해해야 한다. 다른 실시예들은 다른 영역들을 이용할 수도 있으며 다양한 방식으로 페이지 구성요소를 배치할 수도 있다. 그러므로, 도 3에 도시된 실시예들은 한정적 또는 제한적으로 해석되어서는 아니 되며 단지 예시적 또는 도시적으로 해석되어야 한다.
도 3에 도시된 바와 같이, 실행 영역은 종종 실행 체험에 잡음을 가하는 많은 요소들에 의해 둘러싸여 있다. 일부 게임들은 빠른 타이밍 또는 작은 항목들의 처리를 요한다. 이러한 동작들은 작은 가시 영역에서 수행하기 어렵고, 결과적으로 게임 실행 체험이 떨어지게 된다. 더 큰 게임 실행 영역이 실행 체험을 향상시킬 것이다.
도 4는 본 발명의 일 실시예에 따라 웹 게임 실행을 위한 수정된 웹 페이지를 도시하고 있다. 개선된 웹 페이지는 도 3의 웹 페이지(302)의 구송요소들에 더하여 클라이언트에서 향상된 브라우저에 의해 이용되는 추가적인 요소들을 포함한다. 일 실시예에서, 도 4에 도시된 것과 같이, 도 3의 요소들의 상대적 크기가 게임 영역(312)의 크기가 증가되도록 변경되어 있다. 게임 실행과 관련 없는 구성 요소들의 크기는 다른 값들이 가능하더라도 쉼 같이 상수 계수에 의해 축소된다. 다른 실시예에서, 모든 요소들이 동일한 비율로 축소 되지 않는다. 예를 들어, 메뉴 바(304)는 사용자가 브라우저 명령에 쉽게 접근할 수 있도록 변경된다. 또 다른 실시예에서, 게임 영역의 스케일 변경은 표시면을 최대화 하고 게임에 의해 제공되는 픽셀 해상도의 실행 최적화하기 위해 표시장치의 스크린 해상도를 기반으로 정해진다.
추가 요소들이 클라이언트 장치의 향상된 브라우저에 의해 추가된다. 입력 요약 영역(408)은 게임 실행을 위한 선택된 입력 (제어기) 와 입력 장치를 이용하기 위한 명령들을 상세히 표시한다. 도 4에 도시된 실시예는 제어기가 입력 장치로서 선택되었음을 보여준다. 제어기는 양손 제어기 또는 지팡이 (한 손) 제어기가 될 수 있다. 게임에서 동작 "슛(Shoot)"은 X 버튼을 누름으로써 수행되며, 동작(motion)은 지팡이 제어기로 가리키거나 동작 키들을 이용함으로써 수행될 수 있다.
사용자가 게임의 진행 상태를 저장하도록 하는 게임 저장 버튼(404)이 추가될 수 있다. BBG는 상태나 점수가 저장되도록 동작하지 않는다. 일부 기본적인 기능은 브라우저 쿠키 또는 서버 상의 정보 저장을 통해 달성될 수 있다. 브라우저 쿠키는 게임에서 도달한 수준과 같은 기본 정보를 저장할 수 있으나 나중에 회수할 수 있는 게임의 정확한 상태를 저장하기 위해 사용될 수는 없다. 웹 서버에서 정보를 저장하는 것은, 이러한 웹 서버가 수천 수백만의 게임을 제공하고 게임 상태의 저장 및 회수에 매우 큰 비용이 들기 때문에, 일반적이지 않다. 브라우저가 종종 강력한 시스템 사에서 구동되기 때문에, 이러한 강력한 시스템이 게임 상태를 저장하도록 이용하는 것이 가능하다. 클라이언트의 향상된 브라우저는 실행된 게임의 완벽한 상태를 저장한다. 플래쉬 게임의 경우, 이것은 완벽한 메모리 상태 그리고 플래쉬 플레이어가 게임 실행 시 일시적 멈춤을 인식할 필요 없이 나중에 게임을 복원 할 수 있기 위해 요구되는 다른 관련 정보를 저장하는 것을 의미한다.
게임처럼 동일한 서버 또는 도 1 및 도 2의 독립된 웹 게임 서버와 같이 타 서버로부터 다운로드 된 광고 메시지가 배치되는 부가 광고 영역(406)이 추가된다. 다른 일 실시예에서, 게임 영역(312)은 표시부에 맞게 가능한 한 크게 확장되며 일부 웹 페이지 요소들은 게임 실행 중 감추어 질 수도 있다.
도 5는 일 실시예에 따라 확장된 게임 실행 영역을 가진 수정된 웹 페이지를 도시하고 있다. 게임 영역은, 페이지 내의 모든 요소들이 더 큰 게임 영역을 확보하기 위해 축소됨으로써, 확장되었다. 줌 효과가 사용되어 다른 요소들이 줌-아웃 되는 한편 게임 영역에서 줌-인 된다. 이렇게 함으로써 게임 영역 외부의 요소들이 왜곡되는 결과를 가져온다.
도 6은 개인 BBG 포털의 일 실시예를 도시하고 있다. 일 실시예에서, 개인 BBG 포털은 도 2A에 도시한 바와 같이 클라이언트에서의 활용할 수 있는 정보를 이용하여 클라이언트에서 생성된다. 다른 실시예에서, 개인 BBG 포털은 도 2A의 웹 게임 서버(204)와 같은 중앙 서버에서 생성되거나 클라이언트에서의 정보와 웹 게임 서버에서의 정보로부터 조합에 의해 생성 된다. BBG 메뉴 영역(604)은 플레이어가 다른 플레이어들과 함께 실행하고 온라인으로 친구를 찾는 등의 탐색 게임, 서열 게임 등의 게임과 관련된 옵션을 선택할 수 있도록 한다. 영역(606)에서 실행된 마지막 게임은 실행된 마지막 5 게임에 신속한 접속을 제공한다. 각 게임을 위한 하이퍼링크는 플레이어가 신속히 요청된 BBG를 위한 페이지를 로드 할 수 있도록 한다. 모든 저장된 게임들의 리스트가 스크롤 바로 사용자가 저장된 게임들을 브라우징 할 수 있는 저장된 게임 영역(614)에 표시된다.
선호 영역은 플레이어가 그녀의 선호 리스트에 추가한 게임들을 표시한다. 만약 선호 게임의 수가 스크린 상에 가능한 영역을 벗어나면, 스크롤 바나 기타 방향 버튼이 더 제공될 수 있다. 또한, 게임들이 스크린 상에 한번에 더 많은 게임을 표시하기 위해 리스트의 형태로 표시 될 수도 있다. 게임들 중 어느 하나를 클릭해서 게임에 대응하는 페이지를 로드 할 수 있다. 시스템은 신규 게임을 위해 플레이어에게 제안을 제공할 수도 있다. 신규 게임 제안 영역(612 )은 플레이어를 위해 일부 가능한 게임 아이디어들을 나열한다. 제안을 선택하기 위한 알고리즘은 웹 상에서 가능한 신규 게임에 대한 정보뿐만 아니라 실행된 게임의 이력에 대한 지식을 기반으로 한다. 상기 알고리즘은 플레이어에게 유사한 게임을 제안하기 위해 실행되었던 게임들의 형태(퍼즐, 전투, 운전, 등)를 고려한다. 상기 알고리즘은 다른 플레이어들에 의한 게임의 인기 및 등급을 고려한다. 또한, 상기 알고리즘은 제안된 형태의 게임들의 다양성을 증가시키기 위해 무작위 게임들을 추가할 수 도 있다. 가장 많이 실행된 게임 영역(608)에는 소셜 망 (여기서는 PlayStationTM 망)에서 가장 빈번하게 실행된 게임들이 나열된다.
광고 영역(616)은 상업적 메시지를 표시한다. 도 4 내지 6에 도시된 실시예들은 예시적 브라우저의 배치라는 것을 이해해야 한다. 다른 실시예들에서는 다른 영역들이 이용될 수도 있으며 아이콘 형태의 버튼을 하이퍼링크로 대체하는 등과 같이 다양한 방식으로 구성요소들을 배치할 수도 있다. 도 4 내지 6에 도시된 실시예들은 한정적 또는 제한적으로 해석되어서는 아니 되며 예시적 또는 도시적으로 해석되어야 한다.
도 7은 일 실시예에 따라 대체 입력 장치에 의해 수신된 명령을 해석하기 위한 입력 매핑 테이블을 도시하고 있다. 상술한 바와 같이, 대부분의 BBG들이 키보드나 마우스를 위해 설계된다. BBG를 실행하기 위한 향상된 클라이언트는 다른 장치로부터 수신된 입력을 BBG에 의해 처리될 수 있는 대응하는 키보드 및 마우스 입력으로 변형한다. 따라서, 키보드와 마우스 입력이 게임 실행을 위해 시스템에 의해 에뮬레이트 된다. 일 실시예에서, 도 2A의 클라이언트(202)의 입력 변환 모듈(222)이 입력 해석을 수행한다.
일반적인 BBG는 사용자에게 게임과의 상호동작 방법을 보여주기 위해 (명시적 또는 게임에 사상된) 사용자 지시들을 포함한다. 따라서, 상이한 입력들이 특정 게임 동작들에 매핑 되고, 주어진 입력이 게임 상태에 따라 하나 이상의 상이한 동작들을 유도할 수 있다. 입력 매핑 테이블(702)의 첫 번째 열은 상이한 가용 게임 동작들을 포함하며, 나머지 열들은 대응하는 입력 장치를 이용해 게임에서 이러한 동작을 유도하기 위해 요구되는 입력들을 나타낸다. 키보드 열은 이러한 동작을 생성할 수 있는 키보드 키 또는 키들을 나타낸다. 예를 들어, "왼쪽 이동" 동작은 키보드의 "A"키 또는 왼쪽 화살표 키를 누름으로써 달성될 수 있다.
이후의 각 열들은 특정 대체 입력 장치를 위한 대응하는 입력들의 집합을 정의한다. 예를 들어, 점프 동작은, 신체 언어 인식을 이용할 때, 플레이어가 허공에 점프하는 동작에 의해 달성될 수 있다. 도 7에 도시된 실시예는 전부는 아니지만 가장 많은 동작들이 키보드와 마우스를 통해 수행될 수 있음을 보여주지만, 종종 게임이 키보드 또는 마우스를 이용하여 실행되도록 설계되기 때문에 이것이 항상 사실은 아니다. 이것은 매핑 테이블(702) 내의 일부 항목들이 비어 있을 수 있음을 의미한다. 대체 장치를 이용한 게임 실행을 위한 요구사항은 BBG를 위해 정의된 모드 동작들이 대체 입력 장치로 달성될 수 있어야 한다는 것이다. 또한, 하나 이상의 대체 입력 장치가 이용되고 있다면, 요구사항은 각 게임 별로 정의된 동작이 대체 입력 장치들 중 적어도 하나에 의해 달성될 수 있어야 한다는 것이다.
몇몇 경우에, 어떤 동작은 입력 시퀀스 또는 결합에 의해 유도될 수 있다. 예를 들어, 스페이스 바를 연속으로 빠르게 두 번 누름으로써 더블 점프가 생성될 수 있으며, 게임 오브젝트 활성화는 마우스 상의 두 개의 버튼을 동시에 클릭 함으로써 수행될 수 있다. 일반적으로, 입력 시퀀스 또는 조합은 동등한 키보드 또는 마우스 시퀀스 및 조합에 매핑 될 수 있으면, 입력 시퀀스는 하나의 키보드 또는 마우스 입력에 매핑 될 수 있고, (제어기 버튼 누르기 같은) 단일 동작은 키보드 또는 마우스 시퀀스 등에 매핑 될 수 있다. 또한, 시퀀스는 조합에 매핑 될 수 있으면 그 반대도 마찬가지다. 사실, 해석되는 입력은 여러 동작으로 매핑 될 수 있다. 예를 들어, 대각선 방향으로의 제스처는 수평 방향 이동 동작과 수직 방향 이동 동작으로 매핑 될 수 있다. 따라서, 전용 장치로부터의 어떤 단일 입력, 입력 시퀀스, 또는 입력 조합은 대체 장치로부터의 단일 입력, 입력 시퀀스, 또는 입력 조합에 매핑 될 수 있으면, 그 역도 마찬가지이다.
일 실시예에서, 특정 게임을 위한 입력 테이블은 프로파일러(profiler)에 의해 단 한번 생성되며 이후 웹 게임 서버에서 다른 플레이어들로 사용 가능해 진다. 프로파일러는 대체 입력 장치들을 이용해 실행되는 게임을 시험하고 게임이 입력 처리 타이밍이나 스크린 해상도 문제와 같은 문제들 (예를 들어, 플레이어가 게임을 바르게 실행하기에 너무 느리거나 너무 빠르게 움직이지 않는지) 없이 잘 실행될 수 있음을 확인한다.
입력 매핑 테이블은 사용자에 의해 더 개인화 될 수 있다. 별도의 웹 페이지 또는 유사한 장치가 매핑을 변경하기 위해 클라이언트 장치 또는 웹 게임 서버에 의해 제공된다. 일 실시예에서, 시스템은 플레이어에게 모든 게임 별로 정의된 동작을 세시하고, 플레이어는 입력 장치 또는 장치들을 선택한다. 각 동작에 대해, 사용자는 풀다운 메뉴로부터 주어진 장치에 대해 가능한 모든 옵션들을 선택한다. 일단 매핑이 갱신되면, 사용자는 (게임 데이터베이스 같은) 클라이언트 장치에 매핑 테이블을 저장하고 이후의 BBG 게임들은 갱신된 테이블을 이용하여 실행된다. 다른 일 실시예에서, 사용자들은 타 사용자들이 이미 완료된 작업을 이용할 수 있도록 허용하기 위해 공동체 페이지에 그들의 입력 매핑 테이블을 게시한다.
일 실시예에서, 프로파일러는 상이한 게임 카테고리들을 위한 일련의 기본 템플릿들을 정의한다. 예를 들어, 어떤 하나의 템플릿은 슈팅 게임용으로 생성되고, 다른 템플릿은 퍼즐 게임용으로 생성되며, 또 다른 템플릿은 전투 게임용으로 생성된다. 플레이어가 특정 BBG 를 실행하고자 하는 경우, 플레이어는 BBG 실행을 위한 시작점으로서 상기 템플릿들 중 하나를 선택한다. 이후 템플릿은 앞서 언급한 바와 같이 개인화될 수 있으며, 최종 결과는 BBG를 실행하기 위해 저장된다. 선택적으로, 갱신된 템플릿은 타 플레이어들이 사용할 수 있도록 처리될 수 있다.
다른 일 실시예에서, 시스템에 의해 디폴트 템플릿이 제공될 수 있다. BBG는 일반적으로 복잡도가 낮거나 중간이기 때문에, 입력의 수가 제한되거나 정해지는 경향이 있다. BBG는 주로 단순하고 낙은 학습 곡선을 가지도록 설계 된다. 결과적으로, 대다수의 BBG가 도일한 키보드 또는 마우스 명령으로 실행된다. 예를 들어 키보드 기반의 게임은 오로지 방향키, 스페이스 키, 그리고 ESC 키를 사용하기 십상이다. 마우스 기반의 게임은 마우스 동작과 하나의 버튼을 사용하기 십상이다. 이러한 단순한 BBG에 대해, 디폴트 입력 매핑 테이블은 기본 키보드와 마우스 입력을 대신하는 대체 입력 장치들을 위해 유용하다.
도 8은 일 실시예에 따른 BBG 탐색 페이지를 도시하고 있다. 탐색 페이지는 플레이어에게 여러 가지 탐색 옵션을 제시한다. 플레이어는 동시에 탐색을 수행하기 위해 이들 옵션들 중 하나 이상을 선택할 수 있다. 플레이어는 게임 사이트(802)에 의해 탐색을 수행 할 수 있고 하나의 웹 사이트, 하나의 웹 사이트 그룹, 또는 모든 웹 사이트를 선택할 수 있다. 카테고리(804) 탐색은 전쟁, 보드, 퍼즐 등의 특정 장르 내의 게임을 탐색하기 위해 사용된다. 플레이어는 신규 게임 만을 요청하거나 가장 대중적인 게임 (상위 40 808) 중에서 탐색할 수 있다. 또한, 플레이어는 게이밍 공동체(810)로부터 제안을 수신하거나 게임 친구들(812)이 실행하고 있는 게임에 대해 학습하기를 원할 수도 있다.
배열(814) 옵션은 플레이어가 결과, 웹 사이트, 출시일 등에 의해 분류된 결과를 볼 수 있도록 한다. 모든 옵션이 설정되면, 지금 탐색 버튼(816)이 게임 탐색을 시작한다. 무작위 탐색 버튼(818)은 페이지 상의 모든 탐색 옵션을 무시하고 무작위 게임 탐색을 생성한다.
탐색은 도 2A의 게임 데이터베이스(212), 웹 게임 서버(204)의 데이터베이스, 게임 웹 사이트 상의 정보, 또는 이들의 조합과 같은 지역 데이터베이스 조사함으로써 수행된다. 도 8에 도시된 실시예는 예시적인 것임을 이해해야 한다. 다른 실시예들은 상이한 필드, 상이한 선택 옵션 (확인 버튼, 풀다운 메뉴 등)을 이용하거나 또는 다양한 방식으로 필드들을 배열할 수도 있다. 그러므로, 도8에 도시된 실시예는 한정적 또는 제한적으로 해석되어서는 아니 되면 예시적 또는 도시적으로 해석되어야 한다.
도 9는 본 발명의 일 실시예에 따라 BBG를 실행하기 위한 절차적 흐름을 도시하고 있다. 동작(902)에서, 방법 수행은 게임을 위해 정의된 전용 입력의 정의를 수신한다. 이들 게임 입력은 도 7의 예에서 보는 바와 같이 게임 속 동작을 유도 할 수 있다. 전용 입력은 전용 장치에 의해 생성된다. 일 실시예에서, 전용 장치는 키보드나 마우스 같은 표준 데스크톱 컴퓨터 입력 장치이다.
또한, 동작(904)에서, 대체 장치는 게임에 접속할 때 검출된다. 대체 장치는 전용 입력들을 가지지 않는다. 동작(906)에서, 방법 동작은 전용 장치로부터의 전용 입력을 대체 장치로부터의 복수의 대체 입력에 매핑 한다. 대체 장치에 의해 생성된 입력은 동작(908)에서 대응하는 전용 입력으로 해석된다. 이러한 해석은 게임 속 대응 동작을 유도하기 위해 이전에 수행된 매핑에 따라 수행된다. 동작(910)에서, 대체 입력을 위한 매핑은 게임 실행 동안 대체 입력을 해석하기 위해 유지되면 게임 속 대응 동작을 유도한다.
도 10은 본 발명의 일 실시예에 따라 BBG를 실행하기 위해 사용될 수 있는 하드웨어와 사용자 인터페이스를 도시하고 있다. 도 10은 소니 플레이스테이션 3 (Sony ® Playstation 3®) 오락기, 본 발명의 일 실시예에 따라 BBG와 함께 대체 입력 방법 인터페이싱을 위해 적합한 콘솔의 전체 시스템 구조를 개략적으로 도시하고 있다. 시스템 유닛(1400)은 시스템 유닛(1400)에 연결 가능한 다양한 주변 장치들과 함께 제공된다. 시스템 유닛(1400)은: 셀 프로세서(1428); 램버스 능동 막기억 장치 (Rambus ® XDRAM) 유닛; 전용 비디오 램 유닛(1432)을 가지는 현실 합성 그래픽 유닛(1430); 그리고 I/O 브릿지(1434)를 포함한다. 시스템 유닛(1400)은 또한, I/O 브릿지(1434)를 통해 접근 가능한, 디스크(1440a)로부터 읽어 들이기 위한 블루레이 디스크 롬 (BluRay ® Disk BD-ROM®) 광학 디스크 리더(1440)와 제거 가능한 슬롯 삽입 하드 디스크 드라이브 (HDD)(1436)를 포함한다. 선택적으로, 시스템 유닛(1400)은 I/O 브릿지(1434)를 통해 접근 가능한 컴팩드 플래쉬 메모리 카드, 메모리 스틱 (Memory Stick®) 메모리 카드 등을 읽어 들이기 위한 메모리 카드 리더(1438)를 포함한다.
I/O 브릿지(1434)는 또한 여섯 개의 범용 직렬 버스 (USB) 2.0 포트(1424); 기가비트 이더넷 포트(1422); IEEE 802.11b/g 무선 망 (Wi-Fi) 포트(1420); 및 일곱 개까지 블루투스 (Bluetooth®) 연결을 지원하는 블루투스 무선 링크 포트(1418)에 연결된다.
동작 시, I/O 브릿지(1434)는 하나 또는 그 이상의 게임 제어기(1402-1403)로부터의 데이터를 포함하는 모든 무선, USB, 및 이더넷 데이터를 처리한다. 예를 들어, 사용자가 게임을 할 때, I/O/ 브릿지(1434)는 블루투스 링크를 통해 게임 제어기(1402-1403)로부터 데이터를 수신하여 현재의 게임 상태를 갱신하는 셀 프로세서로 전달한다.
무선, USB, 및 이더넷 포트는 또한 게임 제어기(1402-1403)에 더해 리모트 컨트롤(1404); 키보드(1406); 마우스(1408); 소니 휴대용 플레이 스테이션 (Sony Playstation Portable®) 오락기와 같은 휴대용 오락기(1410); 아이토이 (EyeToy®) 비디오 카메라(1412)와 같은 비디오 카메라; 마이크 헤드 셋(1414); 및 마이크(1415)와 같은 기타 주변 기기에 대한 연결성을 제공한다. 이러한 주변 기기들은 주로 시스템 유닛(1400)과 무선으로 연결되면; 예를 들어, 마이크 헤드 셋(1414)이 블루투스 링크를 통해 연결될 수 있는 반면, 휴대용 오락기(1410)는 애드 혹 Wi-Fi 연결을 통해 통신할 수도 있다.
이러한 인터페이스를 제공함으로써 플레이스테이션 3 장치는 디지털 비디오 레코더 (DVR), 셋톱 박스, 디지털 카메라, 휴대용 매체 재생기, IP 기반 음성 전화기, 이동 전화기, 프린터, 및 스캐너 같은 기타 주변 기기들과 호환될 수도 있다.
또한, 기존의 메모리 카드 리더(1416)는, 플레이스테이션(Playstation®) 또는 플레이스테이션 2(Playstation 2®)에 의해 사용되는 류의 메모리카드(1448)의 독출이 가능한 USB 포트(1424)를 통해 시스템 유닛에 연결될 수 있다.
게임 제어기(1402-1403)는 블루투스 링크를 통해 시스템 유닛과 무선으로 통신하도록 동작할 수 있고 또한 USB 포트에 의한 연결을 통해 게임 제어기(1402-1403)의 배터리 충전을 위한 전력도 공급할 수 있다. 게임 제어기(1402-1403)는 메모리, 프로세서, 플래쉬 메모리와 같은 영구 메모리, 구형 조명 (illuminated spherical section), LED, 또는 적외선 조명과 같은 광 방사기 (light emitter), 초음파 통신을 위한 마이크와 스피커, 음향실 (acoustic chamber), 디지털 카메라, 내부 시계, 게임 콘솔과 마주하는 구형부와 같은 인지 가능한 모양, 블루투스(Bluetooth®), WiFiTM, 등과 같은 프로토콜을 이용한 무선 통신을 포함할 수 있다.
게임 제어기(1402)는 양손을 이용하여 사용될 수 있도록 설계된 제어기이며, 게임 제어기(1403)는 볼이 달린 한 손 기반의 제어기이다. 하나 또는 그 이상의 조이스틱과 종래의 제어 버튼들과 더불어, 게임 제어기는 3차원 위치 결정이 가능하다. 결과적으로, 게임 제어기의 사용자에 의한 제스처와 동작이 종래의 버튼 또는 조이스틱 명령과 더불어 또는 그것을 대신하여 게임에 대한 입력으로 해석될 수 있다. 옵션으로, 휴대용 플레이스테이션 (PlaystationTM Portable) 장치와 같은 무선 연결 가능한 주변 장치들이 제어기로서 사용될 수도 있다. 휴대용 플레이스테이션 (PlaystationTM Portable) 장치의 경우, (예를 들어, 제어 명령 또는 생존자의 수) 추가적 게임 또는 제어 정보가 장치의 스크린 상에 제공될 수 있다. 댄스 매트(미도시), 광선 건 (미도시), 스티어링 휠 및 페달 (미도시) 또는 신속한 응답 퀴즈 게임 (미도시)을 위한 하나 또는 여러 개의 큰 버튼과 같은 맞춤형 제어기와 같은 기타 대체 또는 부가 제어 장치들이 사용될 수도 있다.
리모트 컨트롤(1404)도 블루투스 링크를 통해 시스템 유닛(1400)과 무선으로 통신하도록 동작할 수 있다. 리모트 컨트롤(1404)은 블루레이 디스크 재생기 (RayTM Disk BD-ROM reader)(1440)와 디스크 내용 탐색을 위한 동작에 맞는 제어들을 포함 할 수 있다.
블루레이 디스크 재생기 (RayTM Disk BD-ROM reader)(1440)는 종래의 사전 기록된 그리고 기록 가능한 CD들과 이른바 수퍼 오디오 CD와 더불어 플레이스테이션과 플레이 스테이션 2 장치들과 호환되는 CD-ROM을 독출 하도록 동작할 수 있다. 재생기(1440)는 종래의 사전 기록된 그리고 기록 가능한 DVD들과 더불어, 플레이스테이션 2 및 플레이스테이션 3 장치와 혼환 가능한 DVD-ROM을 독출 하도록 동작할 수 있다. 재생기(1440)는 또한 종래의 사전 기록된 그리고 기록 가능한 블루레이 디스크는 물론 플레이스테이션 3와 호환 가능한 BD-ROM 을 독출 하도록 동작할 수 있다.
시스템 유닛(1400)은 현실 합성 그래픽 유닛(1430)을 통해 플레이스테이션 3 장치에 의해 생성 또는 복호된 오디오 및 비디오를 디스플레이(1444)와 하나 이상의 확성스피커(1446)를 가지는 모니터 또는 텔레비전 세트와 같은 표시 및 음향 출력 장치(1442)에 대한 오디오 및 비디오 커넥터를 통해 공급하도록 동작할 수 있다. 오디오 커넥터(1450)는 종래의 아날로그 및 디지털 출력을 포함하는 한편, 비디오 커넥터(1452)는 비디오, S-비디오, 컴포지트(composite) 비디오, 그리고 하나 이상의 고 해상도 멀티 미디어 인터페이스 (HDMI) 출력을 다양하게 포함할 수 있다. 결과적으로, 비디오 출력은 PAL 또는 NTSC, 또는 720p, 1080i, 또는 1080p 고해상도와 같은 포맷이 될 수 있다.
오디오 처리 (생성, 복호 등등)는 셀 프로세서(1428)에 의해 수행된다. 플레이스테이션 3의 오퍼레이션 시스템은 돌비(Dolby®) 5.1 서라운드 사운드, 디지털 씨어터 서라운드 (DTS), 그리고 블루레이로부터의 7.1 서라운드 사운드 복호를 지원한다.
본 발명에서, 비디오 카메라(1412)는 전자 결합 소자 (CCD), LED 지시기, 그리고 하드웨어 기반 실시간 데이터 압축 및 부호화 장치를 포함하며 따라서, 압축된 비디오 데이터는 시스템 유닛(1400)에 의해 복호 될 수 있도록 하는 인트라-이미지 기반 MPEG (motion picture expert group) 표준과 같은 적절한 포맷으로 전송될 수 있다. 카메라 LED 지시기는 예를 들어 역광 상태를 알리기 위해 시스템 유닛(1400)으로부터의 적절한 제어 데이터에 응답하여 발광하도록 설정될 수 있다. 비디오 카메라(1412)의 실시예는 USB, 블루투스, 또는 Wi-Fi 통신 포트를 통해 시스템 유닛(1400)에 다양하게 연결될 수 있다. 비디오 카메라 실시예는 하나 이상의 연결된 마이크를 포함할 수 있으며 또한 오디오 데이터를 전송할 수 있다. 비디오 카메라 실시예에서, CCD는 고해상도 비디오 획득에 적당한 해상도를 가질 수 있다. 사용 중, 비디오 카메라에 의해 획득된 이미지는 예를 들어 게임에 포함되거나 게임 제어 입력으로서 해석될 수 있다. 다른 일 실시예에서, 카메라는 적외선을 검출할 수 있는 적외선 카메라이다.
일반적으로, 시스템 유닛(1400)의 통신 포트들 중 하나를 통해 비디오 카메라나 리모트 컨트롤과 같은 주변 장치들과의 성공적인 데이터 통신을 위해, 장치 드라이버와 같은 적절한 소프트에어가 제공되어야 한다. 장치 드라이버 기술은 잘 알려져 있기 때문에, 장치 드라이버나 유사한 소프트웨어 인터페이스가 기술된 본 실시예에서 요구될 수 있음을 당업자가 알고 있음을 언급하는 것으로 상세한 설명을 대신한다.
도 11은 명령을 처리하기 위해 사용될 수 있는 추가적인 하드웨어를 도시하고 있다. 셀 프로세서(1428)는 네 개의 기본 요소: 메모리 제어기(1560)와 듀얼 버스 인터페이스 제어기(1570A, B)로 구성되는 외부 입출력 구조; 파워 프로세싱 엘리먼트 (Power Processing Elements, SPEs)(1510A-H)로 불리는 여덟 개의 공동 프로세서; 그리고 구성요소 상호 연결 버스(1580)로 불리며 상기 구성요소를 연결하는 환형 데이터 버스를 포함하는 구조를 가진다. 셀 프로세서의 전체 부동 소수점 성능은, 플레이스테이션 2 장치의 이모션 엔진 (Emotion Engine)의 6.2 GFLOPS와 비교해서, 218 GFLOPS 이다.
PPE(1550)는 3.2 GHz 의 내부 클럭으로 동작하는 쌍방향 동시 멀티 쓰래딩 파워(1470) 호환의 파워 피씨 (PowerPC) 코어 (PPU)를 기반으로 한다. PPU(1555)는 512 kB 레벨 2 (L2) 캐쉬와 32 kB 레벨 1(L1) 캐쉬를 포함한다. PPE(1550)는 3.2 GHz로 25.6 GFLOPs을 해석하여 클락 사이클 단위로 여덟 개의 단일 위치 동작 수행(single position operation)이 가능하다. PPE(1550)의 중요한 역할은 대부분의 계산 작업을 처리하는 상승작용 처리 요소 (Synergistic Processing Elements)(1510A-H)를 위한 제어기 역할을 하는 것이다. 동작 시, PPE(1550)는 상승작용 처리 요소(1510A-H)의 작업을 스케줄링 하고 그 처리를 모니터링 하면서 작업 큐(job queue)을 유지한다. 결국, 각각의 상승작용 처리 요소(1510A-H)는 작업을 가져오는 역할을 하는 커널을 구동하고 PPE(1550)과의 동기화를 통해 그것을 실행한다.
각 상승작용 처리 요소 (SPE)(1510A-H)는 각각의 상승 작용 처리 유닛 (SPU)(1520A-H), 각각의 다이나믹 메모리 접근 제어기(DMAC)를 가지는 각각의 메모리 플로우 제어기 (MFC)(1540A-H), 각각의 메모리 관리 유닛 (MMU), 그리고 버스 인터페이스 (미도시)를 포함한다. 각각의 SPU(1520A-H)는 3.2 GHz로 동작하는 RIIC 프로세서이며 원칙적으로 4 GB까지 확장 가능한 256kB 지역 RAM(1530A-H)을 포함한다. 각 SPE는 논리적 25.6 GFLOPS의 단일 정밀 성능(single precision performance)을 제공한다. SPU는 네 개의 단일 정밀 부동 소수점 수, 4개의 32 비트 수, 8개의 16 비트 정수, 또는 16개의 8 비트 정수 상에서 동작 할 수 있다. 동일한 클럭 사이클에서, 메모리 동작도 수행할 수 있다. SPU(1520A-H)는 시스템 메모리 XDRAM(1426)을 직접 접근하지 않으며; SPU(1520A-H)에 의해 형성된 64 비트 주소는 DMA 제어기(1542A-H)가 구성요소 상호연결 버스(1580) 또는 메모리 제어기(1560)를 통해 메모리에 접근하도록 지시하는 MFC(1540A-H)로 전달된다.
구성 요소 상호연결 버스 (EIB)(1518)는 상위 프레세서 구성요소들, 즉 PPE(1550), 메모리 제어기(1560), 듀얼 버스 인터페이스(1570A, B) 및 8개의 SPE들(1510A-H) 등 전체 12 개의 참여 요소들을 연결하는 셀 프로세서(1428)에 대한 내부 논리적 순환형 통신 버스이다. 참여 요소들은 클럭 사이클 단위로 8 바이트의 속도록 버스를 통해 동시에 읽고 쓸 수 있다. 상술한 바와 같이, 각 SPE(1510A-H)는 긴 읽기 쓰기 시퀀스를 스케줄링 하기 위한 DMAC(1542A-H)을 포함한다. EIB는 시계방향과 반 시계방향 각각에 두 개씩 네 개의 채널로 구성된다. 결과적으로 12개의 참여 요소들에 대해, 어떤 두 개의 참여 요소 사이에서 가장 긴 단계적 데이터 흐름은 적절한 방향으로 6 단계이다. 그러므로, 12개의 슬롯을 위한 논리적 피크 순간 EIB는 참여 요소들 사이의 중재를 통한 완전 가동 상황에서 클럭 당 96이다. 이는 3.2GHz 클럭 속도에서 307.2GH/s (초당 기가바이트) 의 논리적 피크 대역폭과 같다.
메모리 제어기(1560)는 램버스 사에 의해 개발된 XDRAM 인터페이스(1562)를 포함한다. 메모리 제어기는 25.6 GB/s의 논리적 피크 대역폭을 가지는 램버스 XDRAM(1426)과 상호 동작한다.
듀얼 버스 인터페이스(1570A, B)는 램버스 플랙스아이오 (Rambus FlexIO®) 시스템 인터페이스(1572A, B)를 포함한다. 인터페이스는 다섯 개의 인바운드 패스와 일곱 개의 아웃바운드 패스를 가지는 각각 8 비트 너비의 12 채널로 편성된다. 이는 제어기(170A)를 통한 셀 프로세서와 I/O 브릿지(700) 그리고 제어기(170B)를 통한 현실 시뮬레이터 그래픽 유닛(200)사이에 62.4 GB/s (36.4 GB/s 아웃바운드, 26 GB/s 인바운드)의 이론적 피크 대역폭을 제공한다.
셀 프로세서(1428)에 의해 현실 시뮬레이터 그래픽 유닛(1430)으로 전송된 데이터는 일반적으로 꼭지점을 그리기 위한 일련의 명령 시퀀스인 표시 리스트로 구성되며, 다각형에 질감을 적용하고, 조명 상태를 정의한다.
도 12는 본 발명의 일 실시예에 따라 인터넷을 통해 서버에 연결되는 게임 클라이언트(1102)와 상호작용 하는 장면 A 내지 장면 E와 각각의 사용자 A 내지 사용자 E를 예시적으로 도시하고 있다. 게임 클라이언트는 인터넷을 통해 사용자가 서버 어플리케이션과 처리 절차에 연결할 수 있도록 해주는 장치이다. 게임 클라이언트는 사용자들이 영화, 음악, 사진과 같은 (그러나 이에 한정되지 않는) 온라인 오락 컨텐츠에 접속하여 실행할 수 있도록 한다. 또한, 게임 클라이언트는 VOIP, 텍스트 채팅 프로토콜, 이메일과 같은 온라인 통신 애플리케이션들에 접속을 제공한다.
사용자는 제어기를 통해 게임 클라이언트와 상호 동작한다. 일부 실시예들에서, 제어기는 게임 클라이언트 전용 제어기이며, 다른 실시예들에서, 제어기는 키보드와 마우스의 조합이 될 수 있다. 일 실시예에서, 게임 클라이언트는 모니터/텔레비전을 통해 멀티미디어 환경을 만들기 위해 오디오와 비디오 신호를 출력할 수 있는 오디오 장치와 연결된 독립 장치이다. 예를 들어, 게임 클라이언트는, 신 클라이언트 (thin client)에 제한되는 것이 아니며, 피씨아이 익스프레스(PCI-express) 카드 장치, 익스프레스카드 파이어와이어 (ExpressCard Firewire) 장치, 내부, 외부, 또는 무선 USB 장치, 또는 파이어와이어 (Firewire) 장치 등이 될 수 있다. 다른 실시예들에서, 게임 클라이언트는 텔레비전 또는 DVR, 블루레이 재생기, DVD 재생기, 또는 다채널 수신기와 같은 기타 멀티미디어 장치에 통합될 수 있다.
도 12의 장면 A에서, 사용자 A는 게임 클라이언트(1102A)와 쌍을 이루는 제어기(100)를 이용하여 모니터(106) 상에 표시된 클라이언트 애플리케이션과 상호동작 한다. 마찬가지로, 장면 B에서, 사용자 B는 게임 클라이언트(1102B)와 쌍을 이루는 제어기(100)을 이용하여 모니터(106) 상에 표시되는 또 다른 클라이언트 애플리케이션과 상호동작 한다. 장면 C는, 사용자 C가 게임과 게임 클라이언트(1102C)로부터의 버디 리스트를 표시하고 있는 모니터를 바라보는 것과 같은, 사용자 C 뒤쪽으로부터의 조망을 도시하고 있다. 도 12가 단일 서버 처리 모듈을 보여주는 반면, 일 실시예에서, 전세계에 걸친 다수의 서버 처리 모듈들이 존재한다. 각 서버 처리 모듈은 사용자 세션 제어, 공유/통신 로직, 사용자의 지리적 위치, 트래픽 분산 (load balance) 처리 서비스를 위한 하위 모듈들을 포함한다. 또한, 서버 프로세싱 모듈은 망 처리 및 분산 저장소를 포함 할 수 있다.
게임 클라이언트(1102)가 서버 처리 모듈에 연결될 때, 사용자 세션 제어가 사용자 검증을 위해 사용될 수 있다. 검증된 사용자는 가상화된 분산 저장과 가상화된 망 처리를 가질 수 있다. 사용자의 가상화 분산 저장의 일부로서 저장될 수 있는 예시적 항목들은 게임, 비디오, 음악 등 (그러나 이에 한정되지 않는)의 구매 매체를 포함한다. 또한, 분산된 저장소가 다수의 게임에 대한 게임 상태, 각 게임들에 대한 개인 설정, 및 게임 클라이언트에 대한 일반 설정을 저장하기 위해 사용될 수 있다. 일 실시예에서, 처리 서버의 사용자 지리적 위치 모듈은 사용자와 각각의 게임 클라이언트의 지리적 위치를 결정하기 위해 사용된다. 사용자의 지리적 위치는 지리적 위치와 다수의 서버 처리 모듈의 요구 처리를 기반으로 성능을 최적화를 위해 공유/통신 로직과 트래픽 분산 처리 서비스에 의해 사용될 수 있다. 망 처리 및/또는 망 저장을 가상화 함으로써, 게임 클라이언트로부터의 작업 처리가 충분히 사용되지 않고 있는 서버 처리로 동적으로 이동 될 수 있다. 따라서, 트래픽 분산은 저장소로부터의 리콜 및 서버 처리 모듈과 게임 클라이언트들 사이의 데이터 전송과 관련된 지연을 최소화 하기 위해 사용될 수 있다.
도 12에서 보는 바와 같이, 서버 처리 모듈은 서버 애플리케이션 A와 서버 애플리케이션 B의 인스턴스 (instance)를 가진다. 서버 처리 모듈은 서버 애플리케이션 X1 과 서버 애플리케이션 X2 에 의해 지시되는 것처럼 다수의 서버 애플리케이션을 지원할 수 있다. 일 실시예에서, 서버 처리는 클러스터 내의 다수의 프로세서가 서버 애플리케이션들을 처리할 수 있는 클러스터 컴퓨팅 구조를 기반으로 한다. 다른 일 실시예에서, 상이한 형태의 다중 컴퓨터 처리 방식이 서버 애플리케이션들을 처리하기 위해 적용된다. 이는 서버 처리가 다수의 클라이언트 애플리케이션 및 대응 서버 애플리케이션을 실행하는 많은 수의 게임 클라이언트를 수용하기 위해 단계적으로 수행될 수 있다. 한편, 서버 처리는 요구되는 더 많은 그래픽 처리 또는 게임, 비디오 압축, 또는 애플리케이션 복잡도에 의해 요구되는 증가된 컴퓨팅 요구를 수용하기 위해 단계적으로 수행될 수 있다. 일 실시예에서, 서버 처리 모듈은 서버 애플리케이션을 통해 대다수의 처리를 수행한다. 이로 그래픽 프로세서, RAM, 및 일반 프로세서와 같은 비교적 비싼 구성 요소들이 중앙에 위치 되도록 하고 게임 클라이언트의 비용을 줄인다. 처리된 서버 애플리케이션 데이터는 인터넷을 통해 대응하는 게임 클라이언트로 전송되어 모니터에 표시된다.
장면 C는 게임 클라이언트와 서버 처리 모듈에 의해 실행될 수 있는 예시적 애플리케이션을 도시하고 있다. 예를 들어, 일 실시예에서, 게인 클라이언트(1102C)는 사용자 C가 사용자 A, 사용자 B, 사용자 D, 및 사용자 E를 포함하는 버디 리스트(1120)를 생성하여 볼 수 있도록 한다. 장면 C에서 보는 바와 같이, 사용자 C는 모니터(106C) 상에서 실시간 이미지나 각각의 사용자의 아바타를 볼 수 있다. 서버 처리는 사용자 A, 사용자 B, 사용자 D, 및 사용자 E의 각각의 게임 클라이언트(1102)와 함께 게임 클라이언트(1102C)의 각각의 애플리케이션들을 실행한다. 서버 처리는 게임 클라이언트 B에 의해 실행되는 애플리케이션들을 알고 있기 때문에, 사용자 A를 위한 버디 리스트는 사용자 B가 어떤 게임을 실행 하고 있는지 보여 줄 수 있다. 또한, 일 실시에에서, 사용자 A 가 사용자 B로부터의 게임 비디오 내에서 실제로 볼 수 있다. 이는 사용자 B를 위해 처리된 서버 애플리케이션 데이터를 게임 클라이언트 B와 더불어 게임 클라이언트 A로 전송하는 것만으로 가능하다.
버디들로부터의 비디오를 볼 수 있는 것과 더불어, 통신 애플리케이션은 버디들 사이에 실시간 통신을 가능하도록 한다. 이전 예에 적용된 바와 같이, 이는 사용자 A가 사용자 B의 실시간 비디오를 보면서 격려와 힌트를 제공할 수 있도록 한다. 일 실시예에서, 쌍방향 실시간 비디오 통신은 클라이언트/서버 애플리케이션을 통해 설정된다. 다른 일 실시예에서, 클라이언트/서버 애플리케이션은 텍스트 채팅을 가능하게 한다. 다른 일 실시예에서, 클라이언트/서버 애플리케이션은 음성을 텍스트로 변환하여 버디의 스크린 상에 표시한다.
장면 D 및 장면 E는 게임 콘솔(1110D와 1110E)과 상호동작 하는 각각의 사용자 D와 사용자 E를 도시하고 있다. 각각의 게임 콘솔(1110D와 1110E)은 서버 처리 모듈에 연결되고 서버 처리 모듈이 게임 콘솔과 게임 클라이언트들을 위해 게임 실행을 조율하는 망을 보여준다.
도 13은 정보 서비스 제공자 구조의 실시예를 도시하고 있다. 정보 서비스 제공자 (ISP)(250)는 지역적으로 분산되어 망(166)을 통해 연결되어 있는 사용자들(262)에게 다양한 정보 서비스를 전송한다. ISP는 주가 갱신 또는 방송 매체, 뉴스, 스포츠, 게이밍 등의 다양한 서비스 등 단 한 가지 형태의 서비스를 제공할 수 있다. 또한, 각 ISP에 의해 제공된 서비스들은 동적일 수, 즉 서비스들이 어떤 시점에 추가되거나 제거될 수 있다. 따라서, 특정 형태의 서비스를 특정 개인에게 제공하는 ISP는 시간에 따라 변경될 수 있다. 예를 들어, 사용자는 거주지에 머무는 동안 사용자와 가까이에 위치한 ISP에 의해 서비스를 제공 받으며, 사용자가 다른 도시로 여행하는 경우 사용자는 다른 ISP에 의해 제공 받을 수 있다. 거주지 ISP는 요구 받은 정보와 데이터를 새 ISP로 전송하여 사용자 정보가 사용자와 더 가까운 위치에 있도록 하여 접근이 더 쉽도록 한다. 다른 일 실시예에서, 사용자 정보를 관리하는 마스터 ISP와 마스터 ISP의 제어 하에 사용자와 직접 상호동작 하는 서버 ISP 사이에 마스터-서버 관계가 설정될 수도 있다. 다른 실시예에서, 데이터는 클라이언트가 전 세계를 이동함에 따라 하나의 ISP에서 다른 ISP로 전달하여 더 양호한 위치에 있는 ISP가 사용자에게 서비스를 제공하는 ISP가 되도록 한다.
ISP(250)는 망 상의 고객들에게 컴퓨터 기반의 서비스를 제공하는 애플리케이션 서비스 제공자 (ASP)를 포함한다. ASP 모델을 이용하여 제공되는 소프트웨어는 때때로 주문형 소프트웨어 또는 서비스로서의 소프트웨어 (software as a service, SaaS)로 불린다. (고객 관계 관리와 같은) 특정 애플리케이션 프로그램에 접근을 제공하는 단수한 형태는 HTTP와 같은 표준 프로토콜을 사용하는 것이다. 애플리케이션 소프트웨어는 판매자 시스템 상에 상주하며 HTML을 사용하는 웹 브라우저를 통해 사용자에 의해, 판매자에 의해 제공되는 특별한 목적의 클라이언트 소프트웨어 또는 신 클라이언트 (thin client)와 같은 기타 원거리 인터페이스에 의해 접근 가능하다. 지리적으로 넓은 지역에 전송되는 서비스들은 종종 클라우드 컴퓨팅을 이용한다. 클라우드 컴퓨팅은 동적으로 증가되며 때로는 가상화된 자원이 인터넷을 통해 서비스로서 제공되는 컴퓨팅 형태이다. 사용자는 그들을 지원하는 클라우드 내의 기술 기반 구조 내에서 전문가가 될 필요가 없다. 클라우드 컴퓨팅은 서비스로서의 기반 구조 (Infrastructure as a Service, IaaS), 서비스로서의 플랫폼 (Platform as a Service, PaaS), 그리고 서비스로서의 소프트웨어 (Software as a service, SaaS) 같은 상이한 서비스로 분할될 수 있다. 클라우드 컴퓨팅 서비스는 소프트웨어와 데이터가 서버 상에 저장되는 반면 웹 브라우저에 의해 접근 가능한 공용 비즈니스 애플리케이션 온라인을 제공한다. 용어 '클라우드'는 인터넷이 컴퓨터 망 도식에 도시되는 방법 및 감춰진 복잡한 구조에 대한 추상화를 기반으로 인터넷에 대한 비유로 사용된다.
또한, ISP(250)는 싱글 및 멀티플레이어 비디오 게임을 실행하기 위해 게임 클라이언트에 의해 사용되는 게임 처리 서버 (GPS)(254)를 포함한다. 인터넷 상에서 실행되는 대부분의 비디오 게임은 게임 서버에 대한 접속을 통해 동작한다. 일반적으로, 게임은 플레이어들로부터 데이터를 수집하여 다른 플레이어들에게 전달하는 전용 서버 애플리케이션을 사용한다. 이는 피어-투-피어 (peer-to-peer) 배열 보다 효율적이고 효과적이지만, 서버 애플리케이션을 운용하기 위한 별도의 서버를 요구한다. 다른 일 실시예에서, GPS는 플레이어들 간의 통신을 설정하고, 그들의 게임 실행 장치들은 중앙의 GPS에 의존하지 않고 정보를 교환한다.
전용 GPS들은 클라이언트와 독립적으로 동작하는 서버들이다. 이러한 서버는 일반적으로 더 많은 대역폭과 전영 처리 전원을 제공하는 데이터 센터에 위치한 전용 하드웨어 상에서 동작한다. 전용 서버는 대부분의 PC 기반의 멀티플레이어 게임을 위한 게임 서버 운영의 바람직한 방법이다. 대규모 멀티플레이어 온라인 게임들은, 컨텐츠의 제어와 갱신이 가능한, 게임 타이틀을 소유한 소프트웨어 회사에 의해 운영되는 전용 서버에서 구동된다.
방송 처리 서버 (BPS)(256)는 시청오디오 또는 비디오 신호를 청중에게 전달한다. 매우 좁은 범위의 청중에 대한 방송은 종종 유선 방송 (narrowcasting)으로 불린다. 방송 전달의 마지막 가지는 신호가 청자 또는 시청자에게 어떻게 도달하는가 이며, 라디오 방송국 또는 TV 방송국과 같이 공기 중으로 발산되어 안테나 및 수신기로 전송되거나 케이블 TV 또는 케이블 라디오 (또는 무선 케이블)를 통해 방송국을 거쳐 또는 직접 망으로부터 전송 될 수 있다. 인터넷은 특히 신호와 대역폭이 공유 가능한 멀티캐스팅을 이용하여 라디오 또는 TV를 수신자에게 제공할 수 있다. 역사적으로, 방송은 국영 방송 또는 지역 방송처럼 지리적 영역에 의해 한계가 정해져 왔다. 그러나, 고속 인터넷의 확산과 더불어, 콘텐트가 세상의 거의 어떤 국가에도 도달할 수 있기 때문에 방송이 지리적으로 정의되지 않는다.
저장 서비스 제공자 (SSP)(258)는 컴퓨터 저장 공간 및 관련된 관리 서비스를 제공한다. 서비스로서 저장 공간을 제공함으로써, 사용자들은 필요 시 더 많은 저장 공간을 주문할 수 있다. 또 다른 중요한 장점은 SSP가 백업 서비스를 포함하며 사용자들이 컴퓨터 하드 드라이브 오류 시 데이터 전체를 잃는 것을 막을 수 있다는 것이다. 또한, 복수의 SSP들은 사용자가 사용자의 위치 또는 데이터 접근을 위해 사용되는 장치와 독립적으로 효과적인 방법으로 데이터에 접근할 수 있도록 사용자 데이터의 전체 또는 부분 복사본을 가질 수 있다. 예를 들어, 사용자는 이동 중 이동 단말 내의 파일은 물론 가정용 컴퓨터 내의 개인 파일에 접근할 수 있다.
통신 제공자(260)는 사용자에게 연결을 제공한다. 통신 제공자의 일종으로 인터넷 접속을 제공하는 인터넷 서비스 제공자 (ISP)가 있다. ISP는 다이얼-업, DSL, 케이블 모뎀, 무선 또는 전용 고속 연결과 같은 인터넷 프로토콜 데이터그램을 전송하기 위한 데이터 전송 기술을 이용하는 고객들을 연결시킨다. 통신 제공자는 이메일, 즉석 교신 (instant messaging), 및 단문 전송 서비스 (SMS texting) 과 같은 메시지 서비스를 제공할 수도 있다. 또 다른 형태의 통신 제공자는 인터넷에 대한 직접 백본을 제공함으로써 대역폭 또는 망 접속을 판매하는 망 서비스 제공자(NSP)이다. 망 서비스 제공자는 원거리 통신 회사, 데이터 케리어, 무선 통신 제공자, 인터넷 서비스 제공자, 고속 인터넷 접속을 제공하는 케이블 텔레비전 회사 등을 포함할 수 있다.
데이터 교환기(268)는 ISP(253) 내의 여러 개의 모듈을 상호 연결하며 망을 통해 이들 모듈을 사용자(262)와 연결한다. 데이터 교환기(268)는 ISP(250)의 모든 모듈이 인접 해 있는 좁은 지역을 커버할 수 있으면 상이한 모듈들이 지리적으로 분산되어 있을 경우 넓은 지역을 커버 할 수 있다. 예를 들어, 데이터 교환기(268)는 데이터 센터 캐비닛 내의 고속 기가비트 이더넷 (또는 더 빠른) 을 포함 할 수 있으며 또는 대륙간 가상 지역 망 (VLAN)을 포함 할 수 있다.
사용자들(262)은 적어도 CPU, 표시 및 입출력 장치를 포함하는 클라이언트 장치(264)를 이용해 원거리 서비스에 접속한다. 클라이언트 장치는 PC, 이동 전화, 노트북, PDA, 등이 될 수 있다. 일 실시예에서, ISP(250)는 클라이언트가 사용하는 장치의 종류를 인식하고 채용된 통신 방식을 조정한다. 다른 경우들에 있어서, 클라이언트 장치는 html과 같은 표준 통신 방식을 이용하여 ISP(250)에 접속한다.
본 발명의 실시예들은 휴대 장치, 마이크로프로세서 시스템, 마이크로프로세서 기반 또는 프로그램 가능한 소비자 전자장치, 미니컴퓨터, 메인프레임 컴퓨터, 등을 포함하는 다양한 컴퓨터 시스템 구성으로 실시될 수 있다. 본 발명은 작업이 망을 통해 연결된 원거리 처리 장치들에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 도 있다.
상기한 실시예들을 염두에 둘 때, 본 발명은 컴퓨터 시스템에 저장된 데이터와 관련된 다양한 컴퓨터-구현 동작들을 채용할 수 있다는 것을 이해해야만 한다. 이러한 동작들은 물리적 양의 물리적 조작을 요하는 것들이다. 여기서 설명하는 본 발명의 일부를 구성하는 동작들 중 어떤 것들은 유용한 기계 동작들이다. 본 발명은 또한 이들 동작을 수행하기 위한 소자 또는 장치에 관한 것이다 장치는, 특별한 목적의 컴퓨터처럼, 요구되는 목적을 위해 특별히 구성될 수도 있다. 특별한 목적의 컴퓨터로 정의될 때, 컴퓨터는 특정한 목적을 위해 동작하면서 특별한 목적의 일부가 아닌 여타의 처리, 프로그램 실행, 루틴들을 수행할 수도 있다. 또한, 동작들은 컴퓨터 메모리, 캐쉬에 저장된 또는 망으로부터 획득한 하나 이상의 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 설정된 일반 목적의 컴퓨터에 의해 처리될 수도 있다. 망을 통해 데이터를 획득한 경우, 데이터는, 예를 들어 컴퓨팅 자원 클라우드와 같은, 망 상의 다른 컴퓨터들에 의해 처리될 수도 있다.
본 발명의 실시예들은 어떤 상태에서 또 다른 상태로 데이터를 변환하는 기계로서 정의될 수도 있다. 변환된 데이터는 저장소에 저장되어 프로세서에 의해 조작될 수 있다. 프로세서는 데이터를 어떤 형태에서 또 다른 형태로 변형한다. 또한, 상기 방법들은 망 상에서 연결될 수 있는 하나 이상의 기계 또는 프로세서들에 의해 처리될 수 있다. 각각의 기계는 데이터를 한 가지 상태 또는 형태에서 또 다른 상태로 변형할 수 있으며 데이터를 처리하고, 데이터를 저장소에 저장하고, 데이터를 망을 통해 전송하고, 그 결과를 표시하고, 또는 그 결과를 또 다른 기계로 전송할 수도 있다.
상기 방법의 동작들이 특정 순서로 설명되었지만, 다른 동작들이 이들 동작들 사이에 수행될 수 도 있고, 이들 동작들이 조정되어 조금 다른 시간에 발생하거나, 중복 동작들의 처리가 원하는 방식으로 수행되는 한, 처리와 관련된 다양한 간격으로 처리 동작들의 발생이 허용되는 시스템에서 분산될 수도 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되지 않으며, 후술되는 특허 청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (27)

  1. 브라우저 기반의 게임 (BBG) 실행 방법에 있어서,
    게임을 위해 정의되어 게임에서의 동작을 유도할 수 있고, 전용 장치를 통해 동작과 연결되는 전용 입력의 정의를 수신하고;
    게임 접속 시 각각의 전용 입력 없이 대체 장치를 검출하고;
    상기 전용 장치로부터의 전용 입력을 상기 대체 장치로부터의 복수의 대체 입력들에 매핑하고;
    게임 내에서 대응하는 동작들을 유도하기 위해 상기 매핑에 따라 상기 대체 장치에 의해 생성된 입력들을 대응하는 전용 입력들로 해석하는 것을 포함하며,
    상기 대체 입력들을 위한 매핑은 게임 내의 대응 동작들을 유도하기 위해 게임 실행 중 대체 입력을 해석하기 위해 유지되는 것을 특징으로 하는 상기 방법.
  2. 제 1항에 있어서, 상기 방법은:
    플레이어에 의해 사용되는 다른 대체 장치를 검출하고;
    상기 전용 입력을 상기 다른 대체 장치로부터의 대체 입력에 다시 매핑 하는 것을 포함하는 상기 방법.
  3. 제 1항에 있어서, 상기 방법은:
    게임 실행을 위한 웹 페이지 내의 게임 영역을 식별하고;
    상기 웹 페이지 내의 다른 구성 요소들의 크기를 줄여 상기 게임 영역의 크기를 증가시킴으로써 상기 게임 영역을 확장하는 것을 포함하는 상기 방법.
  4. 제 1항에 있어서, 상기 전용 장치는 버튼들, 키들, 하나의 터치패드, 하나의 조이스틱, 하나의 롤러 볼, 또는 하나의 광학 모션 센서 중 하나 이상을 포함하는 기본 입력 장치인 것을 특징으로 하는 상기 방법.
  5. 제 1항에 있어서, 상기 전용 장치는 키보드 또는 마우스로 구성되는 그룹으로부터 선택되는 것을 특징으로 하는 상기 방법.
  6. 제 1항에 있어서, 상기 대체 장치는 게임 제어기, 게임 제어기 동작 검출 카메라, 플레이어 동작 검출 카메라, 음성 명령 검출 마이크, 리모트 컨트롤, 전화기 키패드, 또는 터치 감응식 스크린으로 구성되는 그룹으로부터 선택되는 것을 특징으로 하는 방법.
  7. 제 1항에 있어서, 상기 전용 입력을 매핑 하는 것은:
    상기 대체 장치의 입력 배치를 수신하고;
    전용 입력의 정의 내의 각각의 전용 입력들에 대해, 각 전용 입력을 대체 장치의 입력 배치로부터 다른 대체 입력에 매핑 하는 것을 특징으로 하는 상기 방법.
  8. 제 1항에 있어서,
    상기 BBG를 위해 내려 받은 웹 페이지 내의 게임을 저장하기 위한 옵션을 추가하고;
    상기 게임을 저장하기 위한 옵션이 선택되면 상기 게임의 상태를 저장하고;
    상기 게임을 계속하기 위해 상기 상태를 이용하여 게임을 복원하는 것을 포함하는 상기 방법.
  9. 제 8항에 있어서,
    상기 게임을 구동하는 컴퓨팅 장치에서 상기 웹 페이지에 상업적 내용을 추가하는 것을 더 포함하는 상기 방법.
  10. 제 1항에 있어서,
    게임이 실행되는 콘솔에서 실행된 게임의 이력과 결과 점수를 저장하는 것을 더 포함하는 상기 방법.
  11. 제 10항에 있어서,
    상기 이력을 중앙 게임 서버로 전송하고;
    상기 이력을 기반으로 게임 통계를 수집하고;
    상기 게임 통계를 플레이어들의 공동체에 유용하게 처리하는 것을 포함하는 상기 방법.
  12. 제 10항에 있어서,
    상기 콘솔에서 상기 실행된 게임의 이력과 결과 점수를 포함하는 지역 개별 웹 페이지를 생성하고;
    지역 개별 웹 페이지를 표시하는 것을 포함하는 상기 방법.
  13. 제 12항에 있어서, 상기 지역 개별 웹 페이지는:
    저장된 게임, 선호 게임, 가장 대중적인 게임, 및 게임 추천을 포함하는 것을 특징으로 하는 상기 방법.
  14. 제 1항에 있어서,
    상기 인터넷 상에서 가용한 게임들에 대한 정보를 수집하고;
    상기 인터넷 상에서 게임을 찾기 위한 게임 탐색 웹 페이지를 표시하는 것을 더 포함하며, 여기서 상기 게임 탐색 웹 페이지는 게임 사이트, 게임 카테고리, 신규 게임, 가장 대중적인 게임, 추천 게임, 또는 친구들에 의해 실행된 게임으로 구성되는 그룹으로부터 선택된 탐색 옵션을 포함하는 것을 특징으로 하는 상기 방법.
  15. 브라우저 기반의 게임 (BBG)을 실행하는 방법에 있어서,
    상기 게임을 위한 입력 파라미터들을 수신하고;
    상기 입력 파라미터들에 대해 전용 입력 제어 장치를 위해 정의되는 전용 입력 키들을 결정하고;
    상기 전용 입력 키들을 비전용 제어 장치에 매핑하고;
    상기 비전용 제어 장치로부터의 입력을 검출하고;
    상기 검출된 입력을 전용 입력 키로 해석하는 것을 포함하며,
    상기 전용 입력 키들을 위한 매핑은 검출된 입력을 해석하여 비전용 제어 장치를 이용하여 전용 입력 제어 장치를 시뮬레이트 하기 위해 게임 실행 동안 유지되는 것을 특징으로 하는 상기 방법.
  16. 제 15항에 있어서,
    플레이어에 의해 사용되는 다른 비전용 제어 장치를 검출하고;
    상기 전용 입력 키들을 상기 다른 비전용 제어 장치에 다시 매핑하는 것을 더 포함하는 상기 방법.
  17. 제 15항에 있어서,
    상기 입력 파라미터들, 전용 입력 키들, 상기 비전용 제어 장치로부터의 입력들 사이의 매핑을 식별하는 입력 매핑 테이블을 정의하는 것을 더 포함하는 상기 방법.
  18. 브라우저 기반의 게임 (BBG)을 실행하기 위한 시스템에 있어서,
    상기 게임을 위해 게임 내에서 동작을 유도할 수 있고 전용 장치를 통해 동작들과 연결되는 전용 입력의 정의를 수신하는 게임 정보 수집 모듈; 및
    상기 전용 장치로부터의 전용 입력을 전용 입력을 가지지 않는 대체 장치로부터의 복수의 대체 입력에 매핑 하는 입력 변환 모듈을 포함하며,
    상기 입력 변환 모듈은 매핑 된 전용 입력에 따라 대체 장치에 의해 생성된 입력을 대응하는 전용 입력으로 변환하는 것을 특징으로 하는 상기 시스템.
  19. 제 18항에 있어서,
    웹 페이지 내에 포함되는 게임을 내려 받기 위해 설정된 인터넷 브라우저를 더 포함하는 상기 시스템.
  20. 제 19항에 있어서,
    상기 게임을 실행하기 위한 상기 웹 페이지 내의 게임 영역을 식별하도록, 그리고
    상기 웹 페이지 내의 다른 요소들의 크기를 줄이는 한편 상기 게임 영역의 크기를 늘려서 게임 영역을 화장 표시하도록 설정된 게임 프로세서를 더 포함하는 상기 시스템.
  21. 제 18항에 있어서, 상기 입력 변환 모듈은:
    대응 장치를 위한 입력 배치를 포함하는 장치 테이블;
    상기 전용 장치로 실행하기 위해 BBG 제공자에 의해 주어진 정의를 포함하는 게임 입력 테이블; 및
    대응하는 게임을 실행하기 위해 전용 장치와 대체 장치 간의 매핑을 설명하는 매핑 테이블을 포함하는 것을 특징으로 하는 상기 시스템.
  22. 제 21항에 있어서, 상기 입력 변환 모듈은:
    전용 입력을 대체 입력과 매치하기 위한 상기 매핑 테이블을 스캔하고;
    상기 전용 입력을 매핑 테이블을 이용하여 상기 대체 입력과 연결하고;
    매핑 되지 않은 전용 입력을 서버로부터 획득한 정보와 매핑 시키고;
    상기 대체 입력을 위한 매핑의 도식적으로 표시하도록 설정된 조정기(arbiter)를 더 포함하는 것을 특징으로 하는 상기 시스템
  23. 제 18항에 있어서,
    다수의 웹 사이트로부터 유용한 웹 게임에 대한 정보를 수집하고;
    실행된 게임의 결과를 수집하고;
    수집된 결과를 기반으로 통계를 생성하도록 설정된 서버를 더 포함하는 것을 특징으로 하는 상기 시스템.
  24. 제 23항에 있어서, 상기 서버는 플레이어들로부터 게임 등급을 수집하도록 설정되는 것을 특징으로 하는 상기 시스템.
  25. 브라우저 기반의 게임 (BBG) 실행을 위해, 하나 이상의 프로세서에 의해 실행 시, 컴퓨터 독출 가능 매체에 간직되는 컴퓨터 프로그램에 있어서,
    게임을 위해 정의되어 게임 내의 동작을 유도할 수 있고 전용 장치에 의해 동작에 연결되는 전용 입력들의 정의를 수신하는 프로그램 인스트럭션들;
    상기 게임 접속 시 전용 입력 없이 대체 입력을 검출하기 위한 프로그램 인스트럭션들;
    전용 장치로부터의 전용 입력을 대체 장치로부터의 복수의 대체 입력에 매핑 하기 위한 프로그램 인스트럭션들; 그리고
    상기 게임 내의 대응 동작을 유도하기 위한 매핑에 따라 상기 대체 장치에 의해 생성된 입력을 대응하는 전용 입력으로 변환하기 위한 프로그램 인스트럭션들을 포함하며,
    상기 대체 입력들을 위한 매핑이 게임 내의 대응 동작을 유도하도록 대체 입력을 변환하기 위해 게임 실행 동안 유지되는 것을 특징으로 하는 상기 컴퓨터 프로그램.
  26. 제 25항에 있어서,
    상기 전용 입력으로부터 상기 대체 장치로부터의 복수의 대체 입력에 대한 매핑을 개인화하기 위한 프로그램 인스트럭션들을 더 포함하는 상기 컴퓨터 프로그램.
  27. 제 25항에 있어서,
    게임 카테고리에 대응하는 각각의 입력 매핑 템플릿들을 정의하기 위한 프로그램 인스트력션들을 더 포함하는 상기 컴퓨터 프로그램.
KR20100100259A 2009-10-14 2010-10-14 대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행 KR20110040734A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/579,343 2009-10-14
US12/579,343 US8313377B2 (en) 2009-10-14 2009-10-14 Playing browser based games with alternative controls and interfaces

Publications (1)

Publication Number Publication Date
KR20110040734A true KR20110040734A (ko) 2011-04-20

Family

ID=43530198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20100100259A KR20110040734A (ko) 2009-10-14 2010-10-14 대체 제어 및 인터페이스를 이용한 브라우저 기반의 게임 실행

Country Status (5)

Country Link
US (3) US8313377B2 (ko)
EP (1) EP2311539B1 (ko)
JP (1) JP5281063B2 (ko)
KR (1) KR20110040734A (ko)
CN (1) CN102043897B (ko)

Families Citing this family (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6610917B2 (en) 1998-05-15 2003-08-26 Lester F. Ludwig Activity indication, external source, and processing loop provisions for driven vibrating-element environments
US9019237B2 (en) 2008-04-06 2015-04-28 Lester F. Ludwig Multitouch parameter and gesture user interface employing an LED-array tactile sensor that can also operate as a display
US8602857B2 (en) 2008-06-03 2013-12-10 Tweedletech, Llc Intelligent board game system with visual marker based game object tracking and identification
US8974295B2 (en) 2008-06-03 2015-03-10 Tweedletech, Llc Intelligent game system including intelligent foldable three-dimensional terrain
US9649551B2 (en) 2008-06-03 2017-05-16 Tweedletech, Llc Furniture and building structures comprising sensors for determining the position of one or more objects
WO2009149112A1 (en) 2008-06-03 2009-12-10 Tweedletech, Llc An intelligent game system for putting intelligence into board and tabletop games including miniatures
US10155156B2 (en) 2008-06-03 2018-12-18 Tweedletech, Llc Multi-dimensional game comprising interactive physical and virtual components
WO2012033863A1 (en) * 2010-09-09 2012-03-15 Tweedletech, Llc A board game with dynamic characteristic tracking
US8169414B2 (en) 2008-07-12 2012-05-01 Lim Seung E Control of electronic games via finger angle using a high dimensional touchpad (HDTP) touch user interface
US8345014B2 (en) 2008-07-12 2013-01-01 Lester F. Ludwig Control of the operating system on a computing device via finger angle using a high dimensional touchpad (HDTP) touch user interface
US8604364B2 (en) 2008-08-15 2013-12-10 Lester F. Ludwig Sensors, algorithms and applications for a high dimensional touchpad
US8170346B2 (en) 2009-03-14 2012-05-01 Ludwig Lester F High-performance closed-form single-scan calculation of oblong-shape rotation angles from binary images of arbitrary size using running sums
US9737796B2 (en) * 2009-07-08 2017-08-22 Steelseries Aps Apparatus and method for managing operations of accessories in multi-dimensions
US8719714B2 (en) 2009-07-08 2014-05-06 Steelseries Aps Apparatus and method for managing operations of accessories
US20110066933A1 (en) 2009-09-02 2011-03-17 Ludwig Lester F Value-driven visualization primitives for spreadsheets, tabular data, and advanced spreadsheet visualization
US8556721B2 (en) 2009-11-16 2013-10-15 Steelseries Aps Apparatus and method for managing peripheral device communications
US20110202934A1 (en) 2010-02-12 2011-08-18 Ludwig Lester F Window manger input focus control for high dimensional touchpad (htpd), advanced mice, and other multidimensional user interfaces
US10146427B2 (en) 2010-03-01 2018-12-04 Nri R&D Patent Licensing, Llc Curve-fitting approach to high definition touch pad (HDTP) parameter extraction
WO2011109778A1 (en) * 2010-03-05 2011-09-09 Brass Monkey, Inc. System and method for connecting network sockets between applications
US20110239114A1 (en) * 2010-03-24 2011-09-29 David Robbins Falkenburg Apparatus and Method for Unified Experience Across Different Devices
US9021390B1 (en) * 2010-05-05 2015-04-28 Zynga Inc. Methods and apparatus for optimized pausing of an embedded application to render pop-up window
US20130079145A1 (en) 2011-09-26 2013-03-28 Serena Lam Mobile device interface for online games
GB2495435A (en) * 2010-06-29 2013-04-10 Zte Usa Inc Method and system for cloud-based media adaption and transcoding service
US9626023B2 (en) 2010-07-09 2017-04-18 Lester F. Ludwig LED/OLED array approach to integrated display, lensless-camera, and touch-screen user interface devices and associated processors
US9632344B2 (en) 2010-07-09 2017-04-25 Lester F. Ludwig Use of LED or OLED array to implement integrated combinations of touch screen tactile, touch gesture sensor, color image display, hand-image gesture sensor, document scanner, secure optical data exchange, and fingerprint processing capabilities
US8754862B2 (en) 2010-07-11 2014-06-17 Lester F. Ludwig Sequential classification recognition of gesture primitives and window-based parameter smoothing for high dimensional touchpad (HDTP) user interfaces
US9950256B2 (en) * 2010-08-05 2018-04-24 Nri R&D Patent Licensing, Llc High-dimensional touchpad game controller with multiple usage and networking modalities
JP5039868B2 (ja) * 2010-08-16 2012-10-03 楽天株式会社 ウェブ管理装置、ウェブ管理方法、ウェブ管理プログラム、そのプログラムを記録するコンピュータ読み取り可能な記録媒体、及びウェブシステム
JP5542020B2 (ja) * 2010-09-22 2014-07-09 株式会社ソニー・コンピュータエンタテインメント 情報処理システム、情報処理方法、プログラム及び情報記憶媒体
US20120204577A1 (en) 2011-02-16 2012-08-16 Ludwig Lester F Flexible modular hierarchical adaptively controlled electronic-system cooling and energy harvesting for IC chip packaging, printed circuit boards, subsystems, cages, racks, IT rooms, and data centers using quantum and classical thermoelectric materials
US9442652B2 (en) 2011-03-07 2016-09-13 Lester F. Ludwig General user interface gesture lexicon and grammar frameworks for multi-touch, high dimensional touch pad (HDTP), free-space camera, and other user interfaces
JP5538312B2 (ja) * 2011-07-15 2014-07-02 日本電信電話株式会社 Webブラウザ連動ゲーム生成装置、Webブラウザ連動ゲーム生成方法、及びそのプログラム
US9052772B2 (en) 2011-08-10 2015-06-09 Lester F. Ludwig Heuristics for 3D and 6D touch gesture touch parameter calculations for high-dimensional touch parameter (HDTP) user interfaces
JP5474013B2 (ja) * 2011-09-06 2014-04-16 株式会社ソニー・コンピュータエンタテインメント アプリケーション提供サーバ、アプリケーション提供方法
US20130079131A1 (en) * 2011-09-26 2013-03-28 Serena Lam Mobile device interface for online games
US9098967B2 (en) * 2011-09-29 2015-08-04 Wms Gaming, Inc. Controlling wagering game peripherals
JP5089801B1 (ja) * 2011-10-31 2012-12-05 株式会社ソニー・コンピュータエンタテインメント ユーザ編成装置、ユーザ編成方法、およびクラウドコンピューティングシステム
JP5485968B2 (ja) * 2011-10-31 2014-05-07 株式会社ソニー・コンピュータエンタテインメント 実行画面公開装置、実行画面公開方法、クライアント装置、およびクラウドコンピューティングシステム
US20130143657A1 (en) * 2011-11-14 2013-06-06 Amazon Technologies, Inc. Input Mapping Regions
US10486064B2 (en) 2011-11-23 2019-11-26 Sony Interactive Entertainment America Llc Sharing buffered gameplay in response to an input request
US10960300B2 (en) 2011-11-23 2021-03-30 Sony Interactive Entertainment LLC Sharing user-initiated recorded gameplay with buffered gameplay
US8870654B2 (en) * 2011-11-23 2014-10-28 Sony Computer Entertainment America Llc Gaming controller
US9116555B2 (en) 2011-11-23 2015-08-25 Sony Computer Entertainment America Llc Gaming controller
US9823781B2 (en) 2011-12-06 2017-11-21 Nri R&D Patent Licensing, Llc Heterogeneous tactile sensing via multiple sensor types
US10430066B2 (en) 2011-12-06 2019-10-01 Nri R&D Patent Licensing, Llc Gesteme (gesture primitive) recognition for advanced touch user interfaces
US9967388B2 (en) 2012-02-21 2018-05-08 Qualcomm Incorporated Mirrored interface navigation of multiple user interfaces
CN103297476B (zh) * 2012-03-02 2014-08-06 腾讯科技(深圳)有限公司 一种网页游戏加载方法及装置
JP2013250895A (ja) * 2012-06-01 2013-12-12 Nintendo Co Ltd 情報処理プログラム、情報処理装置、情報処理システムおよび表示方法
US8961302B2 (en) 2012-07-20 2015-02-24 Microsoft Technology Licensing, Llc Game browsing
US20140045596A1 (en) * 2012-08-07 2014-02-13 Lawrence Cameron Vaughan Methods and systems for determining the location of online gaming clients
US9729687B2 (en) * 2012-08-10 2017-08-08 Silverplus, Inc. Wearable communication device
US9381432B2 (en) 2012-08-24 2016-07-05 Microsoft Technology Licensing, Llc Game migration
EP2732858A1 (en) * 2012-10-24 2014-05-21 Sony Corporation User interface for accessing games
JP5760046B2 (ja) * 2012-10-26 2015-08-05 グリー株式会社 先読みキャッシュ方法、先読みキャッシュシステム及びプログラム
WO2014092705A1 (en) 2012-12-12 2014-06-19 Empire Technology Development Llc User assembly of lightweight user interface for games
US9264749B2 (en) 2012-12-13 2016-02-16 Microsoft Technology Licensing, Llc Server GPU assistance for mobile GPU applications
US9526980B2 (en) 2012-12-21 2016-12-27 Microsoft Technology Licensing, Llc Client side processing of game controller input
US9717982B2 (en) 2012-12-21 2017-08-01 Microsoft Technology Licensing, Llc Client rendering of latency sensitive game features
US9529447B2 (en) 2013-01-18 2016-12-27 Microsoft Technology Licensing, Llc Removable input module
US8858335B2 (en) * 2013-01-18 2014-10-14 Microsoft Corporation Reconfigurable clip-on modules for mobile computing devices
JP6095383B2 (ja) * 2013-01-29 2017-03-15 株式会社スクウェア・エニックス ビデオゲーム処理装置、及びビデオゲーム処理プログラム
US9564102B2 (en) 2013-03-14 2017-02-07 Microsoft Technology Licensing, Llc Client side processing of player movement in a remote gaming environment
US9694277B2 (en) 2013-03-14 2017-07-04 Microsoft Technology Licensing, Llc Client side processing of character interactions in a remote gaming environment
US9687730B2 (en) 2013-03-15 2017-06-27 Steelseries Aps Gaming device with independent gesture-sensitive areas
US9604147B2 (en) 2013-03-15 2017-03-28 Steelseries Aps Method and apparatus for managing use of an accessory
US9423874B2 (en) 2013-03-15 2016-08-23 Steelseries Aps Gaming accessory with sensory feedback device
US9550119B2 (en) * 2013-04-02 2017-01-24 Tencent Technology (Shenzhen) Company Limited Method, apparatus, and system for webgame interaction
US10249018B2 (en) * 2013-04-25 2019-04-02 Nvidia Corporation Graphics processor and method of scaling user interface elements for smaller displays
US9646452B2 (en) * 2013-06-07 2017-05-09 Bally Gaming, Inc. Game history for wagering games using handheld devices
US9923988B2 (en) * 2013-07-10 2018-03-20 Tencent Technology (Shenzhen) Company Limited Systems and methods for browser-based games
CN105453063B (zh) * 2013-08-20 2018-06-15 Lg电子株式会社 信号处理设备和控制方法
US9813254B2 (en) * 2013-09-04 2017-11-07 Nvidia Corporation System and method for providing real-time assistance regarding a cloud-based application
US11130055B2 (en) 2013-09-04 2021-09-28 Nvidia Corporation System and method for granting remote access to a video game executed on a video game console or network client
US10258886B2 (en) 2013-09-04 2019-04-16 Nvidia Corporation Dynamic interface control device mapping when game sharing
JP6525967B2 (ja) 2013-12-06 2019-06-05 株式会社スクウェア・エニックス・ホールディングス プログラム、記録媒体、情報処理装置及び制御方法
US9592443B2 (en) 2014-03-11 2017-03-14 Microsoft Technology Licensing, Llc Data store for a modular assembly system
US10188939B2 (en) 2014-03-11 2019-01-29 Microsoft Technology Licensing, Llc Modular construction for interacting with software
US9555326B2 (en) 2014-03-11 2017-01-31 Microsoft Technology Licensing, Llc Gaming system for modular toys
US9703896B2 (en) 2014-03-11 2017-07-11 Microsoft Technology Licensing, Llc Generation of custom modular objects
US10150043B2 (en) 2014-03-11 2018-12-11 Microsoft Technology Licensing, Llc Interactive smart beads
JP6526945B2 (ja) * 2014-04-25 2019-06-05 株式会社スクウェア・エニックス 情報処理装置、制御方法及びプログラム
AU2016201018B2 (en) * 2015-02-18 2020-08-20 Ainsworth Game Technology Limited Frameworks and methodologies for delivering electronic gaming machine user interfaces across multiple client platforms
US9987561B2 (en) 2015-04-02 2018-06-05 Nvidia Corporation System and method for multi-client control of a common avatar
WO2016170512A1 (en) * 2015-04-24 2016-10-27 Tager Sean Universal game controller
WO2016176436A1 (en) * 2015-04-29 2016-11-03 Metric Gaming Llc Last man standing sporting event wagering platform
CN104978488B (zh) * 2015-06-26 2018-01-12 广州华多网络科技有限公司 游戏角色的行为解析方法及装置
US10484459B2 (en) 2015-09-03 2019-11-19 Nvidia Corporation Dynamically providing host input control for streaming applications
US10771508B2 (en) 2016-01-19 2020-09-08 Nadejda Sarmova Systems and methods for establishing a virtual shared experience for media playback
US10046236B2 (en) * 2016-06-13 2018-08-14 Sony Interactive Entertainment America, LLC Browser-based cloud gaming
CN106355551A (zh) * 2016-08-26 2017-01-25 北京金山安全软件有限公司 拼图处理方法、装置、电子设备及服务器
US11260294B2 (en) * 2017-05-30 2022-03-01 Microsoft Technology Licensing, Llc Virtual controller for game injection
US20190079668A1 (en) * 2017-06-29 2019-03-14 Ashwin P Rao User interfaces for keyboards
CN107569851B (zh) * 2017-09-08 2020-12-04 北京奇虎科技有限公司 游戏挂机方法、装置及系统
CN107890665A (zh) * 2017-11-20 2018-04-10 上海祐胜电子科技有限公司 一种新型的游戏控制装置
US10282938B1 (en) 2017-12-29 2019-05-07 Adp Gauselmann Gmbh Gaming system and method with a resource efficient slide out game information display
CN108153201A (zh) * 2017-12-29 2018-06-12 安徽创视纪科技有限公司 一种触发式激光感应系统
US10765939B2 (en) * 2018-01-12 2020-09-08 Gree, Inc. Information processing system, terminal device, computer-readable non-transitory storage medium, and information processing method
US11032345B2 (en) 2018-05-10 2021-06-08 Microsoft Technology Licensing, Llc Client side data stream processing
EP3811188A4 (en) * 2018-06-21 2022-03-16 BlueStack Systems, Inc. METHODS, SYSTEMS AND COMPUTER PROGRAM PRODUCT FOR MAPPING INPUTS TO A SOFTWARE APPLICATION
US10924525B2 (en) 2018-10-01 2021-02-16 Microsoft Technology Licensing, Llc Inducing higher input latency in multiplayer programs
US11127247B2 (en) 2018-10-23 2021-09-21 Igt System and method for utilizing mobile device to provide inputs in a gaming environment
WO2020116345A1 (ja) * 2018-12-07 2020-06-11 株式会社ソニー・インタラクティブエンタテインメント エンタテインメント装置、発光制御装置、操作デバイス、発光制御方法及びプログラム
US11395965B1 (en) * 2019-10-16 2022-07-26 Dark Burn Creative LLC System and method for capturing, replaying, and modifying data inputs and methods of use thereof
US11711571B2 (en) * 2020-03-06 2023-07-25 Advanced Micro Devices, Inc. Client-side offload of graphics effects processing
CN114681909A (zh) * 2020-12-26 2022-07-01 华为技术有限公司 控制方法和电子设备
US20230024653A1 (en) * 2021-07-20 2023-01-26 Sony Interactive Entertainment LLC Exercise or sports equipment as game controller
US11707680B2 (en) 2021-07-20 2023-07-25 Sony Interactive Entertainment LLC Health and wellness gamification
US11806610B2 (en) * 2021-11-29 2023-11-07 Pixart Imaging Inc. Computer system and gaming mouse
WO2023145087A1 (ja) * 2022-01-31 2023-08-03 株式会社ソニー・インタラクティブエンタテインメント 操作デバイス、情報処理装置、情報処理方法、及びプログラム
GB2624916A (en) * 2022-11-30 2024-06-05 Sony Interactive Entertainment Inc Dynamic user input system and method

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943053A (en) * 1997-04-01 1999-08-24 Sun Microsystems, Inc. Method and apparatus for expanding and contracting a window panel
US6965368B1 (en) * 1999-04-06 2005-11-15 Microsoft Corporation Game control device having genre data
US6832273B2 (en) * 2000-12-21 2004-12-14 Microsoft Corporation System and method to specify extended configuration descriptor information in USB devices
WO2003080204A1 (en) * 2002-03-04 2003-10-02 Srdjan Marjanovic The stand for the video games controller's commands list and the list itself
US6955167B2 (en) 2002-03-18 2005-10-18 Electrolux Professional Outdoor Products, Inc. Pavement working apparatus and methods of making
US20040216036A1 (en) * 2002-09-13 2004-10-28 Yahoo! Inc. Browser user interface
JP3588611B2 (ja) * 2003-01-29 2004-11-17 コナミ株式会社 選択装置、選択方法、ならびに、プログラム
US20060080702A1 (en) * 2004-05-20 2006-04-13 Turner Broadcasting System, Inc. Systems and methods for delivering content over a network
JP2006068315A (ja) * 2004-09-02 2006-03-16 Sega Corp ポーズ検出プログラム、ビデオゲーム装置、ポーズ検出方法、および、プログラムを記録したコンピュータ読み取り可能な記録媒体
US20060148571A1 (en) * 2005-01-04 2006-07-06 Electronic Arts Inc. Computer game with game saving including history data to allow for play reacquaintance upon restart of game
KR100724939B1 (ko) 2005-06-20 2007-06-04 삼성전자주식회사 카메라부를 이용한 유저 인터페이스 구현 방법 및 이를위한 이동통신단말기
US20070184899A1 (en) * 2006-02-03 2007-08-09 Nokia Corporation Gaming device, method, and computer program product for modifying input to a native application to present modified output
KR20080013273A (ko) * 2006-08-08 2008-02-13 (주) 조이트론 복수의 입력장치의 신호를 출력하는 조이스틱
KR100839904B1 (ko) * 2007-04-13 2008-06-19 (주) 아이엔터 포틀릿을 이용한 웹 서비스 제공 방법
KR100851536B1 (ko) * 2007-04-26 2008-08-11 (주)경문엔터테인먼트 게임조작 설정시스템 및 그 설정방법
US20080291160A1 (en) * 2007-05-09 2008-11-27 Nintendo Co., Ltd. System and method for recognizing multi-axis gestures based on handheld controller accelerometer outputs
JP2009020583A (ja) * 2007-07-10 2009-01-29 Vector Inc 情報処理システム及び情報処理方法
CN101382847A (zh) * 2007-09-04 2009-03-11 财团法人工业技术研究院 一种输入控制装置以及具有该输入控制装置的互动系统
GB0717330D0 (en) * 2007-09-06 2007-10-17 Sony Comp Entertainment Europe Entertainment apparatus and method
US8135874B2 (en) * 2008-04-02 2012-03-13 June-On Technology Co., Ltd. Automatic mapping and updating computer switching device
US20110107239A1 (en) * 2008-05-01 2011-05-05 Uri Adoni Device, system and method of interactive game
US20090298582A1 (en) * 2008-05-30 2009-12-03 Matthew Robert Dempsky Method and system for distributing browser-based computer games and files

Also Published As

Publication number Publication date
JP5281063B2 (ja) 2013-09-04
CN102043897A (zh) 2011-05-04
JP2011086293A (ja) 2011-04-28
US20130274018A1 (en) 2013-10-17
US9067138B2 (en) 2015-06-30
EP2311539A2 (en) 2011-04-20
EP2311539A3 (en) 2014-03-05
US20130059660A1 (en) 2013-03-07
US8313377B2 (en) 2012-11-20
CN102043897B (zh) 2019-01-22
EP2311539B1 (en) 2022-12-07
US8465367B2 (en) 2013-06-18
US20110086706A1 (en) 2011-04-14

Similar Documents

Publication Publication Date Title
JP5281063B2 (ja) ブラウザベースのゲームを代替コントローラおよびインタフェースでプレイする方法
US10610778B2 (en) Gaming controller
JP6448603B2 (ja) マルチ画像インタラクティブゲーミングデバイス
EP2438758B1 (en) Addition of supplemental multimedia content and interactive capability at the client
CN107320949B (zh) 用于增强现实的书对象
US20170189809A1 (en) Web explorer for gaming platform interface
CN110665220B (zh) 游戏控制器
US11771981B2 (en) Sharing buffered gameplay in response to an input request
KR102271323B1 (ko) 방송 효과 제공 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment