KR101793189B1 - Integration of a robotic system with one or more mobile computing devices - Google Patents
Integration of a robotic system with one or more mobile computing devices Download PDFInfo
- Publication number
- KR101793189B1 KR101793189B1 KR1020157007769A KR20157007769A KR101793189B1 KR 101793189 B1 KR101793189 B1 KR 101793189B1 KR 1020157007769 A KR1020157007769 A KR 1020157007769A KR 20157007769 A KR20157007769 A KR 20157007769A KR 101793189 B1 KR101793189 B1 KR 101793189B1
- Authority
- KR
- South Korea
- Prior art keywords
- physical
- agents
- agent
- virtual
- state
- Prior art date
Links
- 230000010354 integration Effects 0.000 title description 7
- 238000000034 method Methods 0.000 claims description 77
- 230000003993 interaction Effects 0.000 claims description 52
- 230000008859 change Effects 0.000 claims description 30
- 230000033001 locomotion Effects 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 15
- 230000007246 mechanism Effects 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 10
- 230000014509 gene expression Effects 0.000 claims description 5
- 238000005187 foaming Methods 0.000 claims description 2
- 230000000704 physical effect Effects 0.000 claims 4
- 239000003795 chemical substances by application Substances 0.000 description 71
- 230000006399 behavior Effects 0.000 description 19
- 238000013473 artificial intelligence Methods 0.000 description 18
- 230000000694 effects Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 10
- 238000009877 rendering Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 8
- 230000015654 memory Effects 0.000 description 8
- 238000013459 approach Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 241001633663 Iris pseudacorus Species 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000010304 firing Methods 0.000 description 3
- 239000006260 foam Substances 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000001771 impaired effect Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000270281 Coluber constrictor Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 241001126320 Turritellidae Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- OQZCSNDVOWYALR-UHFFFAOYSA-N flurochloridone Chemical compound FC(F)(F)C1=CC=CC(N2C(C(Cl)C(CCl)C2)=O)=C1 OQZCSNDVOWYALR-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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/65—Generating 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 automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/803—Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/32—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
- A63F13/327—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections using wireless networks, e.g. Wi-Fi® or piconet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
- A63F13/573—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H17/00—Toy vehicles, e.g. with self-drive; ; Cranes, winches or the like; Accessories therefor
- A63H17/26—Details; Accessories
- A63H17/32—Acoustical or optical signalling devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H30/00—Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
- A63H30/02—Electrical arrangements
- A63H30/04—Electrical arrangements using wireless transmission
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/25—Output arrangements for video game devices
- A63F13/28—Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/30—Features 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/308—Details of the user interface
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/69—Involving elements of the real world in the game world, e.g. measurement in live races, real video
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8017—Driving on land or water; Flying
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H2200/00—Computerized interactive toys, e.g. dolls
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Toys (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Processing Or Creating Images (AREA)
Abstract
로봇 시스템이 하나 이상의 모바일 컴퓨팅 디바이스들과 통합된다. 사용자 또는 사용자들의 제어 하에서, 물리적 공간에서의 시스템의 개개의 구성요소들의 물리적 구성들, 또는 에이전트들은 가상 공간에서의 표현으로 복제된다. 어느 정도의 실-시간 동등성은 물리적 환경을 반영하는 가상 환경을 구현하기 위해, 물리적 및 가상 공간들 사이에 유지된다. 하나의 환경 내에서 발생하는 이벤트들은 다른 환경 내에서 발생하는 이벤트들의 진행에 대한 결과에 직접 영향을 주고 그 결과를 야기할 수 있다. 그렇게 함으로써 가상 공간의 요소들은 물리적 공간에서의 요소들과 관계를 맺는 피어에 대해 정확히 상호의존적이고 통일되게 된다. 적어도 일 실시예에서, 본 발명의 시스템은 물리적 공간에서의 비디오 게임의 발현과 같이, 엔터테인먼트의 애플리케이션으로 구현된다.The robotic system is integrated with one or more mobile computing devices. Under the control of the user or users, the physical configurations, or agents, of the individual components of the system in physical space are replicated in representation in virtual space. Some real-time equivalence is maintained between the physical and virtual spaces to implement a virtual environment that reflects the physical environment. Events that occur in one environment can directly affect the outcome of the progress of events that occur in the other environment and cause the outcome. By doing so, the elements of virtual space become precisely interdependent and unified with respect to peers that relate to elements in physical space. In at least one embodiment, the system of the present invention is implemented as an application of entertainment, such as the appearance of a video game in physical space.
Description
관련 출원의 상호-참조Cross-reference of related application - reference
본 출원은 2012년 8월 27일에 출원된, "Integration of a Robotic System with One or More Mobile Computing Devices"(대리인 문서 번호 ANK002-PROV)에 대한 미국 가 출원 번호 제61/693,687호로부터의 우선권을 주장하며, 이는 본 명세서에 참조로서 원용된다.This application claims priority from U.S. Provisional Application No. 61 / 693,687, entitled " Integration of a Robotic System with One or More Mobile Computing Devices "(Attorney Docket ANK002-PROV), filed on August 27, Which is incorporated herein by reference.
본 발명은 모바일 컴퓨팅 디바이스들과 통합될 수 있는 로봇 시스템들에 관한 것이다.The present invention relates to robotic systems that can be integrated with mobile computing devices.
이동식의, 자율적인 및/또는 그외 그 환경에 관한 어느 정도의 인지로 작동할 수 있는 빌딩 로봇 시스템들의 과제들 중 하나는 비용이 중요할 수 있다는 것이다. 소비자 마켓에 대한 판매들을 지원할 수 있는 비용으로 그러한 시스템들을 생산하는 것은 소비자용 로봇들의 개발에 대한 역사적인 장애가 되어왔다. 제품들에 대해 인공 지능에 바탕을 둔 어느 정도의 지능 또는 기능 역량을 부여하는 마켓 기회는 엄청나지만, 이들 제품들, 특히 원자재 제품들의 원가 구조는 이들 부가물들을 사업적 관점에서 엄두도 못 낼 정도로 비싸게 만든다.One of the challenges of building robotic systems that can be mobile, autonomous, and / or otherwise operating with a certain perception of the environment is that costs can be important. Producing such systems at a cost that can support sales to the consumer market has been a historic obstacle to the development of consumer robots. Market opportunities to give a certain level of intelligence or capability based on artificial intelligence on products are enormous, but the cost structure of these products, especially commodity products, It makes it expensive.
그러한 비용의 특정한 원인은 제어 시스템들 및 자율적인 구성요소들을 포함하여, 그러한 로봇 시스템들을 위한 전용 하드웨어 및 펌웨어의 사용이다. 엔터테인먼트 제품들과 관련된 특정한 시스템들에서, 원자재-기반 제품 마켓들의 가격-경쟁력 있는 특성이 주어지면, 수익성 있는 방식으로 그러한 로봇 애플리케이션들을 위한 제품들을 생산 및 판매하는 것은 실현불가능할 수 있다.A particular cause of such costs is the use of dedicated hardware and firmware for such robotic systems, including control systems and autonomous components. Given the cost-competitive nature of commodity-based product markets, in certain systems related to entertainment products, it may not be feasible to produce and sell products for such robotic applications in a profitable manner.
본 발명의 다양한 실시예들에 따르면, 스마트폰들 및/또는 태블릿들과 같은 모바일 컴퓨팅 디바이스들은 로봇 시스템들을 지원 및 제어하기 위한 플랫폼으로서 영향력이 발휘된다. 소비자들 사이의 그러한 디바이스들의 급속한 성장은 충분한 수의 그러한 디바이스들이 로봇 시스템과 관련되어 소비자에 의한 사용을 위해 이용가능하다는 추정을 실현가능하고 현실적으로 만들었다.According to various embodiments of the present invention, mobile computing devices such as smart phones and / or tablets have an impact as a platform for supporting and controlling robotic systems. The rapid growth of such devices among consumers has made the assumption that a sufficient number of such devices are available for use by consumers in connection with the robotic system is feasible and realistic.
로봇 시스템의 동작의 적어도 일부를 지원하기 위한 스마트폰들과 같은 모바일 컴퓨팅 디바이스들을 사용함으로써, 본 발명의 기술들은 로봇 시스템에서의 하드웨어 요건들의 중요한 가능성 있는 감소들을 제공한다. 또한, 그러한 디바이스들은 일반적으로 리치 사용자 인터페이스들(rich user interfaces), 주목할 만한 컴퓨터 성능, 및 내장 무선 연결을 가지고, 따라서 디바이스들을 본 명세서에 설명되는 바와 같이 로봇 시스템들을 위한 로봇 제어 시스템으로서 사용하기에 이상적으로 만든다.By using mobile computing devices, such as smartphones, to support at least a portion of the operation of the robotic system, the techniques of the present invention provide significant potential reductions in hardware requirements in the robotic system. In addition, such devices typically have rich user interfaces, notable computer performance, and built-in wireless connectivity, thus allowing devices to be used as a robot control system for robotic systems as described herein Ideally.
본 발명의 다양한 실시예들에 따르면, 로봇 시스템은 하나 이상의 모바일 컴퓨팅 디바이스들과 통합된다. 그러한 컴퓨팅 디바이스들은 예를 들어, 하나 이상의 스마트폰들, 태블릿 컴퓨터들, 랩탑 컴퓨터들, 게이밍 콘솔들, 키오스크들, 및/또는 기타를 포함할 수 있다. 다른 실시예들에서, 본 발명의 기술들은 데스크탑 컴퓨터들, 웹-기반 컴퓨팅 아키텍처들, 및/또는 기타와 같은, 임의의 다른 적합한 컴퓨팅 디바이스들을 사용하여 구현될 수 있다. 그러한 컴퓨팅 구성요소들은 서로, 및/또는 사용자 또는 사용자들의 제어 하의 에이전트들(agents)과 같은 물리적 구성요소들과 네트워킹될 수 있는데; 그러한 네트워킹은 블루투스(Bluetooth), 와이파이(Wifi), 및/또는 다른 무선 네트워킹 기술들을 활용할 수 있다.According to various embodiments of the present invention, a robotic system is integrated with one or more mobile computing devices. Such computing devices may include, for example, one or more smartphones, tablet computers, laptop computers, gaming consoles, kiosks, and / or the like. In other embodiments, techniques of the present invention may be implemented using any other suitable computing devices, such as desktop computers, web-based computing architectures, and / or the like. Such computing components may be networked with each other, and / or with physical components such as agents under the control of a user or users; Such networking may utilize Bluetooth, WiFi, and / or other wireless networking technologies.
본 명세서에 설명되는 바와 같은 다양한 실시예들에서, 사용자 또는 사용자들의 제어 하에서, 물리적 공간에서의 시스템의 개개의 구성요소들의 물리적 구성들, 또는 에이전트들은 가상 공간에서의 표현으로 복제된다. 어느 정도의 실-시간 동등성이 물리적 환경을 반영하는 가상 환경을 구현하기 위해, 물리적 및 가상 공간들 사이에서 유지될 수 있다. 이러한 방식으로, 본 발명은 하나의 환경 내에서 발생하는 이벤트들이 다른 환경 내에서 발생하는 이벤트들의 진행에 대한 결과에 영향을 미치고 그 결과를 야기할 수 있는 시스템을 지원한다. 그렇게 함으로써, 가상 공간의 요소들은 물리적 공간의 요소들과 관계를 맺는 피어(peer)에 대해 정확히 상호의존적이고 통일되어질 수 있다.In various embodiments as described herein, under the control of a user or users, the physical configurations, or agents, of individual components of the system in physical space are replicated in representation in virtual space. Some real-time equivalence can be maintained between physical and virtual spaces to implement a virtual environment that reflects the physical environment. In this way, the present invention supports a system in which events occurring in one environment can affect the outcome of the progress of events occurring in another environment and cause the results. By doing so, the elements of the virtual space can be precisely interdependent and unified with respect to the peers that are associated with the elements of physical space.
가상 및 물리의 통합은 증강 현실(argmented reality)의 소위 테넌트들(tenants)이었는데; 지금까지의 증강 현실의 애플리케이션들은 단-방향 작용(가상에 영향을 미치는 물리, 또는 그 반대 중 하나)의 많은 예들을 생산해왔으나, 이들은 로봇 양-방향 시스템을 구성하는 것에 미치지 못해왔다. 본 발명의 적어도 일 실시예에서, 가상 환경이 일관된 방식으로 물리적 환경에, 및 그 반대로 영향을 주는 정확히 공생적인 시스템이 구현된다.The integration of virtual and physical was the so-called tenants of augmented reality; Up to now, augmented reality applications have produced many examples of single-directional action (one that affects virtually, or vice versa), but they have not been able to compose a robotic bi-directional system. In at least one embodiment of the invention, an exactly symbiotic system is implemented in which the virtual environment affects the physical environment in a coherent manner, and vice versa.
적어도 일 실시예에서, 본 발명의 시스템은 물리적 공간에서의 비디오 게임의 발현과 같은, 엔터테인먼트의 애플리케이션으로서 구현된다. 게임들 및 엔터테인먼트는 다수의 사용자들 간 상호작용의 그 포함을 위한 본 발명의 흥미로운 사용이다. 적어도 일 실시예에서, 본 발명의 시스템은 사용자들이 시스템의 하나 이상의 에이전트들을 제어하는 환경을 제공하는 한편, 하나 이상의 다른 에이전트들은 인공 지능에 의해 제어될 수 있는 환경을 제공한다.In at least one embodiment, the system of the present invention is implemented as an application of entertainment, such as the appearance of a video game in physical space. Games and entertainment are an interesting use of the present invention for its inclusion of interaction among multiple users. In at least one embodiment, the system of the present invention provides an environment in which users may control one or more agents of the system, while one or more other agents may be controlled by artificial intelligence.
첨부 도면들은 본 발명의 다수의 실시예들을 예시하고, 설명과 함께, 실시예들에 따른 본 발명의 원리들을 설명하는 역할을 한다. 해당 기술분야의 통상의 기술자는 도면들에 예시된 특정한 실시예들이 단지 대표적인 것이며, 본 발명의 범위를 제한하도록 의도되지 않는다는 것을 인식할 것이다.
도 1은 일 실시예에 따른 본 발명을 구현하기 위한 아키텍처를 도시하는 블록도이다.
도 2는 일 실시예에 따라, 물리적 및 가상 공간에서의 이벤트들 및 기능들의 통합의 예를 도시한다.
도 3은 적어도 일 실시예에 따라 호스트 디바이스(기지국)의 역할의 측면들을 도시하고, 차량들을 제어하는 사용자들 및 그들 자신의 차량들 사이의 관계를 구현하는 다양한 구성요소들 및 구조들을 예시하는 블록도이다.
도 4는 일 실시예에 따라, 차량들 상의 바디 커버들이 가상 환경에서의 차량들의 대응하는 표현들의 특성들의 차이를 반영하는데 사용되고, 그에 따라 물리적 및 가상 환경들 사이의 관계를 강화하는 예를 도시한다.
도 5는 일 실시예에 따라, 물리적 공간 내에서 디지털 방식으로 렌더링되는 요소를 구현하기 위한 가상 액세서리의 사용의 예를 도시한다.
도 6은 일 실시예에 따라, 차량들이 레이스 트랙(race track)상을 레이싱하는 게임플레이 환경을 구현하기 위한 본 발명의 실시예의 예를 도시한다.BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings illustrate a number of embodiments of the invention and, together with the description, serve to explain the principles of the invention in accordance with the embodiments. Those skilled in the art will recognize that the specific embodiments illustrated in the drawings are merely exemplary and are not intended to limit the scope of the invention.
1 is a block diagram illustrating an architecture for implementing the invention in accordance with one embodiment.
FIG. 2 illustrates an example of the integration of events and functions in physical and virtual space, according to one embodiment.
3 illustrates aspects of the role of a host device (base station) in accordance with at least one embodiment and includes blocks that illustrate the various components and structures that implement the relationships between users controlling their vehicles and their own vehicles .
4 illustrates an example of body covers on vehicles being used to reflect differences in the characteristics of corresponding representations of vehicles in a virtual environment, and thus to enhance the relationship between physical and virtual environments, according to one embodiment .
5 illustrates an example of the use of a virtual accessory for implementing an element that is digitally rendered within a physical space, according to one embodiment.
Figure 6 illustrates an example of an embodiment of the present invention for implementing a game play environment in which vehicles race on a race track, according to one embodiment.
예시적인 목적들을 위해, 본 발명은 본 명세서에서 사용자 제어 하의 에이전트들이 물리적 트랙 상에서 경쟁하는, 게임-플레이와 관련된 물리적 차량들 또는 액세서리들인 카레이싱 게임을 구현하는 시스템의 맥락에서 주로 설명될 것이다. 또한, 그러한 시스템, 및 가상 및 물리적 환경들을 통합하기 위한 그것의 메커니즘들의 구현에 관한 상세내용들이 2012년 12월 6일에 출원된, "Distributed System of Autonomously Controlled Mobile Agents"(대리인 문서 번호 ANK001CONT)에 대한 관련 미국 실용 출원 번호 제13/707,512호에 제시되고, 이는 본 명세서에 참조로 원용된다. 그러나, 해당 기술분야의 통상의 기술자는 본 명세서에 설명되는 기술들이 다른 맥락들 및 환경들에서 구현될 수 있고, 물리적 트랙 상의 차량들에 제한될 필요가 없다는 것을 인식할 것이다. 그러므로 본 명세서에 설명되는 바와 같은 용어 "차량"은 본 명세서 설명되는 방식으로 제어되고 작동될 수 있는 한편, 또한 본 명세서에 설명되는 바와 같은 가상 환경에서 표현될 수 있는 임의의 이동가능한 에이전트로 확장하도록 취해질 것이다.For illustrative purposes, the present invention will be described largely in the context of a system herein embodying a car racing game, in which the agents under user control compete on a physical track, physical vehicles or accessories associated with game-play. Further details regarding such systems and their implementations for integrating virtual and physical environments are provided in "Distributed System of Autonomously Controlled Mobile Agents" (Attorney Docket No. ANK001CONT), filed December 6, 2012 U.S. Patent Application Serial No. 13 / 707,512, which is hereby incorporated by reference herein. However, those of ordinary skill in the art will recognize that the techniques described herein may be implemented in other contexts and environments, and need not be limited to vehicles on physical tracks. Thus, the term "vehicle" as described herein can be controlled and operated in the manner described herein, while also extending to any mobile agent that can be represented in a virtual environment as described herein Will be taken.
본 발명이 본 명세서에서 엔터테인먼트의 애플리케이션의 맥락에서 주로 설명되더라도, 해당 기술분야의 통상의 기술자는 본 발명이 엔터테인먼트와 관련될 필요는 없는 맥락들을 포함하여, 많은 다른 맥락들에서 구현될 수 있다는 것을 인식할 것이다.Although the present invention is described herein primarily in the context of an application of entertainment, one of ordinary skill in the art will recognize that the present invention may be implemented in many different contexts, including contexts that need not be associated with entertainment something to do.
시스템 아키텍처System architecture
이제 도 1을 참조하면, 일 실시예에 따른 본 발명을 구현하기 위한 아키텍처가 도시된다. 도 1에 도시된 시스템(100)에서, 게임플레이는 호스트 디바이스(108)에 의해 호스팅되며, 이는 이동식 또는 고정식인지와 관계없이, 예를 들어 스마트폰, 태블릿, 랩탑 컴퓨터, 또는 기타, 및/또는 그것들의 임의의 조합과 같은, 임의의 적합한 컴퓨팅 디바이스 상에 구현될 수 있다. 적어도 일 실시예에서, 호스트 디바이스(108)는 게임 동작들을 구현하는 소프트웨어에 포함되는 다양한 알고리즘들을 지원하고 구동한다. 호스트 디바이스(108) 및 관련 소프트웨어는 본 명세서에서 기지국 또는 중앙 제어 장치로서 총괄적으로 지칭된다.Referring now to Figure 1, there is shown an architecture for implementing the invention in accordance with one embodiment. 1, the game play is hosted by a
다양한 상이한 디바이스들 중 임의의 디바이스는 호스트 디바이스(108)로서 역할을 할 수 있는데; 예들은 스마트폰들, 태블릿 컴퓨터들, 랩탑 컴퓨터들, 데스크탑 컴퓨터들, 비디오 게임 콘솔들, 및/또는 시스템을 위한 제어 소프트웨어를 지원할 수 있는 임의의 다른 컴퓨팅 디바이스를 포함한다. 적어도 일 실시예에서, 그러한 디바이스는 예를 들어 및 제한 없이: 캘리포니아, 쿠퍼티노의 애플사로부터 이용가능한 iOS 또는 MacOS; 캘리포니아, 마운틴뷰의 구글사로부터 이용가능한 안드로이드; 또는 워싱턴, 레드먼드의 마이크로소프트사로부터 이용가능한 윈도우즈를 포함하여, 임의의 적합한 운영 시스템을 사용할 수 있다. 적어도 일 실시예에서, 호스트 디바이스(108)는 적합한 소프트웨어 애플리케이션("app")을 구동하는, 캘리포니아, 쿠퍼티노의 애플사로부터 이용가능한 iPhone 또는 iPad이다. 적어도 일 실시예에서, 호스트 디바이스(108)를 제어하기 위한 소프트웨어는 규칙들, 사용자-제어 동작들, 및/또는 인공 지능에 따라 게임플레이를 계획, 조정 및 실행하기 위한 및 물리적 공간에서의 에이전트들(104A 내지 104F)을 작동하기 위한 적절한 기능 및 게임디스플레이 구조를 포함하는 다운로드가능한 애플리케이션("app")과 같은, 임의의 적합한 수단을 통해 제공될 수 있다. 적어도 일 실시예에서, 호스트 디바이스(108)는 에이전트들(104A 내지 104F)의 상태를 유지하고, 에이전트들(104A 내지 104F)로 및 에이전트들로부터 명령들을 송신 및 수신한다. 호스트 디바이스(108)는 또한 시스템과 사용자 상호작용을 용이하게 하기 위한 적합한 사용자 인터페이스를 포함할 수 있다.Any of a variety of different devices may serve as the
적어도 일 실시예에서, 에이전트들(104A 내지 104F)은 차량들과 같은 모바일 에이전트들이고, 그것들이 다른 대상물들 또는 구성요소들일 수 있더라도, 본 명세서에서 그와 같이 지칭된다.In at least one embodiment,
적어도 일 실시예에서, 호스트 디바이스(108)는 명령들이 호스트 디바이스(108) 상에서 구동하는 알고리즘들로부터 발생하는지 또는 호스트 디바이스(108)를 통해 라우팅되지만 물리적으로 존재하거나 원거리에 위치되는 사용자들(109D 내지 109K)에 의해 제어되는 제어 디바이스들(101D 내지 101K)로부터 발생하는지에 관계없이, 에이전트들(104A 내지 104F) 및/또는 액세서리들(105, 106)과 같은 다른 구성요소들로 송신되는 모든 활동 및 제어 명령들을 위한 중앙 노드이다. 다른 실시예들에서, 호스트 디바이스(108)가 모든 활동 및 제어 명령들을 위한 중앙 노드일 필요는 없는 보다 분산된 아키텍처가 구현될 수 있다.In at least one embodiment, the
도 1에 도시된 예는 특정 수의 컨트롤러들(101D 내지 101K), 에이전트들(104B 내지 104H), 액세서리들(105, 106)(또한 에이전트의 유형으로 간주될 수 있는), AI-제어 차량들(104J)(또한 에이전트의 유형으로 간주될 수 있는), 및 다른 구성요소들을 포함한다. 해당 기술분야의 통상의 기술자는 도 1에 도시되고 본 명세서에 설명되는 이들 구성요소들의 특정한 수량들이 단지 대표적이라는 것, 및 본 발명이 임의의 다른 수량들을 사용하여, 및/또는 만약 적절하다면 생략되는 몇몇 구성요소들과 함께 구현될 수 있다는 것을 인식할 것이다.The example shown in FIG. 1 includes a specific number of
도 1의 아키텍처에서, 시스템(100)은 중앙집중 방식으로 구현되며, 여기서 컨트롤러들(101D 내지 101K) 및 에이전트들(차량들(104A 내지 104F)을 포함하는)은 다른 구성요소들과 함께, 호스트 디바이스(108)와 통신한다. 도시된 바와 같이, 적어도 일 실시예에서, 다수의 사용자들(109)(또는 플레이어들)은 차량들(104A 내지 104F)의 형태의 다수의 에이전트들을 제어할 수 있는 한편, 다른 에이전트들/차량들(104J)은 인공 지능에 의해 제어될 수 있다.In the architecture of FIG. 1,
도 1에 도시된 바와 같이, 임의의 수의 외부의 디바이스들은 예를 들어 셀룰러/인터넷 연결(107)과 같은, 임의의 적합한 통신 프로토콜을 통해 호스트 디바이스(108)에 연결될 수 있다. 다양한 외부 디바이스들은 호스트 디바이스(108)와 동일할 수 있거나 동일하지 않을 수 있다. 몇몇 또는 모든 외부 디바이스들은 플레이어 컨트롤러들로서 역할한다. 도 1은 임의의 수의 컨트롤러들(101J, 101K)(각각, 사용자들(109J, 109K)에 의해 제어되는)을 갖는 게임 콘솔(101B); 랩탑 컴퓨터(101D)(사용자(109D)에 의해 제어되는); 독립형 컨트롤러(101E)(사용자(109E)에 의해 제어되는); 및 스마트폰들(101F, 101G, 및 101H)(사용자들(109F, 109G, 및 109H)에 의해 제어되는)을 포함하여, 플레이어 컨트롤러들로서 사용될 수 있는 디바이스들의 다양한 예들을 도시한다. 적어도 일 실시예에서, 임의의 또는 모든 컨트롤러들(101)은 적합한 소프트웨어 애플리케이션("app")을 구동하는, 캘리포니아, 쿠퍼티노의 애플사로부터 이용가능한 iPhone 또는 iPad일 수 있다. 컨트롤러들(101J, 101K, 101E)은 예를 들어 보통 콘솔 게임 디바이스들과 함께 사용되는 예시적인 컨트롤러들을 위함을 포함하는, 임의의 적합한 유형일 수 있다.As shown in FIG. 1, any number of external devices may be connected to the
도 1에 도시된 실시예에서, 게임은 호스트 디바이스(108) 상에 호스팅된다. 호스트 디바이스(108)는 소프트웨어의 지시 하의 가상 환경에서뿐만 아니라 물리적 환경(레이스 트랙과 같은)에서의 물리적 공간에서 게임플레이를 지원하며; 가상 환경의 상태는 호스트 디바이스(108) 상의 메모리에 및/또는 다른 곳에 유지된다.In the embodiment shown in FIG. 1, the game is hosted on the
이제 또한 도 6을 참조하면, 일 실시예를 따라, 차량들(104)(레이스용 차들)이 구동가능한 표면(601)(레이스 트랙과 같은) 상에서 레이싱하는 게임플레이 환경을 구현하기 위한 본 발명의 실시예의 예가 도시된다. 그러나, 해당 기술분야의 통상의 기술자는 그러한 실시예가 본 발명의 구현의 단지 하나의 예인 것을 인식할 것이며; 예를 들어, 시스템은 차량들 외의 에이전트들과 함께, 및/또는 트랙들의 상이한 유형들과 함께 또는 트랙이 전혀 없는, 판이한 물리적 환경에서 구현될 수 있다.Referring now also to FIG. 6, in accordance with an embodiment, there is shown an embodiment of the present invention for implementing a game play environment in which vehicles 104 (race cars) race on a drivable surface 601 (such as a race track) An example of an embodiment is shown. However, one of ordinary skill in the art will recognize that such an embodiment is only one example of an implementation of the present invention; For example, the system may be implemented in a different physical environment, with agents other than vehicles, and / or with different types of tracks or with no tracks at all.
"Distributed System of Autonomously Controlled Mobile Agents"에 대한 관련 미국 실용 출원 번호 제13/707,512호에 설명된 바와 같이, 구동가능한 표면(601)은 적어도 일 실시예에서, 하나 이상의 도로들의 물리적 모델이고, 정지 표지들, 신호등들(105), 철도 건널목들, 및/또는 기타와 같은 대상물들을 포함할 수 있다. 차량들(104)은 독립적으로 움직일 수 있는 모바일 에이전트들이다. 차량들(104)은 차들, 트럭들, 앰뷸런스들, 동물들 또는 임의의 다른 원하는 형태를 본떠서 물리적으로 모델링될 수 있다. 적어도 일 실시예에서, 각각의 차량은 구동가능한 표면(601)로부터 정보를 판독할 수 있는 하나 이상의 센서들(604) 및 예를 들어 무선 수단을 통해, 호스트 디바이스(108)로/호스트 디바이스로부터 명령들 및/또는 다른 정보를 송신 및 수신할 수 있는 통신 모듈(미도시)을 포함한다.As described in related U.S. Utility No. 13 / 707,512, entitled "Distributed System of Autonomously Controlled Mobile Agents ", the
도 6에 도시된 바와 같이, 구동가능한 표면(601)은 그러한 구획된 배열이 선택적이더라도, 임의의 수의 구획들(602)을 포함할 수 있다. 그러한 구획들(602)은 특정 연결점들에서 연결할 수 있고 임의의 원하는 구조를 구성하기 위해 재구성될 수 있다. 이러한 구조는 구동가능한 표면(601)으로 지칭된다. 도로 구획들(602)은 하나 이상의 차량들(104)이 소위 구동가능한 섹션들을 찾고 각각의 연결점에 존재하는 단순한 클릭-인 메커니즘을 사용하여 각각의 다른 양단간으로 연결할 수 있는 연속적인 영역들을 포함한다. 각각의 도로 구획(602)은 또한 동력을 인접한 도로 피스(road piece)(602)에 선택적으로 송신할 수 있고 신호등들(603) 및 기타와 같은, 고급 기능을 위한 마이크로컨트롤러를 선택적으로 포함할 수 있다. 구동가능한 표면(601)은 또한 단일 피스로서 제공될 수 있다. 구동가능한 표면(601)(및/또는 구획들(602))은 접힐 수 있고, 접을 수 있고, 말 수 있으며, 또는 그외 보관을 위해 소형화될 수 있다.As shown in Figure 6, the
적어도 일 실시예에서, 호스트 디바이스(108) 상에서 구동하는, 기지국 소프트웨어는 차량(104) 위치, 방향, 속도 및 게임 이벤트들을 특징짓는 다른 측면들에 관해 저장된 정보를 업데이트함으로써 물리적 환경에서의 이벤트들과 동등성 계속하여 유지하는 물리적 게임의 가상 버전을 작동한다. 적어도 일 실시예에서, 호스트 디바이스(108)는 언제라도 제시간에 물리적 환경 및 가상 환경에서의 게임 상태들이 동일(또는 실질적으로 동일)하다는 것, 또는 적어도 가상 환경에서의 게임 상태가 게임디스플레이 목적들을 위해 적어도 충분한 정확도로 물리적 상태의 표현이라는 것을 보장한다.In at least one embodiment, the base station software, running on the
적어도 일 실시예에서, 인공 지능 소프트웨어는 호스트 디바이스(108) 상에서 구동하고, 트랙(601) 상에서 작동하는 하나 이상의 차량들(104J)을 제어하기 위한 명령들을 발행한다(무선 통신 메커니즘들 또는 다른 메커니즘들을 통해). 다른 실시예들에서, 차량들(104J)을 제어하기 위한 소프트웨어는 다른 곳에 위치될 수 있고/있거나, 그들 자신들의 차량들(104J) 상에서 구동할 수 있다.In at least one embodiment, the AI software runs on the
적어도 일 실시예에서, 호스트 디바이스(108)는 동시에 차량(104)을 제어하는 사람 사용자(109A)를 위한 제어 유닛으로 역할할 수 있다(도시된 예에서, 사람 사용자(109A)는 차량(104A)을 제어하기 위해 호스트 디바이스(108)를 사용한다). 그러한 기능은 호스트 디바이스(108)가 또한 다른 차량들(104B 내지 104F)을 제어하는 다른 디바이스들(101D 내지 101K)로부터 들어오는 명령들을 제어하기 위한 전달자 및 해석자로서 역할하는 동안 호스트 디바이스(108) 상에 제공될 수 있다. 다른 실시예에서, 호스트 디바이스(108)는 사람 사용자(109)를 위한 제어 유닛으로 역할하는 것이 아니라, 전용 중앙 제어 장치로서 작동한다.In at least one embodiment, the
적어도 일 실시예에서, 사용자 제어 하의 에이전트들(차량들(104B 내지 104F)과 같은)은 형식상 또는 기능상으로 일관될 필요는 없다. 예를 들어, 사용자들(109)은 차량들 외의 대상물들 또는 요소들(신호등들, 철도 건널목들, 포탑포들(gun turrets), 도개교들(drawbridges), 보행자들, 및/또는 기타)을 제어할 기회가 주어질 수 있다.In at least one embodiment, agents under user control (such as
플레이어 컨트롤러들(101D 내지 101K)은 호스트 디바이스(108)와 직접 통신할 수 있고 또는 플레이어 컨트롤러들은 중개 디바이스들을 통해 통신할 수 있다. 예를 들어, 도 1에서, 컨트롤러들(101J 및 101K)은 게임 콘솔(101B)을 통해 호스트 디바이스(108)와 통신한다. 유사하게, 연결들의 임의의 수의 매듭들은 다시 호스트 디바이스에 네트워킹되는 일련의 디바이스들을 통해 호스트 디바이스들에 연결하는 하나 이상의 스마트폰들과 같은, 호스트 디바이스 및 플레이어 컨트롤러들 사이에 구성될 수 있다.The
도 1은 차량들(104B 내지 104F)이 각각, 사람 사용자들(109B 내지 109F)에 의해 제어되는 예를 도시한다. 액세서리들(105, 106)로서 지칭되는, 추가적인 에이전트들은 또한 사람 사용자들(109)에 의해 제어될 수 있고, 또는 추가적인 에이전트들은 자동으로 작동할 수 있다(예를 들어, 호스트 디바이스(108)에서 또는 다른 곳에서 구동하는 인공 지능 소프트웨어의 지시 하에서). 각각의 액세서리(105, 106)는 전동 또는 수동일 수 있고, 직접 게임플레이 환경 및/또는 다른 에이전트들(104)의 측면들에 영향을 주는데 사용될 수 있는 물리적 또는 가상 물품일 수 있다. 이러한 예에서, 액세서리(105)는 도 6시 도시된 바와 같은 물리적 신호등이다. 물리적 액세서리들의 다른 예들은 장애물들, 건널목 차단기들, 도개교들, 및/또는 기타일 수 있으며; 그러한 디바이스들은 게임플레이와 관련되어 그들의 동작을 제어하기 위해 호스트 디바이스(108)에 통신가능하게 결합될 수 있다. 적어도 일 실시예에서, 사용자(109)는 액세서리(105)의 물리적 상태를 변경하고 그렇게 함으로써 게임디스플레이에 작용할 수 있다.Fig. 1 shows an example in which the
스마트 액세서리들(105)은 또한 물리적 공간에서 수동 요소들로 존재할 수 있다. 수동 스마트 액세서리의 예는 플레이 전 또는 플레이 동안 몇몇 지점에 임의의 위치에 배치되는 구동가능한 표면(601) 상의 가능성 있는 위험을 나타내도록 의도되는 데칼(decal)이다. 그러한 데칼은 차량들(104)에 의해 그것의 고유한 식별을 허용하는 부호화 기법을 포함할 수 있다(예를 들어, 차량들이 그것을 피함에 따라). 적어도 일 실시예에서, 하나 이상의 그러한 수동 스마트 액세서리들을 제어하고 있는 사용자(109)는 개별적으로 또는 그룹들로 액세서리들을 선택적으로 활성화 또는 비활성화할 수 있다. 물리적 환경에서 수동이더라도, 가상 환경에서 그러한 액세서리들은 예를 들어:
● 그것들을 피하는 차량들의 조종 및 제동을 중단할 수 있는 유막들(oil slicks);• oil slicks that can stop steering and braking of vehicles that avoid them;
● 지뢰들;● Landmines;
● 못들;● nails;
● 그것들이 활성화되면 물리적으로 그것들을 피하기 위해 제 1 차량(104)의 수행을 촉진하는 전원 장치들Power supplies that facilitate the performance of the
과 같은 다양한 상이한 피처들을 나타낼 수 있다.And the like.
수동 액세서리들(105)이 반드시 물리적 방법으로 상태 변화를 표시할 필요는 없다 하더라도, 호스트 디바이스(108)는 가상 상태의 변화들을 보고할 수 있고, 실시간으로, 컨트롤러들(101)을 통해, 사용자들(109)에게 그러한 변화들을 송신할 수 있다. 차량들(104)의 행동은 또한 액세서리들(105)의 가상 상태의 변화들에 반응하여 변경될 수 있다.Although the
액세서리(106)는 가상 액세서리의 예이며, 이는 적절한 출력 디바이스(디스플레이 스크린과 같은)를 갖는 컴퓨팅 디바이스(스마트폰 또는 태블릿 컴퓨터 또는 기타와 같은) 외의 물리적 구성요소를 가지지 않는다. 가상 액세서리(106)는 모습 및 상태 양자에 적절하게 액세서리를 렌더링하기 위해 물리적 게임 환경에서의 특정한 위치에 물리적으로 배치될 수 있다. 이제 도 5를 참조하면, 일 실시예에 따라, 물리적 공간 내에 디지털 방식으로 렌더링된 요소(포탑포의 이미지(503))를 구현하는 가상 액세서리(태블릿(106))의 예가 도시된다. 이미지(503)는 그것이 게임플레이 영역에서의 물리적 차량들(104)과 상호작용하게 보이도록 이동하고 애니메이션화될 수 있는데; 예를 들어, 이미지가 물리적 차량(104)에 발사하게 보이도록 만들어지고, 및 물리적 차량(104)은 마치 그것이 피격된 것처럼 반응하도록 만들어질 수 있다. 이들 행동들 및 상호작용들은 또한 도 5에 도시된 바와 같이, 가상 환경을 반영하며, 여기서 포탑(501)은 차량(104)의 가상 표현(502)에 발사하고 있다. 다양한 실시예들에서, 액세서리들(105, 106)은 동작을 위해 사람 사용자를 의존할 필요는 없으나 호스트 디바이스(108) 상에서 및/또는 다른 곳에서 구동하는 인공 지능 소프트웨어의 제어 하에서 작동할 수 있다.The
사용자들(109)의 수 및 AI-제어 상대들의 수가 증가함에 따라, 호스트 디바이스(108)에 대한 성능 요구들이 유사하게 증가한다는 것이 해당 기술분야의 통상의 기술자에 의해 인식될 수 있다. 에이전트들(104)의 수 및 호스트 디바이스(108)의 역량에 따라, 컴퓨터 요건들의 증가들은 예를 들어, 게임 성능에 영향을 줄 수 있다. 본 발명의 적어도 일 실시예에서, 시스템은 분산 환경에서 구현되며, 여기서, 예를 들어, 호스트 디바이스(108)는 그것이 연결되어 로직의 실행을 지원할 수 있는 임의의 수의 디바이스들에 그것의 상기 로직의 부분들을 분산하는 역량을 가진다. 이들의 예들은 스마트폰들, 태블릿 컴퓨터들, 랩탑들, 게임 콘솔들, 및/또는 기타를 포함하나, 또한 그것에 할당되는 로직을 구동하기 위해 필요한 지원을 제공할 수 있는 임의의 적합한 디바이스들일 수 있다. 적어도 일 실시예에서, 예를 들어, 운영 시스템(100)과 연관된 몇몇 프로세싱 태스크들은 하나 이상의 컨트롤러들(101D 내지 101H)에 분산될 수 있다.It will be appreciated by those skilled in the art that as the number of users 109 and the number of AI-control partners increases, the performance requirements for
분산이 계속 지역적으로 남을 필요는 없고; 적어도 일 실시예에서; 로직은 예를 들어, 하나 이상의 원거리에 위치된 서버들에 분산될 수 있다. 호스트 디바이스(108)의 구조를 위한 모듈 설계는 로직의 편리한 분산을 위해 그 자신을 제공할 수 있고, 호스트 디바이스(108)로부터 오프로드되는 로직 프로세스들의 유형은 기능 또는 프로세스의 하나의 특정한 유형일 필요는 없다. 적어도 일 실시예에서, 예를 들어, 로직의 분산은 컴퓨터 및 메모리 요구에 따라 우선순위화될 수 있고, 따라서 그러한 대부분의 부담이 큰 호스트 디바이스(108)의 자원들은 다른 곳에 먼저 할당되어야 한다.The variance does not need to remain local; In at least one embodiment; The logic may be distributed, for example, to one or more remotely located servers. The module design for the structure of the
컨트롤러들(101D 내지 101H)과 및/또는 컨트롤러들 간 통신을 위해 채용되는 무선 인터페이스가 사용자(109)의 제어 하의 에이전트들(104A 내지 104F)에 연결하는데 사용되는 인터페이스와 동일한 필요는 없다. 예를 들어, 호스트 디바이스(108)가 와이-파이(Wi-Fi)를 통해 컨트롤러들(101D 내지 101H)과 통신하는 한편, 호스트 디바이스(108)가 블루투스(Bluetooth)를 통해 에이전트들(104A 내지 104F)과 통신하는 것이 가능하다. 그러한 경우, 호스트 디바이스(108)는 고-전력 프로토콜(와이-파이와 같은) 및 저-전력 프로토콜(블루투스와 같은) 사이의 브릿지로서 역할할 수 있다. 그러한 접근의 이점은 호스트 디바이스(108)를 통해 사용자들(109)에 의해 제어되거나 호스트 디바이스(108)에 의해 직접 제어되는 차량들(104)(AI 제어 하의 차량들(104J)의 경우에서)이 제한된 예비 전력을 갖는 인스턴스들에서 인식될 수 있다.The wireless interface employed for communication between the
특정한 블루투스 저 에너지(BTLE 또는 BLE) 또는 유사한 유능한 무선 프로토콜에서, 블루투스의 사용에 의해 부여되는 다른 혜택은 에이전트들(104)이 유사하게 이네이블된 BTLE/무선 디바이스들과 통신하기 위해 무선 프로토콜을 사용할 수 있다는 것이다. 일 실시예에서, 예를 들어, 특정한 차량(104) 또는 능동 스마트 액세서리(105)의 제어를 취하기 원하는 사용자(109)는 원하는 차량(104)에 근접하여 의도된 컨트롤러(101)(예컨대, BTLE-장착 스마트 폰)를 가져올 수 있다. 다른 BTLE-가능 디바이스에 대한 근접 또는 상대 거리를 결정하는 BTLE 역량의 영향력을 발휘하여, 사용자(109)는 거리의 임계 범위 내에 두 개의 BTLE-장착 디바이스들을 가져올 수 있다. 적어도 일 실시예에서, 이것은 사용자(109)에게 플레이를 위한 선택 차량(104)의 옵션을 제시하면서, 스마트폰(예컨대, 101F) 및 차량(104) 사이의 데이터 교환을 유도할 수 있다. 선택은 그 후 차량(104) 및 사용자(109)의 스마트폰(101) 사이의 한 쌍을 표시하여 호스트 디바이스(108)에 전달되며, 이제 차량(104)의 제어 디바이스로서 지정된다.In certain Bluetooth low energy (BTLE or BLE) or similar capable wireless protocols, another benefit imposed by the use of Bluetooth is that
다양한 실시예들에서, BTLE 데이터는 차량들(104) 사이에서 교환하고/하거나 유사하게 무선-이네이블된 에이전트들이 다른 방법들로 사용될 수 있다. 예를 들어, 사용자들 또는 관측자들은 게임 플레이, 전체 수명 사용, 및/또는 이력 달성들에 관한 에이전트(104)의 상황에 대한 정보를 수신할 수 있고/있거나, 그들은 진단들을 수행할 수 있거나 장치를 커스터마이징할 수 있다.In various embodiments, BTLE data may be exchanged between
상기 설명된 바와 같이, 컨트롤러들(101D 내지 101H)은 임의의 적합한 디바이스들을 사용하여 구현될 수 있다. 다시, 무선 게임패드들 또는 조이스틱들과 같은, 덜 복잡한 컨트롤러들(101J, 101K)이 사용될 수 있다. 호스트 디바이스(108)와의 직접 통신을 지원하는 무선 통신 모듈이 장착되지 않은 게임패드 또는 조이스틱(101J, 101K)이 사용되는 인스턴스들에서, 호스트 디바이스(108)에의 연결은 게임 콘솔(101B) 또는 다른 중개자를 통해, 또는 호스트 디바이스(108) 상의 적절한 포트에 플러깅하는 동글(dongle)(미도시)의 사용을 통해 달성될 수 있다. 그러한 동글은 컨트롤러(101)에 무선으로 연결하고 그것이 플러깅되는 포트를 통해 통신들을 전달한다. 동글의 대안적인 실시예들은 컨트롤러(101)와 호환되는 무선 프로토콜 및 호스트 디바이스(108)와 호환되는 무선 프로토콜 사이의 브릿지를 구현하는 장치들을 포함할 수 있다.As described above, the
사용자들(109)의 명령들을 호스트 디바이스(108)를 통해 차량들(104B 내지 104F)로 전달할 뿐 아니라, 컨트롤러들(101D 내지 101H)은 또한 게임의 현재 상태를 반영하는 호스트 디바이스(108)로부터의 업데이트들을 수신할 수 있다. 적어도 일 실시예에서, 몇몇 또는 모든 컨트롤러들(101D 내지 101H)에는 그러한 수신된 상태 정보에 기초하여 플레이 경험을 향상할 수 있기 위해, 하나 이상의 출력 디바이스들(디스플레이, 스피커, 햅틱 출력 메커니즘들, 및/또는 기타와 같은)이 장착될 수 있다. 그러한 향상들은 현실 감각을 증가시키거나 그외 사용자(109)에게 보이지 않는 세부사항들을 제공하기 위해 게임 트랙 상의 동작을 표시하고/하거나 그러한 동작을 증가시키는 예를 들어, 렌더링들, 햅틱 출력(예컨대, 진동) 및/또는 오디오를 포함할 수 있다.In addition to communicating the commands of the users 109 to the
적어도 일 실시예에서, 몇몇 또는 모든 컨트롤러들(101D 내지 101H)을 통해 사용자들(109)에게 제시되는 시각, 햅틱, 및/또는 오디오 정보는 각각의 디바이스에 대해 특유할 수 있다. 다양한 에이전트들(104)은 임의의 주어진 시간에서 상이한 상태들에 있을 수 있고(예를 들어, 위치, 속도, 상황, 동작, 및 기타에 관하여); 또한, 단일 에이전트(104)를 제어하는 다수의 사용자들(109)의 경우에서, 사용자 역할들 또는 제어는 상이할 수 있다. 그러므로, 각각의 사용자(109)에 제시되는 다양한 큐들(cues) 및 데이터는 에이전트(104)의 현재 상태 및 사용자(109)의 특정한 역할에 맞춰질 수 있다. 예를 들어, 적어도 일 실시예에서, 레이싱 게임은 사용자(109)에게 차량-특정 데이터를 디스플레이하면서 차량(104)의 관점으로 레이싱 코스의 렌더링들을 제시할 수 있다. 하나보다 많은 사용자(109)가 하나의 사용자(109)가 운전자의 역할을 취하는 한편 무기를 작동하는 무기가 장착되는 차량과 같은, 단일 에이전트(104)의 제어를 공유할 수 있는 실시예에서, 컨트롤러들(101)에 송신되는 다양한 형태들의 정보가 상기 에이전트(104)와 연관되는 각각의 사용자(109)에 대한 하나 이상의 측면들에서 다를 수 있다는 것이 적절할 수 있다.In at least one embodiment, the visual, haptic, and / or audio information presented to the users 109 through some or all of the
다양한 실시예들에서, 컨트롤러들(101D 내지 101H)의 사용자들은 컨트롤러들(101D 내지 101H)이 호스트 디바이스(108)와 직접(블루투스와 같은 무선 프로토콜을 통해) 통신하도록, 물리적으로 존재할 수 있다. 대안적으로, 컨트롤러들(101D 내지 101H)의 사용자들은 원거리에 위치되고 호스트 네트워크(네트워크(107)와 같은)를 통해 연결될 수 있다. 컨트롤러들(101D 내지 101H)은 게임 상황에 관해 다시 호스트 디바이스(108)로부터 보고되는 정보에 의존할 수 있다.In various embodiments, users of
적어도 일 실시예에서, 가상 플레이 환경 및 물리적 플레이 환경의 상태들 간 단단한 결합 및 동등성 유지는 사용자들(109)이 원거리에 위치된 트랙(601) 상의 차량들(104)을 제어하는 것을 가능하게 한다. 그러한 아키텍처는 게임의 가상 표현에 대한 의존을 통해 참여하기 위한 지역적으로 존재하지 않는 사용자들을 허용한다. 적어도 일 실시예에서, 원격 사용자들(109)은 지역 사용자들(109)이 그렇듯 그들의 차량들(104)에 대해 같은 정도의 제어를 가질 수 있고, 그들은 지역 사용자들(109)의 것과 기능적으로 동일한 이벤트들의 뷰를 가질 수 있다.In at least one embodiment, maintaining tight coupling and equality between states of the virtual play environment and the physical play environment enables users 109 to control
적어도 일 실시예에서, 관중들은 외부 네트워크 연결을 활용함으로써 원격 위치에서 게임 이벤트들을 참관할 수 있다. 도 1의 예에서, 관중, 또는 관측자(110)는 호스트 디바이스(108)와 셀룰러/인터넷 연결(107)을 통해 통신하는 태블릿(103)을 통해 게임 이벤트들을 참관한다. 물리적 공간에서 발생하는 동작이 가상 환경 내에 실시간으로 반영되기 때문에, 태블릿(103)(또는 게임플레이 활동을 디스플레이하는데 사용되는 임의의 다른 디바이스)은 게임 이벤트들이 물리적 공간에서 일어남에 따라, 리치 렌더링들(rich renderings) 및 사용자들(109), 상황 및 가능한 흥미있는 다른 세부사항들에 관한 추가적인 정보를 관측자(110)에게 제공할 수 있다.In at least one embodiment, the crowd can view game events at a remote location by utilizing an external network connection. In the example of FIG. 1, the spectator, or
적어도 일 실시예에서, 원격 사용자(109)는(또는 지역 사용자도) 그 또는 그녀가 물리적 에이전트(104)를 제어하기 위해 사용 중인 컨트롤러(101)로부터 독립된 게임을 디스플레이하기 위한 보조 디바이스(미도시)를 추가적으로 사용할 수 있다. 예를 들어, 원격 사용자의 컨트롤러(101)가 작은 스크린을 갖는다면, 제 2 스크린으로서 사용하기 위해 그러한 보조 디바이스를 갖고, 그에 따라 보다 완전한 및 실감형 게임 경험을 제공하는 것이 유용할 수 있다. 예를 들어, 사용자-특정 정보는 하나의 디스플레이(컨트롤러(101) 상의 디스플레이와 같은) 상에 디스플레이될 수 있는 한편, 게임플레이의 시각화는 보조 디스플레이 상에 제시될 수 있다. 모니터로서 독립된 디바이스 또는 디바이스들을 사용하는 것은 가능성 있는 디스플레이 제한들을 완화하고, 콘솔 게이머들이 독립된 스크린상에서 보는 동작을 제어하기 위해 핸드-헬드 게임패드를 사용하는 것에 익숙한 콘솔 게이머들에게 보다 친숙한 경험을 제공할 수 있다.In at least one embodiment, the remote user 109 (or a local user) has an auxiliary device (not shown) for displaying a game independent of the controller 101 that he or she is using to control the
본 명세서에서 논의되는 예들이 가상 공간에서의 게임플레이의 렌더링 또는 다른 표현에 대한 의존을 설명하지만, 복제된 물리적 트랙 상에서 실시간으로 물리적 공간에서의 게임플레이를 재생산하는 것이 전적으로 가능하다. 동등성이 가상 및 물리 사이에 유지되기 때문에, 원격 사용자(109)는 가상 모델의 상태를 반영하는 것을 통해 게임플레이를 호스팅하는 물리적 트랙(601)을 충분히 매칭하는 물리적 트랙 상에 플레이를 직접 재현할 수 있다. 복제된 물리적 트랙에 대한 컨트롤러 및 호스트 디바이스(108) 사이의 무선 통신은 복제된 트랙 상의 차량들이 동작을 복제하는(또는 적어도 근사화하는) 방식으로 이동 및 행동하게 하는데 사용될 수 있다.It is entirely possible to reproduce the game play in physical space in real time on the duplicated physical track, although the examples discussed herein illustrate the dependence on rendering or other representations of game play in virtual space. Since equivalence is maintained between virtual and physical, the remote user 109 can directly reproduce the play on the physical track that sufficiently matches the
호스트 디바이스(108) 및/또는 다른 구성요소들은 추가 기능을 제공할 수 있다. 예를 들어, 하나 이상의 컨트롤러(들)(101)는 게임에서 발생하는 이벤트들과 관련된 추가 정보를 제공할 수 있고/있거나, 추가적인 게임플레이에 대한 직접 플랫폼으로 역할할 수 있다. 그러한 디바이스는 예를 들어:
● 터치, 버튼 제어, 기본 방향들 또는 디바이스 기울기/가속에 관한 배향, 및/또는 임의의 다른 적합한 사용자 입력에 반응할 수 있는 사용자 인터페이스;A user interface capable of responding to touch, button control, orientation with respect to basic directions or device tilt / acceleration, and / or any other suitable user input;
● 디스플레이 스크린;● display screen;
● 스피커들 및 마이크로폰과 같은 하나 이상의 오디오 구성요소들을 포함하여, 원하는 정도의 상호작용을 제공하기 위한 임의의 적합한 구성요소들을 가질 수 있다.• Include one or more audio components such as speakers and microphone, and may have any suitable components for providing a desired degree of interaction.
해당 기술분야의 통상의 기술자는 상기 리스트가 대표적인 것이고 완전하지 않다는 것을 인식할 것이다.Those of ordinary skill in the art will recognize that the list is representative and not exhaustive.
그러한 향상들 중 하나의 세트는 비-동작가능한 정보로 총칭될 수 있다. 예를 들어, 이들은 오디오, 비디오, 및/또는 햅틱 출력을, 별도로 또는 임의의 적합한 조합으로 포함한다. 출력의 특정 유형들은 예를 들어, 사운드 효과들, 음악, 진동들, 이미지들, 애니메이션들, 필름 클립들, 및/또는 기타를 포함할 수 있다. 이들 중 임의의 유형은 현실 감각을 개선하기 위해 또는 그외 게임 경험의 감각 측면들을 풍부하게 하기 위해, 단독으로 또는 임의의 적합한 조합으로 사용될 수 있다. 대안적으로, 이들 향상들은 차 성능 데이터, 시간에 따른 레이서 랭킹들, 경쟁 순위표, 및/또는 그외 다른 데이터와 같은 게임 및/또는 그것의 사용자들(109)의 측면들에 관한 요약 또는 추가 정보를 제공하는 데이터의 형태를 취할 수 있다.One set of such enhancements may be generically referred to as non-operable information. For example, they include audio, video, and / or haptic output, separately or in any suitable combination. Certain types of output may include, for example, sound effects, music, vibrations, images, animations, film clips, and / or the like. Any of these types may be used alone or in any suitable combination to improve the sense of reality or enrich the sense aspects of the gaming experience. Alternatively, these enhancements may include summary or additional information about aspects of the game and / or its users 109 such as differential performance data, racer rankings over time, competition leaderboards, and / or other data And can take the form of data to be provided.
적어도 일 실시예에서, 스마트폰들 및 태블릿들과 같은 고도의 상호작용 게임 컨트롤러들(101)은 이들 디바이스들이 게임 동안 또는 게임플레이 이외인 것과 관계없이, 그것 내에서 작동하는 게임 또는 에이전트들의 측면들에 대한 수정들을 허용하고/하거나, 물리적 환경에서 발생하는 직접 동작 이외의 플레이 시나리오들을 생성할 수 있는 제어 및 연결 역량들의 영향력을 발휘함으로써 게임 경험에 대한 개선을 제공하는데 사용될 수 있다. 예를 들어, 레이싱 게임의 맥락에서, 차량(104)은 물리적 레이스트랙 상의 급유소(pit stop)에 도착할 수 있고; 게임플레이는 그 후 사용자(109)가 종래 비디오 게임 형식과 보다 유사한 전적으로 디지털 방식의 맥락에서 피트 크루(pit crew)의 멤버로서 차량(104)을 정비하는 과제에 직면한 경우 컨트롤러(101)로 전환될 수 있다. 다른 예로서, 차량(104)은 플레이 세트 상에 위치되는 빌딩과 같은, 물리적 공간에서의 특정한 지점으로 구동할 수 있고, 이 지점에서 게임플레이는 차량(104) 운전자의 또는 팀의 행위들이 디지털 방식으로 렌더링된 환경에서의 빌딩 내부에서 계속되는 경우 게임 컨트롤러 상의 디스플레이로 전환된다. 그러한 예들은 게임플레이가 물리적 플레이 환경 및 디지털 플레이 환경 사이를 균일하게 전환할 수 있는 시나리오들을 설명한다. 디지털 환경은 컨트롤러(101) 및/또는 호스트 디바이스(108)와 통신하는 독립된 디스플레이 콘솔(미도시)에 의해 구현되는 컨트롤러(101) 및/또는 고도의 상호작용 컨트롤러(101)에 의해 지원될 수 있다. 그러한 시나리오들에서, 전체 시스템에 대한 전통적인 비디오 게임의 식으로 순전한 디지털 공간에서 발생하는 게임디스플레이의 부분들 또는 구획들의 통합은 경험 중 이들 부분들이 반드시 물리적 경기장으로부터 연결해제되거나 또는 그것들에 영향을 주지 않는 것을 의미하지 않는다. 물리적 차량(104)이 급유소와 같은, 플레이의 디지털 부분에 대한 접근을 제공하는 위치로 구동하게 하는 사용자(109)의 예를 고려하면, 사용자(109)는 더 이상 능동적으로 물리적 차량(104)을 제어할 수 없으나, 디지털 공간은 차량(104)을 장착 또는 수리할 기회들을 제공하고 그렇게 함으로써 사용자(109)가 그것의 제어를 재개하면 차량(104)의 성능에 영향을 미칠 수 있다. 다른 예들은 레이스 코스 상의 도개교와 같은 물리적 액세서리들의 제어를 제공하는 순전한 디지털 환경으로 유사하게 들어가는 사용자(109)를 포함할 수 있고, 이는 사용자들(109)이 순전한 디지털 공간 내로부터 물리적 환경에서의 차량들에 대한 트랙 섹션(602)을 개폐하는 것을 가능하게 한다. 이와 유사하게, 그러한 제어는 또한 물리적 플레이 환경에서 플레이되는 안드로이드- 또는 iOS-기반 디바이스에 의해 호스팅되는 것들과 같은, 가상 액세서리들(106)에 대해 제공될 수 있고, 이는 물리적 에이전트들(104)과 상호작용하고/하거나 그들의 행동에 영향을 미친다.In at least one embodiment, highly interactive game controllers 101, such as smartphones and tablets, are capable of playing games or agents side by side in games or agents that operate within it, And / or to provide improvements to the game experience by exerting the influence of control and connection capabilities that can generate play scenarios other than the direct actions that occur in the physical environment. For example, in the context of a racing game, the
본 발명이 경쟁하는 레이싱 게임으로서 구현되는 적어도 일 실시예에서, 컨트롤러(101)는 차량(104)의 속도 및 조종장치를 조작하기 위한 기능을 제공할 수 있다. 그러나, 컨트롤러(101)로서 스마트폰 또는 유사하게 유능한 디바이스의 역량을 보다 더 활용하는 것은 보다 폭넓은 게임 제어들을 가능하게 할 수 있다. 예를 들어, "데스 레이스(death race)" 시나리오에서, 차량들(104)은 경쟁하는 차량들(104)로 향해질 수 있는 무기들이 장착될 수 있다. 그러한 실시예에서, 고도의 상호작용 컨트롤러(101)는 기본 차량 속도 및 조종장치 이상의 기능들을 지원하는데 사용될 수 있다. 예를 들어 구동가능한 표면(601) 상에서 레이싱하는 모든 차량들(104)의 능동 표현 중에서 타깃 차량(104)을 선택하는 것 또는 차량(104) 상에 장착되는 무기들을 조준하는 것과 같은 부가적인 기능들이 제공될 수 있다.In at least one embodiment in which the present invention is implemented as a competing racing game, the controller 101 may provide a function for operating the speed of the
상기 언급된 바와 같이, 적어도 일 실시예에서, 다수의 사용자들(109)은 게임에서 단일 에이전트(104)를 제어할 수 있다. 예를 들어, 레이싱 게임 실시예에서, 세 사용자들(109)은 한 사용자(109)가 조종장치 및 속도 제어를 제공 중이고, 다른 사용자(109)가 전방 대포를 조준 및 발사하며, 세 번째 사용자(109)가 측방 대포를 작동하는 단일 차량(104)을 제어할 수 있다. 그러한 시나리오에서, 컨트롤러들(101)은 각각의 사용자(109)에 의해 충족되는 역할에 맞춰지는 정보를 제공한다. 예를 들어, 차량(104)을 구동하는 사용자(109)는 전형적인 레이싱 게임의 그것들과 유사한 디스플레이 정보 및 제어 기법들을 발견할 수 있는 한편, 대포들을 작동하는 사용자들(109)은 디스플레이된 관점이 차량(104) 상의 위치로부터인 것이고, 물리적 플레이 환경에서의 그들의 실제 위치들에 관한 궤도들 상의 및 위치들의 경쟁하는 차량들(104) 및 트랙 요소들의 가상 표현들을 포함하는 물리적 플레이 환경의 렌더링된 뷰를 볼 수 있다.As mentioned above, in at least one embodiment, multiple users 109 may control a
이러한 예에서 무기들을 작동하는 사용자들(109)에 대해, 스마트 디바이스가 제공하는 결과적엔 제어 및 상호작용 경험은 1인칭 슈팅 게임과 유사할 수 있다.For users 109 operating weapons in this example, the resulting control and interaction experience provided by the smart device may be similar to a first person shooter game.
대포들은 그들 자신의 물리적 차량들(104) 상의 임의의 물리적 구조 또는 요소에 의해 표현될 필요는 없으며(그러나 표현될 수 있으며); 오히려, 그것들은 그러한 물리적 구조를 가지는 것 대신(또는 외에) 가상 환경에서 표현될 수 있다. 적어도 일 실시예에서, 대포가 발포될 때, 그러한 발포의 렌더링은 가상 환경에 제시될 수 있고, 선택적으로 물리적 차량들(104)은 그러한 무기들 활성화의 몇몇 시각적 및/또는 청각적 표시들(섬광등들, 물리적 대포 총열들의 이동, 사운드들, 및/또는 기타)을 제공할 수 있다. 발포의 타겟(예컨대, 다른 차량(104))은 예를 들어 그것의 코스를 변경하는 것, 뒤집는 것, 불능으로 되는 것, 및/또는 기타에 의해, 마치 적중하는 것처럼 반응할 수 있으며; 시각적인 피드백은 예를 들어 그것을 마치 그것이 타오르거나 또는 그외 불능인 것처럼 보이게 만드는 타깃 방출 광들에 의해, 가상 및/또는 물리적 환경들에서 제공될 수 있다. LED들 또는 다른 시각적 및/또는 청각적 구성요소들은 기계 대포의 소음을 재현하는 사운드들 및 포섬광을 제공하기 위해 차량들(104) 상에 설치될 수 있으며, 그러한 출력은 가상 공간에서의 대응하는 대포의 발사와 동시에 발생하게 할 수 있다.The cannons need not (but can be) represented by any physical structure or element on their own
적어도 일 실시예에서, 차량들(104)은 물리적 공간에서의 (가장된) 손상을 보이도록 설계될 수 있다. 예를 들어, LED는 차량(104)이 손상을 입고 있는 것을 표시할 수 있거나, LED 배열의 색상 변화는 차량(104)의 현재 손상 상황을 표시할 수 있다. 적어도 일 실시예에서, 보다 복잡한 접근들이 무기 공격들, 충격들 또는 다른 수단을 통해서와 관계없이 차량(104)에 초래된 손상을 모사 또는 가장하는데 사용될 수 있다. 이들은 트리거될 때, 차량(104) 상에서 동작하는 충돌 또는 폭발력의 결과일 수 있는 것과 같은 운동 에너지를 부여하는 메커니즘들 또는 차량(104)으로부터 서서히 줄어드는 부분들을 포함할 수 있다. 적어도 일 실시예에서, 차량들(104)은 예를 들어 펑크 난 타이어, 손상된 조종장치 또는 엔진 구성요소들, 또는 기타를 가장하기 위해, 그것들의 행동을 변경함으로써 가장된 손상을 보인다.In at least one embodiment, the
물리적 및 가상 환경들 간 양-방향 작용Bi-directional interaction between physical and virtual environments
적어도 일 실시예에서, 본 발명의 시스템은 물리적 및 가상 환경들 간 양-방향 작용을 허용하기 위해, 낮은 레벨로 이벤트들을 조화시킴으로써 가상 및 물리적 공간에서 동시에 발생하는 게임 공간에서의 동등성을 유지한다. 이제 도 2를 참조하면, 물리적 공간 및 가상 공간 양자에서의 이벤트들 및 기능들의 그러한 통합의 예가 도시된다. 이 예에서, 모바일 에이전트들이 물리적 공간에서 경쟁하는 차량들이고; 또한 차량들에는 가상 무기들이 장착되는 레이싱 게임이 구현된다.In at least one embodiment, the system of the present invention maintains equivalence in game spaces occurring simultaneously in virtual and physical spaces by coordinating events at a lower level to allow bi-directional behavior between physical and virtual environments. Referring now to FIG. 2, an example of such integration of events and functions in both physical space and virtual space is shown. In this example, the mobile agents are vehicles competing in physical space; In addition, vehicles are equipped with a racing game equipped with virtual weapons.
도면은 물리적 이벤트들에 영향을 주는 가상 이벤트들 및 그 반대를 수반하는 일련의 이벤트들을 도시한다. 차들이 물리적 코스 상에서 레이싱하는 동안, 기지국은 실시간으로 레이스 상태의 가상 표현을 유지하며, 따라서 이동하는 차량들의 위치, 속도, 가속도, 코스 및 그외 다른 계량 특성이 물리적 세계의 변화 상태를 반영하는 메모리에서의 재현에서 계속하여 추적된다. 그러한 시나리오에서, 차량들의 가상 표현들은 물리적 차량들 상에 존재하지 않는 많은 기능들 또는 특성들을 가질 수 있다. 하나의 예는 사용자(109)가 가상 공간에서의 다른 차량들로 발사하는데 사용할 수 있는 대포이나, 이는 물리적 공간에는 존재하지 않는다. 가상 상태들 및 물리적 상태들이 단단히 결합되기 때문에, 하나에서 발생하는 이벤트들은 다른 하나의 상태에 영향을 미칠 수 있다.The figure shows a series of events involving virtual events that affect physical events and vice versa. While the cars are racing on a physical course, the base station maintains a virtual representation of the race condition in real time, so that the position, velocity, acceleration, course and other metering characteristics of the moving vehicles are stored in memory In the present invention. In such a scenario, the virtual representations of the vehicles may have many functions or characteristics not present on the physical vehicles. One example is a cannon that the user 109 can use to fire to other vehicles in virtual space, but it does not exist in the physical space. Since virtual states and physical states are tightly coupled, events occurring in one can affect the other state.
도 2의 예에서 묘사되는 일련의 이벤트들은 다음과 같이 일어난다. 차량(104K)은 차량 표현(204K)에 의해 가상 환경(202)에 표현된다. 가상 환경(202)에서, 차량 표현(204K)은 차량 표현(204L)으로 가상의 대포를 발사하고, 이는 물리적 환경(201)에서의 차량(104L)을 표현한다. 물리적 환경(201)에서의 차량(104K)이 발사체를 발포하는 실제 대포를 갖지 않을 수 있으나, 게임을 작동하는 호스트 디바이스(108)는 차량 표현들(204K, 204L)의 상대 위치들이 주어지면, 대포의 배향뿐만 아니라, 약제들이 도면의 위치(2)에서의 차량 표현(204L)에 대한 공격을 산출할 수 있다는 것을 결정할 수 있다. 호스트 디바이스(108)는 또한 공격 및 충돌 시 부여되는 결과적인 가상 에너지가 가상 환경(202)에서 그것의 코스로부터 타깃 차량 표현(204L)을 밀어낸다는 것을 결정한다.The series of events depicted in the example of FIG. 2 occurs as follows.
상기 설명된 바와 같이, 적어도 일 실시예에서 시스템은 가상 및 물리적 환경들 간 동등성을 유지한다. 따라서, 차량 표현(204L) 상의 상기-설명된 무기 공격에 반응하여, 호스트 디바이스(108)의 제어 알고리즘들은 물리적 환경(201)에서의 차량 표현(204L)의 가상 이동을 재현한다. 따라서, 물리적 차량(104L)은 가상 환경(202)에서의 차량 표현(204L)의 이동을 모방하는 방식으로 이동하기 위해 인위적으로 추진된다. 도 2의 예에서, 위치(2)의 가상 무기에 의해 피격된, 물리적 차량(104L)은 물리적 공간에서의 그것의 현재 코스로부터 인위적으로 편향된다. 이것은 위치(3)의 다른 차량(104M)과 물리적 공간에서의 충돌을 야기한다.As discussed above, in at least one embodiment, the system maintains equivalence between virtual and physical environments. Thus, in response to the above-described weapon attacks on the
위치(3)에서의 물리적 차량들(104L 및 104M) 간 충돌은 위치(4)에 도시된 바와 같이 그것의 원래 코스 벡터에서 차량(104M)을 물리적으로 밀어내는 실제 에너지의 전달을 수반한다. 물리적 환경(201)에서 코스의 이러한 변화를 검출 시, 호스트 디바이스(108)는 가상 환경(202)을 차량 표현들(204L 및 204M)이 물리적 공간(201)에서의 차량들(104L 및 104M)의 움직임을 계속하여 반영하도록, 상응하여 조정되게 한다. 따라서, 차량 표현(204M)은 동일한 방식으로 코스를 이탈하게 만들어진다.The collision between
이러한 방식으로, 교차하는 상태들에서의 일련의 이벤트들이 일어나고, 여기서 가상 환경(202)에서의 발생은 물리적 환경(201)에서의 결과들을 가지며, 물리적 환경(201)에서의 결과적인 효과들은 결과적으로 가상 환경(202)에서의 이벤트들의 순서 또는 역학 관계에 영향을 준다. 상기-설명된 시나리오는 본 발명의 시스템에서의 물리적 및 가상 환경들(201, 202)의 단단히 결합된 특성을 예시한다. 가상 구성요소들을 물리적 구성요소들과 단지 연결하는 것 대신, 본 발명의 다양한 실시예들은 정확히 공생이고 양-방향이며, 따라서 하나의 상태(환경)에서 발생하는 이벤트들 및 변화들은 다른 상태에서 일어나는 이벤트들 및 변화들에 영향을 줄 수 있다.In this way, a series of events in the crossing states occurs, where the occurrences in the
적어도 일 실시예에서, 본 발명의 시스템은 상태들에 걸쳐 상호 영향의 정확한 균형을 유지할 필요는 없으나, 또한 선호되는 지배적인 상태를 유지하도록 설정될 수 있다. 예를 들어, 적어도 일 실시예에서, 시스템은 가상 환경(202)이 물리적 환경(201)을 지배하고, 물리적 환경(201)이 가상 환경(202)에서 발생하는 이벤트들을 단순히 반영하도록 구성될 수 있고; 적어도 일 실시예에서, 반대 구성이 구현될 수 있다. 임의의 적절한 우선순위 기법이 물리적 및 가상 환경(201, 202) 사이에서 확립될 수 있다.In at least one embodiment, the system of the present invention need not maintain an accurate balance of mutual influences across states, but may also be set to maintain a preferred dominant state. For example, in at least one embodiment, the system may be configured such that the
적어도 일 실시예에서, 본 발명의 시스템은 외부 서버 네트워크들(미도시)에 연결하는 역량을 가지는 호스트 디바이스(108) 및/또는 제어기(101)의 사용을 통한 이점들을 추가로 제공하고, 따라서 개선된 사용자 경험을 제공한다. 적어도 일 실시예에서, 제어기(들)(101)를 통해 하나 이상의 에이전트들(104)을 제어하는 사용자(109)는 게임에서 사용하기 위해 가상 제품들을 다운로드할 수 있고/있거나, 에이전트들 상에서 활성인 LED들에 대한 광 패턴 시퀀스들 또는 사운드 효과들과 같은 디지털 컨텐츠를 다운로드할 수 있다. 임의의 적합한 가상 액세서리들 또는 디지털 컨텐츠는 애플리케이션들 및/또는 자원들의 다운로딩과 같은 임의의 적합한 e-커머스 메커니즘을 통해 이용가능하게 만들어질 수 있다. 그러한 컨텐츠는 사용자들이 그들의 경험들에 맞추거나 또는 개선하는 것을 가능하게 하는 다른 수단을 통한 설치 또는 원격 서버들을 통한 다운로드를 위해 이용가능하게 만들어질 수 있다. 적어도 일 실시예에서, 게임 경험의 다양한 측면들 중 임의의 측면은 예를 들어, AI-제어 차량들을 위한 개인들, 새로운 해설자들, 기존의 레이스 코스들에 대한 새로운 시나리오들, 가상 공간에서 발생하는 이벤트들을 렌더링하기 위한 컨텐츠 기법들, 및/또는 차량들의 커스터마이제이션 및 향상들을 포함하여, 그러한 방법들을 통해 수정되거나 증가될 수 있다.In at least one embodiment, the system of the present invention further provides benefits through the use of the
플레이어 컨트롤러들(101) 및 에이전트들(104)과의 통신 외에, 적어도 일 실시예에서 호스트 디바이스(108)는 게임의 작동 프레임워크와 사용자들(109)로부터의 명령들을 조정하고, 또한 물리적 에이전트들(104)을 수반하는 물리적 환경(201)에서 발생하는 이벤트들과 가상 환경(202)에서 발생하는 이벤트들을 조정한다.In addition to communicating with player controllers 101 and
이제 도 3을 참조하면, 적어도 일 실시예에 따라 호스트 디바이스(108)(기지국)의 역할의 몇몇 측면들을 도시하고, 차량들(104)을 제어하는(컨트롤러들(101)을 사용하여) 사용자들(109) 및 그들 자신의 차량들(104) 사이에 구현될 수 있는 구성요소들 및 구조들을 예시하는, 블록도가 도시된다. 도 3은 또한 적어도 일 실시예에서, 사용자들(109)이 다른 사용자들(109)을 이용하는, 또는 호스트 디바이스(108) 상에서 구동하는 인공 지능(AI; artificial intelligence) 플래너들(305A, 305B)에 의해 보조되는, 또는 양자의 차량(104)을 제어하도록 조정할 수 있다. 도면에 도시된 예에서, 네 명의 사용자들(109M 내지 109Q)은 네 개의 에이전트들(세 개의 차량들(104M, 104N, 104P) 및 하나의 스마트 액세서리(105))을 제어하기 위해 컨트롤러들(101M 내지 101Q)을 사용한다. 두 AI 플래너들(305A, 305B)이 또한 제공된다. 컨트롤러들(101) 및 에이전트들(104M, 104N, 104P, 105) 사이에는 호스트 디바이스(108)(기지국)의 프레임워크 내에서 작동하는 다수의 구조들이 있다. 화살표들은 정보 흐름의 방향을 표시한다.3, there is shown some aspects of the role of the host device 108 (base station) in accordance with at least one embodiment, and the user 104 (using the controllers 101) controlling the
예시적인 목적들을 위해, 및 명확성을 위해, 도 3은 반드시 모든 구조들 또는 정보의 완전한 흐름을 설명할 필요가 있는 것이 아니라, 단지 차량 제어에 관련된 정보를 강조한다. 예를 들어, 정보는 컨트롤러들(101)로부터 필터들(301)에 한 방향으로 이동하는 것으로서 도시된다. 해당 기술분야의 통상의 기술자는 본 발명과 관련되어 사용되는 제어 메커니즘들이 또한 호스트 디바이스(108)로부터 예를 들어, 레이스 성능 보고, 사운드들, 이미지들, 애니메이션들, 및/또는 다른 비-제어 정보에 관한 다양한 다른 구성요소들에 송신되는 데이터를 포함하여, 도 3에 도시되지 않은 추가 데이터의 전달을 포함할 수 있다는 것을 인식할 것이다.For illustrative purposes, and for clarity, FIG. 3 does not necessarily illustrate the complete flow of all structures or information, but merely emphasizes information related to vehicle control. For example, information is shown as moving from the controllers 101 to the
적어도 일 실시예에서, 사용자(109)로부터 발생하는 차량 명령들이 컨트롤러(101)를 통해 필터(301)로 송신되고; 필터(301)는 사용자(109)의 제어 또는 게임의 다른 측면 하의 차량(104)에 관한 현재 상황들에 따라 컨트롤러(101)로부터 수신되는 지시들을 개량할 수 있다. 예를 들어, 적어도 일 실시예에서, 속도 필터(301)가 구현될 수 있다. 보통 상황들 하에서, 차량(104)은 그것이 이동할 수 있는 속도들의 허용되는 범위를 가질 수 있다. 속도 필터(301)는 예를 들어 차량(104)이 게임플레이의 일부로서 그것에 (가상으로) 손상을 입었다면, 이 범위의 상단을 제거함으로써 이 범위를 감소시킬 수 있다. 필터들(301)의 다른 유형들은 또한 각각의 차량(104)이 그것의 성능의 상이한 양상들에 영향을 주는 다수의 상이한 필터들(104)을 가질 수 있고; 필터들(104)은 속도, 차선 변화율, 및/또는 장비 사용(예컨대, 내장 무기의 탄약), 및/또는 기타와 같은 파라미터들을 제어하거나 수정할 수 있도록, 제공될 수 있다.In at least one embodiment, vehicle commands originating from the user 109 are transmitted to the
적어도 일 실시예에서, 특정 에이전트들(104M, 104N, 104P, 105)과 관련된 입력을 직접 송신할 수 있는 효과 시스템(302)이 제공된다. 효과 시스템(302)은 차량 행동에 작용하는 폭넓은 역량을 가지며, 전역적 행위자로서 작동한다. 그것은 몇몇 방법들 중 임의의 방법으로 그렇게 할 수 있다. 다양한 실시예들에서, 효과 시스템(302)은 서로 차량(104)의 상호작용에 대한 가능성 있는 결과들, 뿐만 아니라 하나 이상의 차량들(104)의 성능에 영향을 미칠 수 있는 외부 인자들을 가장한다.In at least one embodiment, an
적어도 일 실시예에서, 규칙 세트들 및 시나리오들을 포함하고, 일반적으로 플레이를 인도하는, 게임 엔진(303)이 제공된다. 게임 엔진(303)은 보통 트리거 효과들의, 효과 시스템(302)에 단단하게 결합된다. 또한, 효과 시스템(302)은 그것의 부분 상에서 동작들을 개시한 및 게임 엔진(303)에 의해 결정되는 바와 같은 이벤트들의 진행에 대한 결과를 야기할 수 있는 이벤트들을 게임 엔진(303)에 알릴 수 있다. 명확성의 목적들을 위해, 도 3은 사용자들(109)을 효과 시스템(302)에 연결하는 라인들을 생략하지만; 그러나, 해당 기술분야의 통상의 기술자는 사용자들(109)에 의해 취해지는 동작들이 직접 또는 간접적으로 효과 시스템(302)을 트리거할 수 있다는 것을 인식할 것이다.In at least one embodiment, a
수정된 레이싱 시나리오에서 사용자(109)에 의해 직접 취해지는 동작의 일 예는 다음과 같다:적어도 일 실시예에서, 사용자(109)는 그 또는 그녀의 차량(104) 뒤에 가상 유막을 배치할 수 있다(보다 정확하게, 유막이 물리적 공간에 존재하지 않기 때문에, 그것은 가상 환경(202)에서의 차량 표현(204) 뒤에 실제로 배치된다). 가상 유막을 피하는 트레일링 차량(trailing vehicle)(104)은 제어의 (일시적일 수 있는) 손실을 경험할 수 있고; 이것은 예를 들어, 조종 또는 제동하기 위한 트레일링 차량(104)을 제어하는 사용자(109)의 능력을 (일시적으로) 감소 또는 제거하는 효과 시스템(302)에 의해 구현된다.An example of an action taken directly by the user 109 in a modified racing scenario is as follows: In at least one embodiment, the user 109 may place a virtual oil film behind his or her vehicle 104 (More precisely, it is actually placed behind the vehicle representation 204 in the
효과 시스템(302)에 대한 간접 트리거의 예는 다음과 같다: 적어도 일 실시예에서, 사용자(109)가 전형적인 자동 레이싱 규칙들 하에서, 게임 엔진(303)이 효과 시스템(302)에 옐로 플래그 조건들이 시행되는 것을 표시하도록, 그의 차량(104) 또는 다른 사용자(109)의 차량에 크래쉬(crash)하면, 효과 시스템(302)은 옐로 플래그 조건들의 파라미터들에 따라 속도 제한들을 개시할 수 있다. 그러한 제한들은 예를 들어, 게임 엔진(303)이 트랙이 클리어된 후 옐로우 플래그 조건들을 순차적으로 해제할 때까지, 그대로 남아있을 수 있다.An example of an indirect trigger for
적어도 일 실시예에서, 도 3에 도시된 바와 같이, 명령 정보가 필터(301)를 너머 전달되면, 중재기(304)는 차량들(104) 또는 액세서리들(105)에 관계없이, 에이전트들에 직접 지시들을 효과적으로 발행한다. 적어도 일 실시예에서, 중재기(304)는 그것이 연결되는 에이전트 또는 에이전트들(104M, 104N, 104P, 105)에의 직접 통신들을 최적화한다. 또한, 몇몇 경우들에서, 중재기(304)는 사용자 명령들을 조정 또는 변경하는데 있어서의 몇몇 필터(301)의 역할을 공유할 수 있다.3, if the command information is passed over the
예를 들어, 중재기(304)는 사용자(109)로부터 들어오는 리던던트 명령들을 감소 또는 제거하는 역할을 할 수 있다. 중재기(304)는 또한 차량(104N)에 대해 도시되는 것과 같은 상황들에서 가치가 클 수 있고, 여기서 두 사용자들(109N, 109P) 및 AI 플래너(305A)는 단일 차량(104N)을 제어하고 있다. 이것은 하나보다 많은 사용자(109)가 차량(104)을 제어하고 있는 상황의 예이다. 다른 예로서, 상기 설명된 바와 같이, 차량(104)에는 차량(104)을 제어하는 하나의 사용자(109) 및 그것의 무기들을 작동하는 제 2 사용자(109)와, 조준하고 발포하는 것을 허용하는 무기들이 장착될 수 있다. 이러한 경우, 중재기(304)는 독립된 사용자들(109)에 의해 요구되는 바와 같이 에이전트(104)에서의 동작(들)을 실행하기 위해 적절한 독립된 명령 세트들을 통합시키고 차례로 배열한다.For example,
다른 실시예에서, 사용자(109)는 AI 플래너(305)가 운전자이고 사용자(109)가 차량(104)의 무기를 작동하거나, 또는 그 반대로 되도록, AI 플래너(305)와 쌍을 이룰 수 있다. 차량(104)을 제어하는 사용자(109)를 보조하기 위해 AI 플래너(305)에 의존하는 역량은 단일 사용자(109)가 그 외 차량(104) 상의 모든 시스템들을 작동하는 역량을 가질 수 있는 상황들에서도 많은 혜택들을 제공한다. 예를 들어, 플래너(305)는 차량(104)의 속도를 제어하기 위한 사용자(109)를 그대로 두면서, 코스 상의 더 느린 상대들 주위를 스마트하게 조종하거나 조종장치를 제공하기 위해 의존될 수 있다. 플래너(305)에 대한 제어의 부분을 지정하는 하나의 이점은 그것이 보다 고령 또는 보다 숙련된 사용자들(109)에 대해 경쟁하는데 필요한 모터 기술들을 가지지 않을 수 있는 초보자들 또는 보다 젊은 경쟁자들에 의한 보다 폭넓은 참여를 가능하게 한다는 것이다. 이러한 방식으로, 플래너(305)는 차량(104)을 제어하고 있는 사용자들(109)에 도움을 제공할 수 있고, 그것은 게임 규칙들 및/또는 사용자(109) 선호에 따라 다수의 상이한 방법들로 그렇게 할 수 있다.In another embodiment, the user 109 may pair with the AI planner 305 such that the AI planner 305 is the driver and the user 109 operates the weapon of the
다른 실시예에서, 차량(104)의 조종장치 제어를 취하는 플래너(305)의 예는 플래너(305)가 사용자(109)가 조종장치의 제어를 유지하는 동안 속도를 제어하도록, 반전될 수 있다. 공동으로 제어되는 차량(104)(또는 다른 에이전트)의 보다 개선된 시나리오들에서, 사용자(109)는 오픈 코스 상에서 조종장치 및 제어 속도로 편안할 수 있으나, 복잡한 코스 상의 장애물들을 통과 또는 회피하는 것에 대해 덜 자신할 수 있으며; 따라서 시스템은 능동적 회피를 필요로 하는 상황들 또는 장애물들을 통과하는 것을 직면할 때 플래너(305)의 중재를 유도하도록 구성될 수 있다.In another embodiment, an example of a planner 305 that takes control of the
적어도 일 실시예에서, 단일 사용자(109)가 다수의 에이전트들(104)(차량들(104) 및/또는 액세서리들(105)을 포함할 수 있는)을 제어하는 것이 가능할 수 있다. 예를 들어, 사용자(109)는 일련의 다른 에이전트들이 상기 에이전트를 따르도록 구성되는 동안 하나의 에이전트(104)를 제어할 수 있다. 다른 실시예들에서, 사용자(109) 명령들은 그들이 공동으로(예컨대, 모든 변경 방향 또는 속도를 동시에) 반응하도록 다수의 에이전트들(104)에 걸쳐 복제될 수 있다. 보다 복잡한 시나리오에서, 사용자(109)는 에이전트들(104)의 그룹에 상위-레벨 명령들을 제공할 수 있다. 레이싱 게임의 경우, 예를 들어, 그러한 제어 하의 다수의 차량들(104)은 코스에서 멀어지는 다른 사용자의 차량(104)에 크래쉬하는 것과 같이, 사용자(109)의 고-레벨 목표-지향적 방향에 반응할 수 있다. 그러한 명령들에 반응하여, 에이전트들(104)은 타깃 차량을 부분적으로 또는 완전히 둘러싸기 위해 및 코스에서 멀어지는 타깃 차량을 함께 푸시하기 위해 타깃 차량(104) 주위에 그들 자신을 위치시킬 수 있다. 이들 경우들에서, 일제히 동작하는 다수의 에이전트들(104)에 의해 보조를 맞춰 또는 차례로 실행되는 동작들의 세트들이 있을 수 있다.In at least one embodiment, it may be possible for a single user 109 to control multiple agents 104 (which may include
적어도 일 실시예에서, 차량(104)의 제어가 단일 사용자(109), 단일 AI 플래너(305)에 의해 유지되는지 또는 다수의 사용자들(109) 또는 사용자들(109) 및 플래너들(305)의 조합 사이에 공동으로 보유되는지에 관계없이, 중재기(304)는 차량(104)을 위해 의도되는 독립된 및 가능성 있게 독립적인 명령들을, 그것들 중에서 선택하고/하거나 그것들을 차량(104)에 대한 그 교대로 배열하면서, 조정한다. 행동의 많은 측면들은 차량(104)을 제어하는 AI 플래너(305)에 부여될 수 있다. 예를 들어, 구동 제어 및 전략에 관한 기법들 외에, AI 플래너들(305)은 그들의 일반적인 행동에 작용하는 개인 특성들을 구현할 수 있다. 예를 들어, AI 플래너들(305)은 구동가능한 표면(601)에서 멀어지는 다른 차량들(104)에 힘을 가하는 것을 향해 기울어지는 공격적인 운전자들, 또는 대안적으로, 충돌을 회피하고 대신 다른 사용자들(109)의 회피와 관련된 코스를 찾는 것에 중점을 두는 공격적인 운전자들을 가장할 수 있다. 적어도 일 실시예에서, 그러한 AI 방식들은 구동가능한 표면(601) 상에서 발생하는 특정한 이벤트들과 공동으로 또는 의도된 특유의 배치와 조화하여, 메시지들을 예를 들어, 다른 운전자들을 도발하기 위한 다른 사용자들(109)에 개시할 수 있다.The control of the
적어도 일 실시예에서, 보조 제어에 대한 몇몇 역량은 그들 자신의 차량들(104) 상에 존재한다. 예를 들어, 호스트 디바이스(108)의 도움이 없어도, 적어도 일 실시예에서, 차량들(104)은 사용자(109)로부터의 능동적 조종장치를 요구하지 않고 커브들 및 턴들을 통해 구동가능한 표면(601) 상에서 그것들의 상대적인 측면 위치를 유지하는 역량을 가질 수 있다. 이와 유사하게, 차량들(104)은 트랙 식별(예를 들어, 트랙 구획(602) 상의 판독가능한 형태로 부호화되는)의 일부로서 규정되는 속도들에 따라 코스 전체에 걸쳐 그것들의 속도를 조정하는 역량을 가질 수 있다. 또한 구획들(602) 상에 부호화되는 정보의 인식을 통해 위치 측정에 대한 동일한 수단에 의해, 차량들(104)이 그것들이 코스에 남아있을지 또는 그외 정보에 대한 검출의 그것들의 필드 내 그러한 상기 정보의 부재에 의해 코스 상에 남지 않을지를 결정하는 것이 가능하다. 그러한 경우들에서, 적어도 일 실시예에서, 그러한 제어가 구동가능한 표면(601) 상에서 위치 측정될 때 차량(104)의 총 역량들의 서브세트로 제한될 수 있더라도, 사용자(109)가 차량(104)을 제어하는 것이 여전히 가능할 수 있다. 몇몇 실시예들에서, 사용자(109) 제어에 대한 차량(104)의 반응은 종래 원격-제어 차의 반응과 유사할 수 있다.In at least one embodiment, some capabilities for assistive control are present on their
다른 실시예들에서, 호스트 디바이스(108)는 실제 게임플레이 이외의 다른 방법들로 게임을 제어할 수 있다. 예를 들어, 호스트 디바이스(108)는 소프트웨어에서 정의되는 바와 같이 물리적 환경에서 작동하는 차량들(104)의 다양한 피처들을 제어할 수 있다. 이들 피처들은 예를 들어, 성능 특성들 및 차량 역량들을 포함할 수 있다. 차량-기반 게임의 계속 진행 중인 예에서, 예를 들어, 차량의 가속 프로파일, 최고 속도, 핸들링 및 차량의 성능의 다른 물리적 측면들은 실제 세계에서 그것을 위해 존재하는 물리적 제한들에 의해 좌우되는 대신 소프트웨어로 통제될 수 있다. 적어도 일 실시예에서, 시스템은 그 정의들이 물리적 및 가상 공간들 양자에서 게임플레이의 결과들을 야기하는 방법을 고려한다.In other embodiments, the
가상 환경에서의 에이전트들 간 차이들Differences between agents in a virtual environment
에이전트(104)의 역량들 및 행동의 중요한 측면들을 제어하기 위한 소프트 알고리즘들 능력은 에이전트들(104)에 걸친 상기 역량들 및 행동의 차이들을 동일한 하드웨어로 돌리는 기회를 제공한다. 제조 단순함 및 비용 전망으로부터 하드웨어 설계의 일관성의 이점들을 고려할 때, 동일한 빌딩 에이전트들(104)의 혜택들이 사업적 관점으로부터 불러내어질 수 있다. 본 발명은 소프트웨어-기반 수단을 통해 그 차이들을 제어함으로써 그룹에서의 개개의 에이전트들(104) 사이의 어느 정도의 대조를 부여하는 능력을 제공하는 것에 있어서의 특유의 이점들을 제공하는 한편, 하드웨어의 일관성을 유지하고 그렇게 함으로써 제조 비용을 절감한다.The ability of soft algorithms to control critical aspects of
예를 들어, 본 명세서에 설명되는 바와 같이 레이싱 또는 경쟁하는 구동 환경에서 경쟁하도록 적응되는 차량들(104)인 에이전트들의 맥락에서, 동일한 하드웨어 구성요소들로 차량들(104)을 제조하는 것이 바람직할 수 있고, 이는 차량들(104)이 구동, 행동, 및 반응하는 방법의 차이들을 가능하게 한다. 예를 들어, 하나의 차량(104)은 고 성능 스포츠카와 같이 수행하도록 의도될 수 있는 한편 다른 차량은 좋지 않은 가속 그러나 고 관성을 갖는 대형 트럭 또는 타이트한 선회 반지름을 갖는 경량 소형 차량 등일 수 있다. 그러한 차이들은 상이한 바디들 또는 차대 상에 딱 맞는 커버들에 의해 시각적으로 제시될 수 있거나 제시되지 않을 수 있다(그러나 이는 단지 겉치레에 불과할 수 있고, 적어도 일 실시예에서, 임의의 의미 있는 방법들로 차량의 수행 특성들에 물리적으로 영향을 주지 않는다). 소프트웨어에서, 그러한 특성들은 물리적 에이전트들의 기본 역량들이 동일한 시스템을 구현하기 위해, 용이하게 차량들(104)로 돌려질 수 있는 한편, 차량들(104)은 가상 공간에서의 차량들로 돌려진 특성들에 따라 수행 및 반응한다.For example, in the context of agents that are
상기 설명된 바와 같이, 물리적 및 가상 환경들(201, 202)의 결합의 공생 특성은 주로 또는 전적으로 가상 환경(202)에서 존재하기 위해 차량들(104)의 의도된 (가장된) 물리적 차이들의 통제하는 역학 관계를 가능하게 한다. 예를 들어, 동일한 중량 및 역량의 두 차량들이 물리적 환경에 제공된다면, 소프트웨어를 통해 돌려지는 바와 같이 그 차량들(104)의 행동은 물리적 세계에서, 질량, 동력, 기동성, 및 기타의 매우 상이한 특성들을 가장할 수 있다. 적어도 일 실시예에서, 본 발명의 시스템은 물리적 환경(201)에서 차량들(104)의 이동 및 행동을 제어하기 위해 가상 환경(202)에서의 차량 표현들(204) 및 그것들의 상호작용들의 물리학들을 사용한다.As described above, the symbiotic nature of the combination of physical and
예를 들어, 동일한 또는 유사한 물리적 이동성 프로파일들을 가지는 두 차량들(104)은 그것들의 중량, 가속도, 기동 역량들 및 유사한 계량이 물리적 세계에서 서로 동일하거나 비교할 만하도록, 제공될 수 있다. 차량들(104) 간 주요 차이는 가상 환경(202)에서, 하나는 장갑 탱크(느리고 매우 무거운)를 표현하도록 의도되고 다른 것은 세단형 자동차(빠르고 가벼운)을 표현한다는 것이다. 적어도 일 실시예에서, 몇몇 시각적 대조는 대응하는 가상 표현들(204)의 특성들의 차이를 강화하기 위해 물리적 차량들(104)에 대해 이루어질 수 있고; 예를 들어, 차대 상의 바디 커버들은 가상 특성들의 차이를 반영하기 위해 상이한 마킹들, 디자인들, 및/또는 색상들을 가질 수 있다.For example, two
이제 도 4를 참조하면, 일 실시예에 따라, 물리적 환경(201)에서의 차량들(104R, 104S) 상의 바디 커버들이 가상 환경(202)에서의 대응하는 차량 표현들(204R, 204S)의 특성들의 차이를 반영하기 위해 사용되고, 그에 따라 물리적 및 가상 환경들(201, 202) 사이의 관계를 강화하는 예가 도시된다. 차량(104S)은 그것을 탱크처럼 보이게 만드는 커버가 주어지는 한편, 차량(104R)은 그것이 세단용 차량처럼 보이게 만들어진다. 적어도 일 실시예에서, 차량 표현들(204R, 204S)은 물리적 차량들(104R, 104S)이 실제로, 질량 및 크기에 있어 비교할 만하다 하더라도, 탱크와 같은 실물 크기의 무거운 장갑 차량이 실물 크기의 자동차보다 몇 배로 클 수 있다는 사실을 반영하고 가장하는 방식으로 서로 상호작용하도록 구성된다. 도 4에 도시된 양 차량들(104R, 104S)이 그것들의 상호작용들의 일관성을 유지하기 위해, 물리적 환경(201)에서 작동할 수 있지만, 충돌 시 통제하는 이동 바디 역학 관계는 가상 환경(202)에서 정의되는 것들이다.4, body covers on
도 4의 예에서, 차량(104R)(세단용 차량을 표현하는)은 그것이 차량(104S)(탱크를 표현하는)과 충돌하게 하는 경로 상에서 고속으로 이동하고 있다. 상기 설명된 바와 같이, 물리적 및 가상 환경들(201, 202)은 서로 단단하게 결합될 수 있다. 두 개의 물리적 차량들(104R, 104S)의 질량 특성들이 동일하거나 거의 유사하기 때문에, 뉴턴 메커닉들은 위치(2)에서의 충돌이 위치(3)에 도시된 바와 같은 결과를 야기할 수 있다는 것을 좌우할 수 있고, 여기서 차량(104S)(탱크를 표현하는)은 밀어내지고 회전되며 차량(104R)(세단용 차량을 표현하는)은 충돌이 차량(104S)로의 에너지 전달을 수반했기 때문에, 비록 감소된 속도이기는 하나, 그것의 프리-크래쉬 헤딩과 유사한 코스 상에서 계속하여 이동한다. 그러나, 적어도 일 실시예에서, 시스템은 가상 환경(202)에서의 두 차량들의 표현들(204R, 204S)로 돌려지는 특성들과 일관성을 유지하며, 따라서 물리적 환경(201)에서의 두 차량들(104R, 104S)의 충돌의 결과들이 가상 환경(202)에서의 충돌의 물리학을 따르도록 인위적으로 만들어진다. 구체적으로, 차량 표현(204S)의 질량이 차량 표현(204R)의 질량보다 상당히 크기 때문에, 차량 표현(204R)(세단용 차량)이 차량 표현(204S)(탱크)에 대한 반응을 효과적으로 살피는 한편, 차량 표현(204S)의 가속도 및 위치에 거의 효과를 미치지 않는, 위치(4)에 도시된 결과가 발생한다. 물리적 환경(201)의 위치(5)에 도시된 바와 같이, 물리적 차량들(104R, 104S)이 대응하는 차량 표현들(204R, 204S)의 궤도를 따르도록 인위적으로 만들어지고, 그에 따라 물리적 공간에 대한 가장을 확장한다.In the example of FIG. 4, the
그 후, 본질적으로, 그러한 급격히 상이한 질량을 갖는 차량 표현들(204)을 가지는, 그러한 두 차량들(104) 사이의 충돌에 있어서, 차량(104R)은 차량 표현(204S)의 관성이 상호작용을 지배하기 때문에 스피드 및 헤딩의 상당히 더 큰 변경을 경험한다. 실제 차량들(104R, 104S) 간 충돌의 실제 물리학들에 따르면, 그 결과는 동일한 충돌일 수 있으며, 세단은 자동차 및 장갑 군용 차량 간 질량 차이들을 고려하면 현실적이지 않을 수 있는 방법으로 탱크를 밀어낸다. 따라서, 적어도 일 실시예에서, 가상 공간에서의 차량들로 돌려지는 차이들을 유지하기 위해, 충돌의 결과들은 가상 환경에서의 상호작용들을 통제하는 물리학 및 소프트웨어에서 정의되는 차량 파라미터들에 의해 좌우된다.Then, essentially, in the collision between two
따라서, 적어도 일 실시예에서, 충돌 시 특정 세부사항들 및 이벤트들의 순서는 가상 환경(202)에서의 움직임을 통제하는 알고리즘들에 따라 결정된다. 적어도 일 실시예에서, 일관성은 물리적 및 가상 환경들 사이에서 유지된다. 그러한 일관성을 강행하기 위한 하나의 가능한 접근은 차량들(104)이 차량 표현들(204)이 그러한 것과 같이 동일한(또는 유사한) 방식으로 충돌 이벤트를 통해 이동하게 하기 위해, 가상 환경(202)에서의 충돌의 결과들을 결정하는 알고리즘들이 물리적 환경(201)에서의 차량들(104)의 제어에 직접 작용하는 것을 가능하게 하는 것이다. 적어도 일 실시예에서, 본 발명의 시스템은 가상 환경(202)에서 일어나는 이벤트들 및 물리적 환경(201)에서 일어나는 이벤트들 사이에 원하는 정도의 동등성을 유지하기 위해, 가상 및 물리적 환경들(202, 201) 사이의 우선순위에 관한 프로토콜들을 시행하며; 이러한 방식으로, 본 발명의 시스템은 상기 설명된 바와 같이, 이벤트들의 양-방향 작용을 제공한다.Thus, in at least one embodiment, the order of certain details and events at the time of the collision is determined according to the algorithms that control the movement in the
따라서, 적어도 일 실시예에서, 물리적 환경(201)에서의 차량들(104R, 104S)은 가상 환경(202)에서의 그것들의 상대들과 함께 동시에 반응한다. 그렇게 함으로써 차량들(104R, 104S)은 가상 환경(202)에서 정의되는 파라미터들에 따라 및 가상 환경(202)에서의 그러한 파라미터들에 적용되는 바와 같은 물리학 법칙들에 따라 수행하고 반응한다.Thus, in at least one embodiment, the
이러한 특정한 예에서, 충돌은 가상 및 실제 환경들(202, 201) 양자에서 발생한다. 가상 환경(202)에서의 차량 표현들(204)에 부과되는 질량 특성들이 물리적 차량들(204)의 질량 특성들에 매칭하지 않기 때문에, 충돌의 결과는 두 환경들에서 상이할 수 있다. 여기서, 작동 프로토콜은 가상 환경(202) 내에서 결정되는 바와 같은 충돌의 물리학에 우선권을 주었고; 물리적 차량들(104)은 그 물리학에 따라 반응하도록 만들어졌다. 그러나, 다른 상황들에서, 물리적 환경(201)의 행동들 및 물리학에 우선권을 주는 것, 및 가상 환경(202)이 그에 따라 조정되게 하는 것이 바람직할 수 있다.In this particular example, the conflict occurs in both the virtual and real environments 202,201. Because the mass characteristics imposed on the vehicle representations 204 in the
도 4에 도시된 예가 종래 뉴턴 물리학에 대한 가상 파라미터들의 애플리케이션을 설명하지만, 해당 기술분야의 통상의 기술자는 규칙들의 임의의 세트가 충돌 시 가상 바디들의 움직임 또는 그 외 실제 세계의 물리학에 의해 좌우되는 이동의 임의의 다른 측면을 통제하도록 정의될 수 있다. 다른 인스턴스들은 예를 들어, 구동가능한 표면(601)의 대응하는 부분들을 통해 구동하는 물리적 차량들(104)이 관성; 또는 물리적 구동가능한 표면(601)이 평평하게 유지됨에도 불구하고 마치 높아지는 것처럼 차량 속도 및 가속력이 감소되는 경우 가장된 경사들에 따라 조종하거나 정지하고 이동하는 능력을 잃게 하는, 가상 환경(202)의 부분들에서의 마찰이 없는 표면들을 포함할 수 있다. 많은 유형들의 가상의 힘은 인위적으로 도입될 수 있고 단지 실제-세계 물리학에 따라 작용하는 실제 세계의 힘일 수 있는 것과 다르게 차량들(104)의 움직임에 작용할 수 있다. 이러한 방식으로, 본 발명의 시스템은 물리학의 실제-세계 법칙들을 따르지 않으나, 다른 규칙들을 따를 수 있는 행동들을 가장하고 구현할 수 있다.While the example shown in Fig. 4 describes the application of virtual parameters to conventional Newtonian physics, one of ordinary skill in the art will recognize that any set of rules may be influenced by the motion of virtual bodies or other physical world physics at the time of the collision Can be defined to control any other aspect of movement. Other instances include, for example,
에러 정정 및 트랙 정보Error correction and track information
가상 및 물리적 환경들(202, 201)이 서로를 반영하는 것들로서 작동하도록 의도되는 상황들(즉, 여기서 물리학 및 역학 관계는 항상 동일한 결과들을 각각 산출하고 매칭하는 것으로 의미된다)에서도, 에러들이 가상 및 물리적 환경들(202, 201)에서의 이벤트들 사이에 차이성을 야기하면서, 도입될 수 있는 상황들이 있을 수 있다.Even in situations where the virtual and
예를 들어, 원형 코스 주위를 구동하기 시작하는 차량(104)의 움직임을 모델링할 때, 차량(104)의 가속도, 차대 기하학적 구조 및 질량, 코스 조정, 바퀴들 및 구동가능한 표면(601) 사이의 마찰 및 기타와 같은 측면들에 관한 실제 및 모델링된 근사치 간 차이들은 에러들을 도입할 수 있다. 정정이 없다면, 그러한 에러들은 악화될 수 있다. 결과적으로, 물리적 환경(201)에서 발생하는 이벤트들 및 가상 환경(202)에서의 이벤트들 간 동등성을 설정 및 유지하는 프로토콜들이 없다면, 두 이벤트들은 가능성 있게 빠르게 나뉠 것이다.For example, when modeling the motion of the
적어도 일 실시예에서, 시스템은 물리적 또는 가상 환경들을 위하여 정정되어야 하는지를 명시하는 시행되는 우선순위 기법에 기초하여, 그러한 에러들을 정정하도록 구성될 수 있다. 예를 들어, 적어도 일 실시예에서, 본 발명의 시스템은 물리적 및 가상 환경들 사이에 유지되는 동등성을 보장하는 프로토콜들을 확립할 수 있다. 이러한 프로토콜들이 양 환경들에 걸쳐 차량들(104)의 제어 및 위치 측정을 통제하는 프로세스들의 검토를 통해 두 환경들 간 동등성을 보장하도록 작동하는 방법을 이해하는 것이 가장 편리할 수 있다.In at least one embodiment, the system may be configured to correct such errors based on an enforced priority scheme that specifies whether they should be corrected for physical or virtual environments. For example, in at least one embodiment, the system of the present invention can establish protocols that ensure equivalency maintained between physical and virtual environments. It may be most convenient to understand how these protocols operate to ensure equality between the two environments through review of processes controlling the control and location of
구동가능한 표면(601) 상의 단일 차량(104)의 기본 경우를 고려하면, 처음에, 차량(104)이 트랙 레이아웃의 특성 또는 그것의 코스 상의 그것의 위치에 관한 정보를 작동가능하지 않을 것이 전적으로 예상된다. 또한 가상 환경(202)에서 발생하는 이벤트들을 제어하는 호스트 디바이스(108)가 차량(104)이 있는 구동가능한 표면(601) 또는 그 위의 차량(104)의 현재 위치에 관한 정보를 가지지 않을 것이 가능하다.Considering the basic case of a
적어도 일 실시예에서, 직접 입력에 의해 또는 호스트 디바이스(108)가 차량(104)을 포함하는 구동가능한 표면(601)의 디지털 사진과 같은, 그것을 결정하는 것을 가능하게 하는 수단을 통해, 사용자(109)가 셋업 프로세스의 일부로서 트랙 및 위치 정보를 제공하는 것을 가능하게 하는 수단이 제공된다. 사용자(109)가 구동가능한 표면(601) 상의 그러한 트랙 정보 또는 차량 위치를 제공하는 것 또는 그외 동작에 앞서 그러한 정보를 제공하는 것을 가능하게 하지 않는 본 발명의 실시에에서, 트랙 및 위치를 확립하기 위한 정보는 차량(104) 그 자신에 의해 수집될 수 있다. 구체적으로, 차량(104)은 그것이 구동가능한 표면(601)의 특정 구획(602)의 식별 및 구획(602) 상의 차량(104)의 위치의 식별에 관한 데이터를 판독하기에 충분한 거리에 대한 코스를 따라 구동할 수 있다. 차량(104)이 이 정보를 획득하면, 정보는 호스트 디바이스(108)에 전달되고, 이는 특유의 구획(602) 식별을 구획(602) 및 위치 식별에 매칭하기 위한 구획들(602)의 색인을 참조하기 위해 그것을 사용한다. 그렇게 함으로써 호스트 디바이스(108)는 구동가능한 표면(601) 상의 차량(104)의 위치의 근사치를 생성한다.Via at least one embodiment, by means of direct input or by means that enables the
호스트 디바이스(108)에 의한 구획(602)의 식별은 차량(104)의 작동가능한 제한들에 관한 데이터의 세트를 추가로 산출한다. 이러한 데이터는 위치 측정 정보의 조합(예컨대, 레이스 트랙의 경우, 트랙의 중심선으로부터의 그것의 수평 오프셋 및 트랙을 따르는 차량(104)의 위치) 및 트랙의 다양한 섹션들을 따라 최대 허용가능한 속도들 또는 회전이 트랙 상의 교차점들에서 허용되는지와 같은 작동 제한들에 관한 데이터일 수 있다. 차량(104)에 그러한 데이터를 제공하는 것의 혜택은 그것이 차량(104)이 낮을 레벨로, 코스 상의 그것의 측면 위치를 유지하는 것 및 코스 기하학적 구조의 변화에 반응하여 그것의 속도를 조정하는 것과 같은, 호스트 디바이스(108)로부터의 명령들과 관계없이 작동하는 몇몇 능력을 유지하는 것을 가능하게 하는 것이다.Identification of the
구획(602) 및 차량(104) 위치가 식별되면, 호스트 디바이스(108)는 물리적 공간에서의 차량(104)의 위치에 의해 확립되는 초기 상태로부터 계속 진행 중인 기초로 차량(104)의 위치를 추적하기 위한 모션 모델을 채용할 수 있다. 차량(104)의 실제 위치 및 가상 환경(202)에서의 모션 모델에 의해 예측되는 위치 간 차이들을 산출하는 에러의 위에서 언급된 원인들을 인식하여, 물리적 환경(201)에서의 차량(104)은 호스트 디바이스(108)와의 정기적인 통신을 통해 그 위치의 업데이트들을 제공할 수 있다. 업데이트 데이터는 예를 들어, 도로피스 ID 및 위치ID에 관한 현재 정보, 뿐만 아니라 트랙 상의 차량(104)의 정확한 측면 위치와 같은 직접 위치에 관한 현재 정보를 포함할 수 있다. 가상 환경(202)을 업데이트하는 역할을 하는 계산들을 위한 입력들로서 또는 직접 이러한 데이터를 사용하여, 호스트 디바이스(108)는 물리적 환경(201)에서의 차량(104)의 이동 및 가상 환경(202)에서의 대응하는 차량 표현(204)의 이동 사이의 일관성을 유지한다.Once the location of the
설명된 실시예에서, 업데이트들은 물리적 차량(104)의 움직임의 특성들에 기초하고 가상 모델에 제공되기 때문에, 물리적 차량(104)의 움직임은 대응하는 차량 표현(204)의 움직임을 통해 우선권을 갖는다. 다른 실시예들은 역순 프로토콜로 작동할 수 있다. 따라서, 가상 차량 표현(204)의 움직임이 우선권을 가질 수 있고, 업데이트들은 물리적 차량(104)이 그것의 통신원의 움직임에 매칭하고 있는 것을 보장하도록 이루어질 수 있다. 그러한 상황들은 차량(104) 또는 차량들(104)의 실황 동작이 아닌 시나리오들 또는 심지어 가상 환경(202)에서 전개되는 이벤트들이 모델 모션에 기초하는 시나리오들을 포함할 수 있다는 것이 인식될 수 있다. 예는 이전에 플레이된 게임에서의 차량 움직임들 및 상호작용들이 그 다음 리-플레이를 위해 저장되고 캡쳐되는 것일 수 있다. 물리적 차량들(104)이 원래 게임플레이에서 우선권들 가졌다 하더라도, 물리적 환경(201)에서의 그러한 게임플레이를 재현하는 것은 대응하는 물리적 차량(104) 또는 차량들(104)을 인도하는 가상 형태로 기록된 이벤트들을 리플레이하는 것을 수반할 수 있다.In the described embodiment, the movements of the
중간 상태들Intermediate states
가상 및 물리적 환경들(202, 201) 사이의 양-방향 작용을 유지하는 본 발명의 적어도 일 실시예에서, 물리적 및 가상 간 차이들이 나타날 때, 우선권은 상황들 및 임의의 주어진 상황에서 우선권의 할당이 기본 구조 및 게임플레이의 목표들을 지원하는 방법에 의존할 수 있다. 다른 실시예들에서, 우선권은 한 측면 또는 다른 측면에 할당될 수 있는 것이 아니라, 시스템이 부분적으로 한 측면 또는 다른 측면이 별도로 좌우할 수 있는 것 사이의 상태에서의 그것들 간의 절충점을 찾을 수 있다. 그러한 경우들에서, 양 가상 및 물리적 환경들(202, 201)에서의 행동 및 움직임은 절충 상태를 따르기 위해 조정될 수 있다.In at least one embodiment of the present invention that maintains a bi-directional behavior between the virtual and
게임플레임의Game frame 캡쳐capture 및 저장 And save
적어도 일 실시예에서, 동등한 두 상태들, 즉 물리적 상태 및 가상 상태의 유지는 게임플레이 또는 전체 게임들의 캡쳐, 저장, 분산, 및/또는 그 다음 재현을 가능하게 한다. 호스트 디바이스(108)가 가상 환경(202)에 매칭하기 위해 물리적 환경(201)을 조정하는 능력(상태 출현 및 우선권의 차이들이 가상 환경(202)에 주어질 때)은 또한 가상 환경(202)에서 발생하고 물리적 환경(201)에서 직접 복제되는 이벤트들 및 동작들의 진행으로서 기록되거나 완전히 제작되고 리플레이되는 플레이의 순서들을 구동하는 것 또는 과거 게임들을 재현하는 것에 적용될 수 있다. 적어도 일 실시예에서, 실황으로 플레이되는 게임의 진행 동안 또는 기록된 게임 시나리오의 재현 시, 동작은 이벤트들의 나레이션을 제공하는 해설자에 의해 동반될 수 있다. 예를 들어, 이벤트들이 물리적 환경(201)에서 발생하는 동안, 가상 환경(202)에서의 조정된 시퀀스들은 자동 해설자가 게임플레이에서의 동작의 변화 상태에 관한 관련 정보(뿐만 아니라 색상 해설)를 제공하는 것을 가능하게 할 수 있다.In at least one embodiment, the maintenance of two equivalent states, i.e., physical state and virtual state, enables capture, storage, distribution, and / or subsequent reproduction of game play or entire games. The ability of the
가상 액세서리Virtual accessory
도 1과 관련하여 상기 설명된 바와 같이, 에이전트들(104)은 직접 사용자 제어 또는 AI 플래너(305)의 제어 또는 그것들의 몇몇 조합에 관계없이, 다수의 형태들을 취할 수 있다. 적어도 일 실시예에서, 가상 액세서리(106)는 물리적 공간에서의 디지털 방식으로 렌더링된 요소를 구현하기 위해, 제공될 수 있다.As described above in connection with FIG. 1,
이제 도 5를 참조하면, 본 발명의 맥락에서 레이싱 및 슈팅 게임에서 구현되는 가상 액세서리(106)의 예가 도시된다. 이러한 경우, 가상 액세서리(106)는 능동적으로 조준되고 발포된 포탑포(503)를 표현한다. 게임 공간에서의 다른 에이전트들과 유사하게, 가상 액세서리(106)는 물리적 및 가상 환경들(201, 202) 양자에서의 존재를 유지한다. 그러나, 물리적 존재에 대해, 호스트 디바이스는 액세서리(106)의 렌더링을 제공한다. 도 5에서, 포탑(503)의 도시는 태블릿(504)(임의의 다른 전자 디바이스가 사용될 수 있더라도, iPad와 같은)에 의해 제공되고, 이는 가상 환경(202)에서의 그것의 존재(501)에 대응하는 상태에서 및 그 위치에 포탑포(503)를 디스플레이한다.Referring now to FIG. 5, there is shown an example of a
에이전트들이 매체 상에 프린트되는 구동가능한 표면(601) 상에서 작동하는, 적어도 일 실시예에서, 가장 액세서리(106)는 매체 상에 표시되는 배향 및/또는 지정된 위치에 태블릿(504)의 배치를 통해 게임플레이로 통합될 수 있다. 대안적으로, 임의의 배치가 물리적 게임 공간에 관련하여 허용될 수 있다.In at least one embodiment, where the agents operate on a
적어도 일 실시예에서, 태블릿(504)에는 호스트 가상 액세서리(106)에 사용될 수 있는 후방 카메라가 장착될 수 있다. 태블릿(504)의 배치 동안, 카메라는 비디오 상에서 전환될 수 있고 기록할 수 있다. 태블릿(504)이 위치됨에 따라, 물리적 게임 공간의 이동 관점은 게임 공간의 다른 요소들에 관한 태블릿의 위치 및 배향이 추정될 수 있는 입력 데이터를 제공한다. 이러한 접근은 위치 및 배향에 관한 태블릿(504)의 배치 상의 제한을 제거한다.In at least one embodiment, the
적어도 일 실시예에서, 가상 액세서리(106)의 렌더링은 그것이 덮어씌운 프린트된 매체의 그러한 부분의 배경 이미지를 배경으로 행해질 수 있다. 이것은 태블릿(504)에 직접 매체의 커버 부분의 이미지를 제공하는 호스트 디바이스(108)에 의해 또는 배치 동안 그것 옆의 풋프린트 영역의 이미지를 취하는 태블릿(504)에 의해 성취될 수 있다. 후자의 경우, 이러한 접근은 가상 액세서리(106)가 프린트된 매체의 기하학적 제한들에 의해 정의되는 것과 같은 게임 공간을 넘는 배치를 위해 의도된다면 유용하다.In at least one embodiment, the rendering of the
게임플레이로의 그것의 통합에 관한 가상 액세서리(106)의 기능은 다른 에이전트들(104)과 유사하다. 도 5에 도시된 시나리오에서, 차량 표현(204T)은 가상 환경(102)에서의 포탑포 표현(501) 가까이 지나고; 상응하여, 물리적 차량(104T)은 물리적 환경(201)에서의 가상 액세서리(106)(태블릿(504)) 상에 렌더링되는 포탑포(503)를 지난다. 차량 표현(204T)이 포탑포 표현(501)의 발포 라인으로 지남에 따라, 포탑포 표현(501)이 차량 표현(204T)과의 충돌을 야기하면서, 발사된다. 적어도 일 실시예에서, 가상 환경(202)에서의 게임플레이를 디스플레이하는 디바이스 상에서 관찰되면, 풀 샷 및 충돌이 보인다. 물리적 환경(201)에서의 동일한 동작을 보는 관측자들에 대해, 포탑포(503)로부터의 발사의 렌더링은 가상 액세서리(106), 이 경우 태블릿(504)의 스크린에 제한될 수 있다. 그러나, 가상 및 물리적 게임 환경들(202, 201) 사이에 유지되는 동등성에 따라, 피격된 차량(104T) 및 차량 표현(204T)의 결과는 동일할 수 있으며, 가상 차량 표현(204T)은 손상을 경험할 수 있고, 이 인스턴스에서, 제어의 손실이 코스에서 멀어진 그것의 순전(veering)을 유도할 수 있다. 물리적 환경(201)에서의 대응하는 차량(104)은 사운드들을 통해, 및/또는 LED들 및/또는 다른 수단을 밝힘으로써 충격을 디스플레이하는 역량을 가질 수 있다. 또한, 차량(104T)의 이동 및 행동은 가상 환경(202)에서 보여지는 바와 같이 제어의 결과적인 손실을 반영한다.
The functionality of the
본 발명은 가능한 실시예들에 관해 특히 상세하게 설명되었다. 해당 기술분야의 통상의 기술자들은 본 발명이 다른 실시예들에서 실시될 수 있다는 것을 이해할 것이다. 먼저, 구성요소들의 특정한 명명, 용어들의 대문자화, 속성들, 데이터 구조들, 또는 임의의 다른 프로그래밍 또는 구조적 측면은 필수적이거나 중요하지 않고, 본 발명 또는 그 피처들을 구현하는 메커니즘들은 상이한 명칭들, 형식들, 또는 프로토콜들을 가질 수 있다. 또한, 시스템은 설명된 바와 같이, 하드웨어 및 소프트웨어의 조합을 통해, 또는 전적으로 하드웨어 요소들로, 또는 전적으로 소프트웨어 요소들로 구현될 수 있다. 또한, 본 명세서에 설명된 다양한 시스템 구성요소들 사이의 기능의 특정한 분배는 단지 예시적이고, 필수적이지 않으며; 단일 시스템 구성요소에 의해 수행되는 기능들은 대신 다수의 구성요소들에 의해 수행될 수 있으며, 다수의 구성요소들에 의해 수행되는 기능들은 단일 구성요소에 의해 대신 수행될 수 있다.The present invention has been described in detail with respect to possible embodiments. Those skilled in the art will appreciate that the present invention may be practiced in other embodiments. First, the specific naming of components, capitalization of terms, attributes, data structures, or any other programming or architectural aspects are not essential or important, and the present invention or mechanisms implementing the features may be implemented in different names, , Or protocols. Further, the system may be implemented as a combination of hardware and software, or entirely as hardware elements, or entirely as software elements, as described. Moreover, the specific distribution of functionality among the various system components described herein is merely exemplary and not essential; The functions performed by a single system component may instead be performed by a plurality of components and the functions performed by the plurality of components may be performed by a single component instead.
다양한 실시예들에서, 본 발명은 단독으로 또는 임의의 조합으로, 상기-설명된 기술들을 수행하기 위한 시스템 또는 방법으로서 구현될 수 있다. 다른 실시예에서, 본 발명은 컴퓨팅 디바이스 또는 다른 전자 디바이스에서의 프로세서가 상기-설명된 기술들을 수행하게 하기 위한, 매체 상에 인코딩되는, 컴퓨터 프로그램 코드 및 비일시적 컴퓨터-판독가능한 저장 매체를 포함하는 컴퓨터 프로그램 제품으로서 구현될 수 있다.In various embodiments, the present invention may be implemented as a system or method for performing the above-described techniques, alone or in any combination. In another embodiment, the present invention is directed to a computer-readable storage medium having computer-executable instructions for performing the above-described techniques on a computing device or other electronic device, May be implemented as a computer program product.
설명에서의 "일 실시예" 또는 "실시예"에 대한 언급은 실시예들과 관련하여 특정한 피처, 구조, 또는 특성이 본 발명의 적어도 일 실시예에 포함되는 것을 의미한다. 설명의 다양한 위치들에서의 문구 "적어도 일 실시예에서"의 출현은 반드시 동일한 실시예에 대한 모든 참조일 필요는 없다.Reference in the specification to " one embodiment "or" an embodiment " means that a particular feature, structure, or characteristic is included in at least one embodiment of the invention in the context of the embodiments. The appearances of the phrase "at least one embodiment" in various places in the description are not necessarily all references to the same embodiment.
상기 내용의 몇몇 부분들은 컴퓨팅 디바이스의 메모리 내 데이터 비트들 상의 동작들의 상징적인 표현들 및 알고리즘들에 관하여 제시된다. 이들 알고리즘의 설명들 및 표현들은 해당 기술분야의 다른 기술자들에게 데이터 프로세싱 기술분야들의 기술자들의 작업의 본질을 가장 효과적으로 전달하기 위해 데이터 프로세싱 기술분야들의 기술자들에 의해 설명되는 수단이다. 알고리즘은 여기서, 및 일반적으로, 원하는 결과로 유도하는 단계들(지시들)의 자가-일관 순서인 것으로 생각된다. 단계들은 물리량들의 물리적 조작들을 요구하는 것들이다. 보통, 반드시는 아니더라도, 이러한 양들은 저장, 전달, 조합, 비교 및 그외 조작될 수 있는 전자, 자기 또는 광학 신호들의 형태를 취한다. 이러한 신호들을 비트들, 값들, 요소들, 부호들, 문자들, 용어들, 숫자들, 또는 기타로 언급하는 것은, 주로 일반적인 용법의 이유들로, 때때로 편리하다. 게다가, 또한 물리량들의 물리적 조작들을 요구하는 단계들의 특정 배열들을 일반성을 잃지 않고, 모듈들 또는 코드 디바이스들로 언급하는 것이 때때로 편리하다.Some portions of the above content are presented with respect to symbolic representations and algorithms of operations on in-memory data bits of a computing device. The descriptions and representations of these algorithms are the means described by the skilled artisan in the data processing arts to most effectively convey the nature of the work of the skilled artisan in the data processing arts to other artisans skilled in the art. The algorithm is here, and generally, considered to be a self-consistent sequence of steps (instructions) leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electronic, magnetic, or optical signals that can be stored, transferred, combined, compared, and otherwise manipulated. It is sometimes convenient to refer to such signals as bits, values, elements, signs, characters, terms, numbers, or the like, primarily for general usage reasons. In addition, it is sometimes convenient to also refer to modules or code devices, without losing generality, to particular arrangements of steps that require physical manipulations of physical quantities.
그러나, 모든 이들 및 유사한 용어들이 적절한 물리량들과 연관될 것이고 단지 이들 수량들에 적용되는 편리한 라벨들이라는 것이 생각되어야 한다. 다음 논의로부터 명백해지는 바와 같이 명시적으로 다르게 언급되지 않으면, 설명 전체에 걸쳐, "프로세싱하는" 또는 "컴퓨팅하는" 또는 "계산하는" 또는 "디스플레이하는" 또는 "결정하는"과 같은 용어들을 이용하는 논의들은 컴퓨터 시스템, 또는 유사한 전자 컴퓨팅 모듈 및/또는 디바이스의 동작 및 프로세스들을 나타내고, 이는 컴퓨터 시스템 메모리들 또는 레지스터들 또는 그외 다른 정보 저장, 전송 또는 디스플레이 디바이스들 내 물리(전자)량들로 표현되는 데이터를 조작하고 변환한다.It should be borne in mind, however, that all of these and similar terms will be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless expressly stated otherwise as apparent from the following discussion, it is appreciated that throughout the description discussions utilizing terms such as " processing "or" computing & Refers to the operations and processes of a computer system, or similar electronic computing module and / or device, which may store data represented by physical (electronic) quantities in computer system memories or registers or other information storage, transmission or display devices Manipulate and convert.
본 발명의 특정 측면들은 알고리즘의 형태로 본 명세서에 설명되는 프로세스 단계들 및 지시들을 포함한다. 본 발명의 프로세스 단계들 및 지시들이 소프트웨어, 펌웨어 및/또는 하드웨어에서 구현될 수 있고, 소프트웨어에서 구현될 때, 다양한 운영 시스템들에 의해 사용되는 상이한 플랫폼들에서 동작되고 그것들 상에 존재하기 위해 다운로드될 수 있다는 것이 언급되어야 한다.Certain aspects of the invention include process steps and instructions described herein in the form of algorithms. The process steps and instructions of the present invention may be implemented in software, firmware and / or hardware, and when implemented in software, be operated on different platforms used by various operating systems and downloaded to exist on them Should be mentioned.
본 발명은 또한 본 명세서에서의 동작들을 수행하기 위한 장치에 관한 것이다. 이 장치는 특히 요구된 목적들을 위해 구성될 수 있고, 또는 그것은 컴퓨팅 디바이스에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨팅 디바이스를 포함할 수 있다. 그러한 컴퓨터 프로그램은 이에 제한되지는 않으나, 플로피 디스크들, 광 디스크들, CD-ROM들, 자기-광 디스크들, 판독-전용 메모리들(ROM들), 랜덤 액세스 메모리들(RAM들), EPROM들, EEPROM들, 플래쉬 메모리, 고체 상태 드라이브들, 자기 또는 광 카드들, 애플리케이션 특정 직접 회로들(ASIC들)을 포함하는 임의의 유형의 디스크 또는 컴퓨터 시스템 버스에 각각 결합되고, 전자 지시들을 저장하기에 적합한 임의의 유형의 매체와 같은, 컴퓨터 판독가능한 저장 매체에 저장될 수 있다. 또한, 본 명세서에서 언급되는 컴퓨팅 디바이스들은 단일 프로세서를 포함할 수 있고 또는 증가된 컴퓨팅 역량을 위해 다수의 프로세서 설계들을 채용하는 아키텍처들일 수 있다.The present invention also relates to an apparatus for performing the operations herein. The device may be specifically configured for the required purposes, or it may comprise a general purpose computing device selectively activated or reconfigured by a computer program stored on the computing device. Such computer programs may include, but are not limited to, floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs) , EEPROMs, flash memory, solid state drives, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of disk or computer system bus, May be stored in a computer-readable storage medium, such as any suitable type of medium. In addition, computing devices referred to herein may include a single processor or may be architectures employing multiple processor designs for increased computing capacity.
본 명세서에 제시되는 알고리즘들 및 디스플레이들은 임의의 특정한 컴퓨팅 디바이스, 가상화 시스템, 또는 다른 장치와 본질적으로 관련되지 않는다. 다양한 범용 시스템들은 또한 본 명세서에서의 교시들에 따라 프로그램들과 함께 사용될 수 있고, 또는 필요한 방법 단계들을 수행하기 위한 보다 전문화된 장치를 구성하는 것이 편리한 것으로 드러날 수 있다. 다양한 이들 시스템들을 위해 필요한 구조는 본 명세서에 제공되는 설명으로부터 명백해질 것이다. 또한, 본 발명은 임의의 특정한 프로그래밍 언어를 참조하여 설명되지 않는다. 다양한 프로그래밍 언어들이 본 명세서에서 설명되는 바와 같이 본 발명의 교시들을 구현하는데 사용될 수 있다는 것, 및 특정한 언어들에 대한 상기 임의의 언급들이 본 발명의 최상의 모드 및 이네이블먼트의 개시를 위해 제공된다는 것이 이해될 것이다.The algorithms and displays presented herein are not inherently related to any particular computing device, virtualization system, or other device. Various general purpose systems may also be used with the programs in accordance with the teachings herein, or it may be convenient to construct a more specialized apparatus for performing the required method steps. The structure required for various of these systems will be apparent from the description provided herein. Furthermore, the present invention is not described with reference to any particular programming language. It is to be understood that various programming languages may be used to implement the teachings of the present invention as described herein and that any of the above references to particular languages are provided for the disclosure of the best mode and enablement of the present invention It will be understood.
따라서, 다양한 실시예들에서, 본 발명은 소프트웨어, 하드웨어, 및/또는 컴퓨터 시스템, 컴퓨팅 디바이스, 또는 다른 전자 디바이스 또는 그것들의 임의의 조합 또는 복수를 제어하기 위한 다른 요소들로서 구현될 수 있다. 그러한 전자 디바이스는 해당 기술분야에 잘 알려진 기술들에 따라, 예를 들어, 프로세서, 입력 디바이스(키보드, 마우스, 터치패드, 트랙패드, 조이스틱, 트랙볼, 마이크로폰, 및/또는 그것들의 임의의 조합), 출력 디바이스(스크린, 스피커, 및/또는 기타와 같은), 메모리, 롱-텀 저장장치(자기 저장장치, 광 저장장치, 및/또는 기타와 같은), 및/또는 네트워크 연결을 포함할 수 있다. 그러한 전자 디바이스는 휴대용 또는 비휴대용일 수 있다. 본 발명을 구현하기 위해 사용될 수 있는 전자 디바이스들의 예들은: 모바일 폰, 개인 디지털 보조기, 스마트폰, 키오스크, 서버 컴퓨터, 기업 컴퓨팅 디바이스, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 소비자 전자 디바이스, 텔레비젼, 셋-탑 박스, 또는 기타를 포함한다. 본 발명을 구현하기 위한 전자 디바이스는 예를 들어: 리눅스; 워싱턴, 레드먼드의 마이크로소프트사로부터 이용가능한 마이크로소프트 윈도우즈; 캘리포니아, 쿠퍼티노의 애플사로부터 이용가능한 Mac OS X, 캘리포니아, 쿠퍼티노의 애플사로부터 이용가능한 iOS, 및/또는 디바이스 상에서 사용하기 위해 적응되는 임의의 다른 운영 시스템과 같은, 임의의 운영 시스템을 사용할 수 있다.Thus, in various embodiments, the invention may be implemented as software, hardware, and / or other elements for controlling a computer system, a computing device, or other electronic device, or any combination or plurality of them. Such an electronic device may be, for example, a processor, an input device (keyboard, mouse, touch pad, trackpad, joystick, trackball, microphone, and / (Such as a screen, speakers, and / or the like), memory, long-term storage devices (such as magnetic storage devices, optical storage devices, and / or the like), and / or network connections. Such an electronic device may be portable or non-portable. Examples of electronic devices that can be used to implement the present invention are mobile phones, personal digital assistants, smart phones, kiosks, server computers, enterprise computing devices, desktop computers, laptop computers, tablet computers, consumer electronic devices, televisions, - a top box, or the like. Electronic devices for implementing the invention include, for example: Linux; Microsoft Windows available from Microsoft Corporation of Redmond, Washington; Such as Mac OS X available from Apple Inc. of Cupertino, Calif., IOS available from Apple, Inc. of Cupertino, Calif., And / or any other operating system adapted for use on the device .
본 발명이 제한된 수의 실시예들에 관하여 설명되었지만, 상기 설명의 혜택을 가지는, 해당 기술분야의 통상의 기술자들은 본 명세서에 설명된 바와 같이 본 발명의 범위를 벗어나지 않는 다른 실시예들이 고안될 수 있다는 것을 인식할 것이다. 또한, 명세서에서 사용되는 언어는 주로 가독성 및 지시 목적들을 위해 선택되었고, 본 발명의 청구 대상을 기술하거나 제한하기 위해 선택되지 않았다는 것이 언급되어야 한다. 따라서, 본 발명의 개시 내용은 본 발명의 범위에 대해 예시적이나, 제한적이지 않은 것으로 의도되고, 이는 청구항들에 제시된다.Although the present invention has been described with respect to a limited number of embodiments, those skilled in the art, having the benefit of the description above, may contemplate that other embodiments may be devised which do not depart from the scope of the invention as described herein . It should also be mentioned that the language used in the specification is mainly chosen for readability and instructional purposes and has not been selected to describe or limit the claimed subject matter of the invention. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the claims.
Claims (58)
신호들을 수신하고;
수신된 상기 신호들에 반응하여 물리적 환경에서 동작들을 수행하며;
상기 물리적 환경에서의 상기 물리적 에이전트의 물리적 상태를 표시하는 신호들을 송신하도록 구성되는, 상기 복수의 물리적 에이전트들;
적어도 하나의 컨트롤러로서, 상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 사용자 입력을 수신하도록 구성되고, 상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 신호들을 송신하도록 더 구성되는, 상기 적어도 하나의 컨트롤러; 및
호스트 디바이스로서:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 신호들을 수신하고;
상기 물리적 에이전트들에 의해 취해질 동작들을 명시하는 신호들을 송신하고;
서로 상호작용을 위해 구성되는 상기 물리적 에이전트들의 가상 표현들을 저장하며;
상기 물리적 에이전트들 중 적어도 하나에 대해:
상기 물리적 에이전트의 위치를 표시하는 신호를 상기 물리적 에이전트로부터 수신하는 동작, 및
상기 물리적 에이전트의 저장된 가상 표현의 위치와 상이한 위치를 표시하는 수신된 상기 신호에 반응하여, 상기 물리적 에이전트가 그것의 위치를 상기 물리적 에이전트의 저장된 상기 가상 표현의 위치에 합치하도록 변경하게 하기 위한 신호를 송신하는 동작에 의해, 상기 물리적 에이전트들의 상기 물리적 상태들 및 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하도록 구성되는, 상기 호스트 디바이스를 포함하는 시스템.A plurality of physical agents, wherein the physical agents are configured for interaction with one another, each physical agent comprising:
Receiving signals;
Perform operations in a physical environment in response to the received signals;
The plurality of physical agents configured to transmit signals indicative of a physical state of the physical agent in the physical environment;
At least one controller, wherein the at least one controller is further configured to receive user input for controlling at least one of the physical agents, and to transmit signals for controlling at least one of the physical agents; And
As a host device:
Receive signals indicative of the physical state of the physical agents;
Transmit signals that specify actions to be taken by the physical agents;
Store virtual representations of the physical agents configured for interaction with one another;
For at least one of the physical agents:
Receiving a signal from the physical agent indicating a location of the physical agent; and
A signal for causing the physical agent to change its position to coincide with the location of the stored virtual representation of the physical agent in response to the received signal indicating a location different than the location of the stored virtual representation of the physical agent Wherein the host device is configured to maintain substantial equivalence between the physical states of the physical agents and the corresponding stored states of the stored virtual representations by a transmitting operation.
상기 호스트 디바이스가 상기 물리적 에이전트들의 상기 물리적 상태들 및 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 동작은:
상기 물리적 에이전트들의 상기 물리적 상태들을 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작을 더 포함하는, 시스템.The method according to claim 1,
Wherein the host device maintains substantial equivalence between the physical states of the physical agents and the corresponding stored states of the stored virtual representations comprising:
Adjusting the states of the virtual representations stored based on received signals representing the physical states of the physical agents; And
And adjusting the states of the virtual representations stored based on interactions between the virtual representations.
유사한 물리적 특성들을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 적어도 하나의 특성을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 상기 적어도 하나의 특성의 실질적인 차이를 반영하는, 시스템.The method of claim 2,
For two physical agents having similar physical characteristics, the virtual representations of the two physical agents have at least one characteristic that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in the at least one characteristic.
유사한 질량을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 질량을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 질량의 실질적인 차이를 반영하는, 시스템.The method of claim 2,
For two physical agents having similar masses, the virtual representations of the two physical agents have a mass that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in mass.
상기 호스트 디바이스가 상기 물리적 에이전트들의 상기 물리적 상태들 및 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 동작은:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작; 및
상기 물리적 에이전트들이 그것들의 물리적 상태들을 저장된 상기 가상 표현들의 상기 상태들에 합치하도록 변경하게 하기 위한 신호들을 송신하는 동작을 더 포함하는, 시스템.The method according to claim 1,
Wherein the host device maintains substantial equivalence between the physical states of the physical agents and the corresponding stored states of the stored virtual representations comprising:
Adjusting the states of the virtual representations stored based on interactions between the virtual representations; And
And sending signals to cause the physical agents to change their physical states to conform to the stored states of the stored virtual representations.
유사한 물리적 특성들을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 적어도 하나의 특성을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 상기 적어도 하나의 특성의 실질적인 차이를 반영하는, 시스템.The method of claim 5,
For two physical agents having similar physical characteristics, the virtual representations of the two physical agents have at least one characteristic that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in the at least one characteristic.
상기 호스트 디바이스가 상기 물리적 에이전트들의 상기 물리적 상태들 및 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 동작은:
상기 물리적 에이전트들의 상기 물리적 상태들을 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작을 더 포함하는, 시스템.The method according to claim 1,
Wherein the host device maintains substantial equivalence between the physical states of the physical agents and the corresponding stored states of the stored virtual representations comprising:
And adjusting the states of the virtual representations stored based on received signals representing the physical states of the physical agents.
상기 물리적 에이전트들은 모바일 에이전트들을 포함하고, 각각의 모바일 에이전트는:
상기 모바일 에이전트에 원동력을 부여하도록 구성되는, 추진 메커니즘;
상기 모바일 에이전트의 위치를 검출하도록 구성되는, 센서;
모바일 무선 트랜스시버; 및
상기 추진 메커니즘, 상기 센서, 및 상기 모바일 무선 트랜스시버에 작동가능하게 결합되는 마이크로컨트롤러로서, 상기 모바일 에이전트의 이동을 제어하도록 구성되는, 상기 마이크로컨트롤러를 포함하는, 시스템.The method according to claim 1,
The physical agents comprising mobile agents, each mobile agent comprising:
A propulsion mechanism configured to provide a motive force to the mobile agent;
A sensor configured to detect a position of the mobile agent;
Mobile wireless transceiver; And
A microcontroller operatively coupled to the propulsion mechanism, the sensor, and the mobile radio transceiver, the microcontroller being configured to control movement of the mobile agent.
표면 상의 위치들을 표시하는 복수의 기계-판독가능한 코드들을 가지는 구동가능한 표면을 더 포함하고;
상기 모바일 에이전트들은 상기 구동가능한 표면을 따라 이동하도록 구성되는 차량들을 포함하고, 상기 모바일 에이전트의 위치를 검출하는 각각의 모바일 에이전트의 상기 센서는 상기 차량이 상기 표면을 따라 이동함에 따라 상기 기계-판독가능한 코드들을 검출하는 상기 센서를 포함하는, 시스템.The method of claim 8,
Further comprising a driveable surface having a plurality of machine-readable codes indicative of positions on the surface;
Wherein the mobile agents include vehicles configured to move along the driveable surface and wherein the sensor of each mobile agent detecting the position of the mobile agent is responsive to movement of the vehicle along the surface, And the sensor for detecting codes.
상기 호스트 디바이스는 무선 트랜스시버를 포함하고,
신호들을 수신하는 상기 호스트 디바이스는 신호들을 수신하는 상기 무선 트랜스시버를 포함하며;
신호들을 송신하는 상기 호스트 디바이스는 신호들을 송신하는 상기 무선 트랜스시버를 포함하는, 시스템.The method according to claim 1,
The host device including a wireless transceiver,
The host device receiving signals comprises the wireless transceiver to receive signals;
Wherein the host device transmitting signals comprises the wireless transceiver transmitting signals.
각각의 컨트롤러는:
모바일 컴퓨팅 디바이스;
스마트폰;
태블릿 컴퓨터;
데스크탑 컴퓨터;
랩탑 컴퓨터;
비디오 게임 콘솔; 및
키오스크(kiosk)로 이루어진 그룹으로부터 선택되는 적어도 하나를 포함하고,
상기 호스트 디바이스는:
모바일 컴퓨팅 디바이스;
스마트폰;
태블릿 컴퓨터;
데스크탑 컴퓨터;
랩탑 컴퓨터;
비디오 게임 콘솔; 및
키오스크로 이루어진 그룹으로부터 선택되는 적어도 하나를 포함하는, 시스템.The method according to claim 1,
Each controller is:
Mobile computing devices;
Smartphone;
Tablet computer;
Desktop computers;
A laptop computer;
Video game consoles; And
At least one selected from the group consisting of kiosks,
The host device comprising:
Mobile computing devices;
Smartphone;
Tablet computer;
Desktop computers;
A laptop computer;
Video game consoles; And
A kiosk, and a kiosk.
상기 물리적 환경 내에 위치할 수 있는, 액세서리를 더 포함하고;
상기 호스트 디바이스는 상기 액세서리의 가상 표현을 저장하고, 상기 액세서리는 상기 물리적 에이전트들의 상기 가상 표현들의 상태에 영향을 미치기 위해 구성되며;
물리적 에이전트의 상기 가상 표현 및 상기 액세서리의 상기 가상 표현 간 상호작용에 반응하여, 상기 호스트 디바이스는 상기 물리적 에이전트가 그것의 물리적 상태를 상기 상호작용의 결과를 반영하도록 변경하게 하기 위한 신호를 송신하는, 시스템.The method according to claim 1,
The accessory being capable of being located within the physical environment;
The host device storing a virtual representation of the accessory, the accessory being configured to affect the state of the virtual representations of the physical agents;
Responsive to an interaction between the virtual representation of the physical agent and the virtual representation of the accessory, the host device sends a signal to cause the physical agent to change its physical state to reflect the result of the interaction. system.
상기 물리적 환경 내에 위치할 수 있고 액세서리 에이전트의 역학적 표현을 디스플레이하도록 구성되는, 모바일 컴퓨팅 디바이스를 더 포함하고;
상기 호스트 디바이스는 상기 액세서리 에이전트의 가상 표현을 저장하고, 상기 액세서리 에이전트의 상기 가상 표현은 상기 물리적 에이전트들의 가상 표현들과 상호작용을 위해 구성되며;
상기 액세서리 에이전트의 상기 가상 표현 및 물리적 에이전트의 상기 가상 표현 간 상호작용에 반응하여, 상기 호스트 디바이스는 상기 물리적 에이전트가 그것의 물리적 상태를 상기 상호작용의 결과를 반영하도록 변경하게 하기 위한 신호를 송신하는, 시스템.The method according to claim 1,
The mobile computing device being further configured to display an ephemeral representation of an accessory agent that can be located within the physical environment;
The host device storing a virtual representation of the accessory agent, the virtual representation of the accessory agent being configured for interaction with virtual representations of the physical agents;
Responsive to an interaction between the virtual representation of the accessory agent and the virtual representation of the physical agent, the host device sends a signal to cause the physical agent to change its physical state to reflect the result of the interaction , system.
적어도 하나의 컨트롤러는 상기 액세서리 에이전트를 제어하기 위한 사용자 입력을 수신하도록 구성되고, 상기 액세서리 에이전트를 제어하기 위한 신호들을 송신하도록 더 구성되며;
상기 호스트 디바이스는 상기 액세서리 에이전트를 제어하기 위한 신호를 수신하는 것에 반응하여 상기 액세서리 에이전트의 저장된 상기 가상 표현의 상기 상태를 조정하는, 시스템.14. The method of claim 13,
At least one controller is configured to receive a user input for controlling the accessory agent and is further configured to transmit signals for controlling the accessory agent;
Wherein the host device adjusts the state of the stored virtual representation of the accessory agent in response to receiving a signal for controlling the accessory agent.
상기 액세서리 에이전트는 무기를 포함하고, 상기 액세서리 에이전트의 상기 가상 표현은 물리적 에이전트의 가상 표현에 발포하기 위해 구성되는, 시스템.15. The method of claim 14,
Wherein the accessory agent comprises a weapon and the virtual representation of the accessory agent is configured to fire into a virtual representation of a physical agent.
상기 적어도 하나의 물리적 에이전트의 상기 가상 표현은 무기를 포함하고, 상기 물리적 에이전트의 상기 가상 표현은 다른 물리적 에이전트의 가상 표현에 발포하기 위해 구성되고;
발포된 에이전트의 가상 표현에 반응하여:
상기 호스트 디바이스는 상기 가상 표현이 마치 발포된 것처럼 반응하게 하며;
상기 호스트 디바이스는 대응하는 상기 물리적 에이전트가 그것의 물리적 상태를 마치 발포된 것처럼 반응하도록 변경하게 하기 위한 신호를 송신하는, 시스템.The method according to claim 1,
Wherein the virtual representation of the at least one physical agent comprises a weapon and the virtual representation of the physical agent is configured to fire into a virtual representation of another physical agent;
In response to the virtual representation of the sparked agent:
The host device causing the virtual representation to respond as if it were fired;
The host device sends a signal to cause the corresponding physical agent to change its physical state to respond as if it were foamed.
적어도 두 개의 컨트롤러들은 공통 물리적 에이전트를 제어하도록 구성되는, 시스템.The method according to claim 1,
Wherein the at least two controllers are configured to control a common physical agent.
상기 물리적 에이전트들 중 적어도 하나를 자동 방식으로 제어하도록 구성되는, 자동 컴퓨팅 시스템을 더 포함하고;
상기 물리적 에이전트들 중 적어도 하나는 상기 자동 컴퓨팅 시스템으로부터 신호들을 수신하고 수신된 상기 신호들에 반응하여 상기 물리적 환경에서 동작들을 수행하도록 구성되고, 상기 물리적 에이전트는 상기 자동 컴퓨팅 시스템에 의해 제어되지 않는 적어도 하나의 물리적 에이전트와 상호작용을 위해 구성되는, 시스템.The method according to claim 1,
Further comprising an automatic computing system configured to automatically control at least one of the physical agents;
Wherein at least one of the physical agents is configured to receive signals from the automatic computing system and to perform operations in the physical environment in response to the received signals, And is configured for interaction with one physical agent.
상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 신호들을 송신하는 상기 적어도 하나의 컨트롤러는 인터넷을 통해 신호들을 송신하는 상기 적어도 하나의 컨트롤러를 포함하는, 시스템.The method according to claim 1,
Wherein the at least one controller transmitting signals for controlling at least one of the physical agents comprises the at least one controller for transmitting signals over the Internet.
상기 물리적 에이전트들의 상기 가상 표현들의 상기 상태를 표시하는 신호들을 상기 호스트 디바이스로부터 수신하도록 구성되고, 수신된 상기 신호들에 기초하여 상기 물리적 에이전트들의 역학적 표현을 디스플레이하도록 더 구성되는, 적어도 하나의 디스플레이 디바이스를 더 포함하는, 시스템.The method according to claim 1,
Configured to receive signals indicative of the status of the virtual representations of the physical agents from the host device and to display a mechanical representation of the physical agents based on the received signals, ≪ / RTI >
상기 물리적 에이전트들 중 적어도 하나에 대해, 상기 호스트 디바이스가 상기 물리적 에이전트들의 상기 물리적 상태들 및 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 동작은:
상기 물리적 에이전트의 위치를 표시하는 신호를 상기 물리적 에이전트로부터 수신하는 동작; 및
상기 물리적 에이전트의 표시된 상기 위치에 합치하도록 상기 물리적 에이전트의 저장된 가상 표현의 위치를 조정하는 동작을 포함하는, 시스템.The method according to claim 1,
Wherein, for at least one of the physical agents, the host device maintains substantial equivalence between the physical states of the physical agents and the corresponding stored states of the stored virtual representations:
Receiving a signal from the physical agent indicating a location of the physical agent; And
And adjusting the location of the stored virtual representation of the physical agent to conform to the indicated location of the physical agent.
물리적 환경에서의 상기 물리적 에이전트들의 물리적 상태를 표시하는 신호들을 수신하는 단계;
상기 물리적 환경에서의 상기 물리적 에이전트들에 의해 취해질 물리적 동작들을 명시하는 신호들을 송신하는 단계;
상기 물리적 에이전트들의 가상 표현들을 저장하는 단계로서, 상기 물리적 에이전트들의 상기 가상 표현들은 서로 상호작용을 위해 구성되는, 상기 저장하는 단계; 및
상기 물리적 에이전트들 중 적어도 하나에 대해:
상기 물리적 에이전트의 위치를 표시하는 신호를 상기 물리적 에이전트로부터 수신하는 동작; 및
상기 물리적 에이전트의 저장된 가상 표현의 위치와 상이한 위치를 표시하는 수신된 상기 신호에 반응하여, 상기 물리적 에이전트가 그것의 위치를 상기 물리적 에이전트의 저장된 상기 가상 표현의 위치에 합치하도록 변경하게 하기 위한 신호를 송신하는 동작에 의해, 상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 단계를 수행하는 것을 포함하고,
상기 물리적 에이전트들은 사용자-작동 컨트롤러들로서 동작하는 모바일 컴퓨팅 디바이스들로부터 수신되는 신호들에 반응하여 물리적 동작들을 수행하도록 더 구성되는, 방법.CLAIMS 1. A method for using mobile computing devices for controlling physical agents in a robotic system, the physical agents being configured for interaction with one another, the method comprising:
Receiving signals indicative of a physical state of the physical agents in a physical environment;
Sending signals specifying physical actions to be taken by the physical agents in the physical environment;
Storing virtual representations of the physical agents, wherein the virtual representations of the physical agents are configured for interaction with one another; And
For at least one of the physical agents:
Receiving a signal from the physical agent indicating a location of the physical agent; And
A signal for causing the physical agent to change its position to coincide with the location of the stored virtual representation of the physical agent in response to the received signal indicating a location different than the location of the stored virtual representation of the physical agent Maintaining a substantially equivalent between the physical states of the physical agents and the corresponding stored states of the virtual agents by the transmitting operation,
Wherein the physical agents are further configured to perform physical operations in response to signals received from mobile computing devices operating as user-actuated controllers.
상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적인 동등성을 유지하는 단계는:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 더 포함하는, 방법.23. The method of claim 22,
Maintaining substantially equivalent between the physical state of the physical agent and the corresponding stored state of the virtual representation comprises:
Adjusting the state of the virtual representations stored based on received signals representing the physical state of the physical agents; And
And adjusting the state of the virtual representations stored based on interactions between the virtual representations.
상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적인 동등성을 유지하는 단계는:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하는 단계를 더 포함하는, 방법.23. The method of claim 22,
Maintaining substantially equivalent between the physical state of the physical agent and the corresponding stored state of the virtual representation comprises:
Adjusting the state of the virtual representations stored based on interactions between the virtual representations; And
And sending signals to cause the physical agents to change their physical state to match the state of the stored virtual representations.
상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적인 동등성을 유지하는 단계는:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 더 포함하는, 방법.23. The method of claim 22,
Maintaining substantially equivalent between the physical state of the physical agent and the corresponding stored state of the virtual representation comprises:
Further comprising adjusting the state of the virtual representations stored based on received signals indicative of the physical state of the physical agents.
호스트 디바이스에서 적어도 하나의 프로세서가:
물리적 환경에서의 상기 물리적 에이전트들의 물리적 상태를 표시하는 신호들을 수신하는 단계;
상기 물리적 환경에서의 상기 물리적 에이전트들에 의해 취해질 물리적 동작들을 명시하는 신호들을 송신하는 단계;
서로 상호작용을 위해 구성되는 상기 물리적 에이전트들의 가상 표현들을 저장하는 단계; 및
상기 물리적 에이전트들 중 적어도 하나에 대해:
상기 물리적 에이전트의 위치를 표시하는 신호를 상기 물리적 에이전트로부터 수신하는 동작; 및
상기 물리적 에이전트의 저장된 가상 표현의 위치와 상이한 위치를 표시하는 수신된 상기 신호에 반응하여, 상기 물리적 에이전트가 그것의 위치를 상기 물리적 에이전트의 저장된 상기 가상 표현의 위치에 합치하도록 변경하게 하기 위한 신호를 송신하는 동작에 의해, 상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 단계를 수행하게 하도록 구성되는, 상기 매체 상에 인코딩되는, 컴퓨터-실행가능한 명령이고,
상기 물리적 에이전트들은 사용자-작동 컨트롤러들로서 동작하는 모바일 컴퓨팅 디바이스들로부터 수신되는 신호들에 반응하여 물리적 동작들을 수행하도록 더 구성되는, 비-일시적 컴퓨터-판독가능한 저장 매체.17. A non-transitory computer-readable storage medium storing computer-executable instructions for controlling physical agents in a robotic system using mobile computing devices, the physical agents being configured to interact with one another, the computer- The command is:
At least one processor in a host device is:
Receiving signals indicative of a physical state of the physical agents in a physical environment;
Sending signals specifying physical actions to be taken by the physical agents in the physical environment;
Storing virtual representations of the physical agents configured for interaction with one another; And
For at least one of the physical agents:
Receiving a signal from the physical agent indicating a location of the physical agent; And
A signal for causing the physical agent to change its position to coincide with the location of the stored virtual representation of the physical agent in response to the received signal indicating a location different than the location of the stored virtual representation of the physical agent The method comprising the steps of: maintaining, by an act of transmitting, substantially equivalent between the physical states of the physical agents and the corresponding states of the corresponding stored virtual representations of the physical agents; Computer-executable instructions,
Wherein the physical agents are further configured to perform physical operations in response to signals received from mobile computing devices operating as user-actuated controllers.
적어도 하나의 프로세서가 상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적 동등성을 유지하게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 더 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.27. The method of claim 26,
Wherein the at least one processor is configured to maintain substantial equivalence between the physical state of the physical agent and the corresponding stored state of the virtual representation of the physical agent,
Adjusting the state of the virtual representations stored based on received signals representing the physical state of the physical agents; And
Further comprising computer-executable instructions configured to perform the step of adjusting the state of the virtual representations stored based on interactions between the virtual representations.
적어도 하나의 프로세서가 상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적 동등성을 유지하게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 더 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.27. The method of claim 26,
Wherein the at least one processor is configured to maintain substantial equivalence between the physical state of the physical agent and the corresponding stored state of the virtual representation of the physical agent,
Adjusting the state of the virtual representations stored based on interactions between the virtual representations; And
Further comprising computer-executable instructions configured to cause the physical agents to send signals to cause their physical state to change to conform to the state of the stored stored virtual representations, Possible storage medium.
적어도 하나의 프로세서가 상기 물리적 에이전트의 상기 물리적 상태 및 대응하는 저장된 상기 가상 표현의 상기 상태 간 실질적 동등성을 유지하게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 더 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.27. The method of claim 26,
Wherein the at least one processor is configured to maintain substantial equivalence between the physical state of the physical agent and the corresponding stored state of the virtual representation of the physical agent,
Further comprising computer-executable instructions configured to perform the step of adjusting the state of the virtual representations stored based on received signals indicative of the physical state of the physical agents. Possible storage medium.
신호들을 수신하고;
수신된 상기 신호들에 반응하여 물리적 환경에서 동작들을 수행하며;
상기 물리적 환경에서의 상기 물리적 에이전트의 상태를 표시하는 신호들을 송신하도록 구성되는, 상기 복수의 물리적 에이전트들;
적어도 하나의 컨트롤러로서, 상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 사용자 입력을 수신하도록 구성되고, 상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 신호들을 송신하도록 더 구성되는, 상기 적어도 하나의 컨트롤러; 및
호스트 디바이스로서:
상기 물리적 에이전트들의 물리적 상태를 표시하는 신호들을 수신하고;
상기 물리적 에이전트들에 의해 취해질 동작들을 명시하는 신호들을 송신하고;
서로 상호작용을 위해 구성되는 상기 물리적 에이전트들의 가상 표현들을 저장하며;
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하도록 구성되는, 상기 호스트 디바이스를 포함하고;
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 동작은:
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 차이가 존재하는지 여부를 결정하는 동작; 및
차이에 반응하여:
상기 차이를 감소시키기 위해 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 상기 적어도 하나의 물리적 에이전트에 송신하는 동작; 및
상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변형하는 동작으로 이루어진 그룹으로부터 선택되는 적어도 하나의 동작을 수행함으로써 상기 차이를 자동으로 감소시키는 동작을 포함하는 시스템.A plurality of physical agents, wherein the physical agents are configured for interaction with one another, each physical agent comprising:
Receiving signals;
Perform operations in a physical environment in response to the received signals;
The plurality of physical agents being configured to transmit signals indicative of the status of the physical agent in the physical environment;
At least one controller, wherein the at least one controller is further configured to receive user input for controlling at least one of the physical agents, and to transmit signals for controlling at least one of the physical agents; And
As a host device:
Receive signals indicative of a physical state of the physical agents;
Transmit signals that specify actions to be taken by the physical agents;
Store virtual representations of the physical agents configured for interaction with one another;
Wherein the host device is configured to maintain substantial equivalence between the physical states of the physical agents and the corresponding stored states of the physical agents;
Maintaining substantially equivalent between said physical states of said physical agents and said corresponding states of said virtual representations of said physical agents comprising:
Determining whether there is a difference between the physical states of the physical agents and the corresponding stored states of the virtual agents; And
In response to the difference:
Sending a signal to the at least one physical agent to change the physical state of the at least one physical agent to reduce the difference; And
And automatically modifying the difference by performing at least one action selected from the group consisting of modifying at least one stored virtual representation of the physical agent to reduce the difference.
상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변형하는 동작은:
상기 물리적 에이전트들의 상기 물리적 상태들을 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작을 포함하며;
상기 차이를 감소시키기 위해 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 상기 적어도 하나의 물리적 에이전트에 송신하는 동작은, 상기 물리적 에이전트들이 그것들의 물리적 상태들을 저장된 상기 가상 표현들의 상기 상태들에 합치하도록 변경하게 하기 위한 신호들을 송신하는 동작을 포함하는, 시스템.32. The method of claim 30,
The act of modifying at least one stored virtual representation of a physical agent to reduce the difference comprises:
Adjusting the states of the virtual representations stored based on received signals representing the physical states of the physical agents; And
Adjusting the states of the virtual representations stored based on interactions between the virtual representations;
Wherein the act of sending a signal to the at least one physical agent to change the physical state of the at least one physical agent to reduce the difference is characterized in that the physical agents send their physical states to the states And sending signals to cause the device to change to conform to a predetermined condition.
유사한 물리적 특성들을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 적어도 하나의 특성을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 상기 적어도 하나의 특성의 실질적인 차이를 반영하는, 시스템.32. The method of claim 31,
For two physical agents having similar physical characteristics, the virtual representations of the two physical agents have at least one characteristic that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in the at least one characteristic.
유사한 질량을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 질량을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 질량의 실질적인 차이를 반영하는, 시스템.32. The method of claim 31,
For two physical agents having similar masses, the virtual representations of the two physical agents have a mass that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in mass.
상기 차이를 자동으로 감소시키는 동작은:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작; 및
상기 물리적 에이전트들이 그것들의 물리적 상태들을 저장된 상기 가상 표현들의 상기 상태들에 합치하도록 변경하게 하기 위한 신호들을 송신하는 동작을 포함하는, 시스템.32. The method of claim 30,
The operation of automatically reducing the difference is:
Adjusting the states of the virtual representations stored based on interactions between the virtual representations; And
And sending signals to cause the physical agents to change their physical states to conform to the stored states of the stored virtual representations.
유사한 물리적 특성들을 가지는 두 개의 물리적 에이전트들에 대해, 상기 두 개의 물리적 에이전트들의 상기 가상 표현들은 서로 실질적으로 상이한 적어도 하나의 특성을 가지고;
상기 물리적 에이전트들의 상기 가상 표현들 간 상기 상호작용은 상기 적어도 하나의 특성의 실질적인 차이를 반영하는, 시스템.35. The method of claim 34,
For two physical agents having similar physical characteristics, the virtual representations of the two physical agents have at least one characteristic that is substantially different from each other;
Wherein the interaction between the virtual representations of the physical agents reflects a substantial difference in the at least one characteristic.
상기 차이를 자동으로 감소시키는 동작은:
상기 물리적 에이전트들의 상기 물리적 상태들을 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태들을 조정하는 동작을 포함하는, 시스템.32. The method of claim 30,
The operation of automatically reducing the difference is:
And adjusting the states of the virtual representations stored based on received signals representing the physical states of the physical agents.
상기 물리적 에이전트들은 모바일 에이전트들을 포함하고, 각각의 모바일 에이전트는:
상기 모바일 에이전트에 원동력을 부여하도록 적응되는, 추진 메커니즘;
상기 모바일 에이전트의 위치를 검출하도록 구성되는, 센서;
모바일 무선 트랜스시버; 및
상기 추진 메커니즘, 상기 센서, 및 상기 모바일 무선 트랜스시버에 작동가능하게 결합되는 마이크로컨트롤러로서, 상기 모바일 에이전트의 이동을 제어하도록 구성되는, 상기 마이크로컨트롤러를 포함하는, 시스템.32. The method of claim 30,
The physical agents comprising mobile agents, each mobile agent comprising:
A propulsion mechanism adapted to power the mobile agent;
A sensor configured to detect a position of the mobile agent;
Mobile wireless transceiver; And
A microcontroller operatively coupled to the propulsion mechanism, the sensor, and the mobile radio transceiver, the microcontroller being configured to control movement of the mobile agent.
표면 상의 위치들을 표시하는 복수의 기계-판독가능한 코드들을 가지는 구동가능한 표면을 더 포함하고;
상기 모바일 에이전트들은 상기 구동가능한 표면을 따라 이동하도록 구성되는 차량들을 포함하고, 상기 모바일 에이전트의 위치를 검출하는 각각의 모바일 에이전트의 상기 센서는 상기 차량이 상기 표면을 따라 이동함에 따라 상기 기계-판독가능한 코드들을 검출하는 상기 센서를 포함하는, 시스템.37. The method of claim 37,
Further comprising a driveable surface having a plurality of machine-readable codes indicative of positions on the surface;
Wherein the mobile agents include vehicles configured to move along the driveable surface and wherein the sensor of each mobile agent detecting the position of the mobile agent is responsive to movement of the vehicle along the surface, And the sensor for detecting codes.
상기 호스트 디바이스는 무선 트랜스시버를 포함하고,
신호들을 수신하는 상기 호스트 디바이스는 신호들을 수신하는 상기 무선 트랜스시버를 포함하며;
신호들을 송신하는 상기 호스트 디바이스는 신호들을 송신하는 상기 무선 트랜스시버를 포함하는, 시스템.32. The method of claim 30,
The host device including a wireless transceiver,
The host device receiving signals comprises the wireless transceiver to receive signals;
Wherein the host device transmitting signals comprises the wireless transceiver transmitting signals.
각각의 컨트롤러는:
모바일 컴퓨팅 디바이스;
스마트폰;
태블릿 컴퓨터;
데스크탑 컴퓨터;
랩탑 컴퓨터;
비디오 게임 콘솔; 및
키오스크(kiosk)로 이루어진 그룹으로부터 선택되는 적어도 하나를 포함하고,
상기 호스트 디바이스는:
모바일 컴퓨팅 디바이스;
스마트폰;
태블릿 컴퓨터;
데스크탑 컴퓨터;
랩탑 컴퓨터;
비디오 게임 콘솔; 및
키오스크로 이루어진 그룹으로부터 선택되는 적어도 하나를 포함하는, 시스템.32. The method of claim 30,
Each controller is:
Mobile computing devices;
Smartphone;
Tablet computer;
Desktop computers;
A laptop computer;
Video game consoles; And
At least one selected from the group consisting of kiosks,
The host device comprising:
Mobile computing devices;
Smartphone;
Tablet computer;
Desktop computers;
A laptop computer;
Video game consoles; And
A kiosk, and a kiosk.
상기 물리적 환경 내에 위치할 수 있는, 액세서리를 더 포함하고;
상기 호스트 디바이스는 상기 액세서리의 가상 표현을 저장하고, 상기 액세서리는 상기 물리적 에이전트들의 상기 가상 표현들의 상태에 영향을 미치도록 구성되며;
물리적 에이전트의 상기 가상 표현 및 상기 액세서리의 상기 가상 표현 간 상호작용에 반응하여, 상기 호스트 디바이스는 상기 물리적 에이전트가 그것의 물리적 상태를 상기 상호작용의 결과를 반영하도록 변경하게 하기 위한 신호를 송신하는, 시스템.32. The method of claim 30,
The accessory being capable of being located within the physical environment;
The host device storing a virtual representation of the accessory, the accessory being configured to affect the state of the virtual representations of the physical agents;
Responsive to an interaction between the virtual representation of the physical agent and the virtual representation of the accessory, the host device sends a signal to cause the physical agent to change its physical state to reflect the result of the interaction. system.
적어도 하나의 컨트롤러는 액세서리 에이전트를 제어하기 위한 사용자 입력을 수신하도록 구성되고, 상기 액세서리 에이전트를 제어하기 위한 신호들을 송신하도록 더 구성되며;
상기 호스트 디바이스는 상기 액세서리 에이전트를 제어하기 위한 신호를 수신하는 것에 반응하여 상기 액세서리 에이전트의 저장된 상기 가상 표현의 상기 상태를 조정하는, 시스템.42. The method of claim 41,
Wherein the at least one controller is configured to receive user input for controlling an accessory agent and is further configured to transmit signals for controlling the accessory agent;
Wherein the host device adjusts the state of the stored virtual representation of the accessory agent in response to receiving a signal for controlling the accessory agent.
상기 액세서리 에이전트는 무기를 포함하고, 상기 액세서리 에이전트의 상기 가상 표현은 물리적 에이전트의 가상 표현에 발포를 위해 구성되는, 시스템.43. The method of claim 42,
Wherein the accessory agent comprises a weapon and the virtual representation of the accessory agent is configured for foaming in a virtual representation of a physical agent.
상기 물리적 환경 내에 위치할 수 있고 액세서리 에이전트의 역학적 표현을 디스플레이하도록 구성되는, 모바일 컴퓨팅 디바이스를 더 포함하고;
상기 호스트 디바이스는 상기 액세서리 에이전트의 가상 표현을 저장하며, 상기 액세서리 에이전트의 상기 가상 표현은 상기 물리적 에이전트들의 가상 표현들과 상호작용을 위해 구성되며;
상기 액세서리 에이전트의 상기 가상 표현 및 물리적 에이전트의 상기 가상 표현 간 상호작용에 반응하여, 상기 호스트 디바이스는 상기 물리적 에이전트가 그것의 물리적 상태를 상기 상호작용의 결과를 반영하도록 변경하게 하기 위한 신호를 송신하는, 시스템.32. The method of claim 30,
The mobile computing device being further configured to display an ephemeral representation of an accessory agent that can be located within the physical environment;
The host device storing a virtual representation of the accessory agent, the virtual representation of the accessory agent being configured for interaction with virtual representations of the physical agents;
Responsive to an interaction between the virtual representation of the accessory agent and the virtual representation of the physical agent, the host device sends a signal to cause the physical agent to change its physical state to reflect the result of the interaction , system.
상기 적어도 하나의 물리적 에이전트의 상기 가상 표현은 무기를 포함하고, 상기 물리적 에이전트의 상기 가상 표현은 다른 물리적 에이전트의 가상 표현에 발포하도록 구성되고;
발포된 에이전트의 가상 표현에 반응하여:
상기 호스트 디바이스는 상기 가상 표현이 마치 발포된 것처럼 반응하게 하며;
상기 호스트 디바이스는 대응하는 상기 물리적 에이전트가 그것의 물리적 상태를 마치 발포된 것처럼 반응하도록 변경하게 하기 위한 신호를 송신하는, 시스템.32. The method of claim 30,
Wherein the virtual representation of the at least one physical agent comprises a weapon and the virtual representation of the physical agent is configured to fire into a virtual representation of another physical agent;
In response to the virtual representation of the sparked agent:
The host device causing the virtual representation to respond as if it were fired;
The host device sends a signal to cause the corresponding physical agent to change its physical state to respond as if it were foamed.
적어도 두 개의 컨트롤러들은 공통 물리적 에이전트를 제어하도록 구성되는, 시스템.32. The method of claim 30,
Wherein the at least two controllers are configured to control a common physical agent.
상기 물리적 에이전트들 중 적어도 하나를 자동 방식으로 제어하도록 구성되는, 자동 컴퓨팅 시스템을 더 포함하고;
상기 물리적 에이전트들 중 적어도 하나는 상기 자동 컴퓨팅 시스템으로부터 신호들을 수신하고 수신된 상기 신호들에 반응하여, 상기 물리적 환경에서 동작들을 수행하도록 구성되고, 상기 물리적 에이전트는 상기 자동 컴퓨팅 시스템에 의해 제어되지 않는 적어도 하나의 물리적 에이전트와 상호작용을 위해 구성되는, 시스템.32. The method of claim 30,
Further comprising an automatic computing system configured to automatically control at least one of the physical agents;
Wherein at least one of the physical agents is configured to receive signals from the automated computing system and to perform operations in the physical environment in response to the received signals, And is configured for interaction with at least one physical agent.
상기 물리적 에이전트들 중 적어도 하나를 제어하기 위한 신호들을 송신하는 상기 적어도 하나의 컨트롤러는 인터넷을 통해 신호들을 송신하는 상기 적어도 하나의 컨트롤러를 포함하는, 시스템.32. The method of claim 30,
Wherein the at least one controller transmitting signals for controlling at least one of the physical agents comprises the at least one controller for transmitting signals over the Internet.
상기 물리적 에이전트들의 상기 가상 표현들의 상기 상태를 표시하는 신호를 상기 호스트 디바이스로부터 수신하도록 구성되고, 수신된 상기 신호들에 기초하여 상기 물리적 에이전트들의 역학적 표현을 디스플레이하도록 더 구성되는, 적어도 하나의 디스플레이 디바이스를 더 포함하는, 시스템.32. The method of claim 30,
Configured to receive a signal from the host device indicating the status of the virtual representations of the physical agents, and to display a mechanical representation of the physical agents based on the received signals. ≪ / RTI >
차이가 존재하는지 여부를 결정하는 동작은 위치를 표시하는 신호를 물리적 에이전트로부터 수신하는 동작을 포함하며;
상기 차이를 자동으로 감소시키는 동작은 상기 물리적 에이전트의 표시된 상기 위치에 합치하도록 상기 물리적 에이전트의 저장된 가상 표현의 위치를 조정하는 동작을 포함하는, 시스템.32. The method of claim 30,
The act of determining whether a difference exists includes receiving a signal indicative of the position from a physical agent;
Wherein the act of automatically reducing the difference comprises adjusting the position of the stored virtual representation of the physical agent to conform to the indicated location of the physical agent.
물리적 환경에서의 상기 물리적 에이전트들의 물리적 상태를 표시하는 신호들을 수신하는 단계;
상기 물리적 환경에서의 상기 물리적 에이전트들에 의해 취해질 물리적 동작들을 명시하는 신호들을 송신하는 단계;
상기 물리적 에이전트들의 가상 표현들을 저장하는 단계로서, 상기 물리적 에이전트들의 상기 가상 표현들은 서로 상호작용을 위해 구성되는, 상기 저장하는 단계; 및
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 단계를 수행하는 것을 포함하고,
상기 물리적 에이전트들은 사용자-작동 컨트롤러들로서 동작하는 모바일 컴퓨팅 디바이스들로부터 수신되는 신호들에 반응하여 물리적 동작들을 수행하도록 더 구성되며,
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들 간 실질적인 동등성을 유지하는 단계는:
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 차이가 존재하는지 여부를 결정하는 단계; 및
차이에 반응하여:
상기 차이를 감소시키기 위해 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 상기 적어도 하나의 물리적 에이전트에 송신하는 단계; 및
상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변형하는 단계로 이루어진 그룹으로부터 선택되는 적어도 하나의 단계를 수행함으로써 상기 차이를 자동으로 감소시키는 단계를 포함하는, 방법.CLAIMS 1. A method for using mobile computing devices for controlling physical agents in a robotic system, the physical agents being configured for interaction with one another, the method comprising:
Receiving signals indicative of a physical state of the physical agents in a physical environment;
Sending signals specifying physical actions to be taken by the physical agents in the physical environment;
Storing virtual representations of the physical agents, wherein the virtual representations of the physical agents are configured for interaction with one another; And
And maintaining substantially equivalent between the physical states of the physical agents and the corresponding stored states of the physical agents,
The physical agents are further configured to perform physical operations in response to signals received from mobile computing devices operating as user-actuated controllers,
Maintaining substantial equivalence between the physical states of the physical agents and the corresponding stored virtual representations of the physical agents comprising:
Determining whether there is a difference between the physical states of the physical agents and the corresponding stored states of the virtual agents; And
In response to the difference:
Sending a signal to the at least one physical agent to change the physical state of the at least one physical agent to reduce the difference; And
And modifying at least one stored virtual representation of the physical agent to reduce the difference. ≪ Desc / Clms Page number 22 >
상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변형하는 단계는:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 포함하며;
상기 차이를 감소시키기 위해 상기 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 적어도 하나의 물리적 에이전트로 송신하는 단계는 상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하는 단계를 포함하는, 방법.54. The method of claim 51,
Wherein modifying the at least one stored virtual representation of the physical agent to reduce the difference comprises:
Adjusting the state of the virtual representations stored based on received signals representing the physical state of the physical agents; And
Adjusting the state of the virtual representations stored based on interactions between the virtual representations;
Wherein the step of transmitting a signal to the at least one physical agent to change the physical state of the at least one physical agent to reduce the difference causes the physical agents to match their physical state to the stored state of the stored virtual representations ≪ / RTI > the method comprising:
상기 차이를 자동으로 감소시키는 단계는:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하는 단계를 포함하는, 방법.54. The method of claim 51,
The step of automatically reducing the difference comprises:
Adjusting the state of the virtual representations stored based on interactions between the virtual representations; And
And sending signals to cause the physical agents to change their physical state to conform to the state of the stored virtual representations.
상기 차이를 자동으로 감소시키는 단계는:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 포함하는, 방법.54. The method of claim 51,
The step of automatically reducing the difference comprises:
And adjusting the state of the virtual representations stored based on received signals indicative of the physical state of the physical agents.
호스트 디바이스에서 적어도 하나의 프로세서가:
물리적 환경에서의 상기 물리적 에이전트들의 물리적 상태를 표시하는 신호들을 수신하는 단계;
상기 물리적 환경에서의 상기 물리적 에이전트들에 의해 취해질 물리적 동작들을 명시하는 신호들을 송신하는 단계;
상기 물리적 에이전트들의 가상 표현들을 저장하는 단계로서, 상기 물리적 에이전트들의 가상 표현들은 서로 상호작용을 위해 구성되는, 상기 저장하는 단계; 및
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하는 단계를 수행하게 하도록 구성되는, 상기 매체 상에 인코딩되는, 컴퓨터-실행가능한 명령이고,
상기 물리적 에이전트들은 사용자-작동 컨트롤러들로서 동작하는 모바일 컴퓨팅 디바이스들로부터 수신되는 신호들에 반응하여 물리적 동작들을 수행하도록 더 구성되며;
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 실질적인 동등성을 유지하도록 구성되는 상기 컴퓨터-실행가능한 명령은:
상기 물리적 에이전트들의 상기 물리적 상태들 및 상기 물리적 에이전트들의 대응하는 저장된 상기 가상 표현들의 상기 상태들 간 차이가 있는지 여부를 결정하는 단계; 및
차이에 반응하여:
상기 차이를 감소시키기 위해 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 상기 적어도 하나의 물리적 에이전트에 송신하는 단계; 및
상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변형하는 단계로 이루어진 그룹으로부터 선택되는 적어도 하나의 단계를 수행함으로써 상기 차이를 자동으로 감소시키는 단계를 수행하도록 구성되는 컴퓨터-실행가능한 명령을 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.17. A non-transitory computer-readable storage medium storing computer-executable instructions for controlling physical agents in a robotic system using mobile computing devices, the physical agents being configured to interact with one another, the computer- The command is:
At least one processor in a host device is:
Receiving signals indicative of a physical state of the physical agents in a physical environment;
Sending signals specifying physical actions to be taken by the physical agents in the physical environment;
Storing virtual representations of the physical agents, wherein the virtual representations of the physical agents are configured for interaction with one another; And
And to maintain substantially equivalent between the physical states of the physical agents and the corresponding stored states of the physical agents, the computer-executable instructions being encoded on the medium ,
Wherein the physical agents are further configured to perform physical operations in response to signals received from mobile computing devices operating as user-actuated controllers;
The computer-executable instructions being configured to maintain substantial equivalence between the physical states of the physical agents and the corresponding stored states of the physical agents,
Determining whether there is a difference between the physical states of the physical agents and the corresponding stored states of the virtual agents; And
In response to the difference:
Sending a signal to the at least one physical agent to change the physical state of the at least one physical agent to reduce the difference; And
And modifying the at least one stored virtual representation of the physical agent to reduce the difference. The computer-executable instructions configured to perform the step of automatically reducing the difference by performing at least one step selected from the group consisting of: Gt; computer-readable < / RTI > storage medium.
적어도 하나의 프로세서가 상기 차이를 감소시키기 위해 물리적 에이전트의 적어도 하나의 저장된 가상 표현을 변경하게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 포함하며;
상기 차이를 감소시키기 위해 상기 적어도 하나의 물리적 에이전트의 상기 물리적 상태를 변경하기 위한 신호를 적어도 하나의 물리적 에이전트로 송신하도록 구성되는 상기 컴퓨터-실행가능한 명령은 상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하도록 구성되는 컴퓨터-실행가능한 명령을 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.55. The method of claim 55,
The computer-executable instructions configured to cause at least one processor to change at least one stored virtual representation of a physical agent to reduce the difference comprises: at least one processor configured to:
Adjusting the state of the virtual representations stored based on received signals representing the physical state of the physical agents; And
And adjusting the state of the stored virtual representations based on interactions between the virtual representations;
Wherein the computer-executable instructions configured to send a signal to at least one physical agent to change the physical state of the at least one physical agent to reduce the difference, Computer-executable instructions configured to send signals to cause the computer to change to conform to the state of the virtual representations.
상기 적어도 하나의 프로세서가 상기 차이를 자동으로 감소시키게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 가상 표현들 간 상호작용들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계; 및
상기 물리적 에이전트들이 그것들의 물리적 상태를 저장된 상기 가상 표현들의 상기 상태에 합치하도록 변경하게 하기 위한 신호들을 송신하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.55. The method of claim 55,
The computer-executable instructions configured to cause the at least one processor to automatically reduce the difference comprises: at least one processor:
Adjusting the state of the virtual representations stored based on interactions between the virtual representations; And
And to send signals to cause the physical agents to change their physical state to conform to the state of the stored stored virtual expressions. ≪ RTI ID = 0.0 > Storage medium.
적어도 하나의 프로세서가 상기 차이를 자동으로 감소시키게 하도록 구성되는 상기 컴퓨터-실행가능한 명령은 적어도 하나의 프로세서가:
상기 물리적 에이전트들의 상기 물리적 상태를 표시하는 수신된 신호들에 기초하여 저장된 상기 가상 표현들의 상기 상태를 조정하는 단계를 수행하게 하도록 구성되는 컴퓨터-실행가능한 명령을 포함하는, 비-일시적 컴퓨터-판독가능한 저장 매체.55. The method of claim 55,
Wherein the computer-executable instructions configured to cause at least one processor to automatically reduce the difference comprises: at least one processor:
And computer-executable instructions configured to perform the step of adjusting the state of the virtual representations stored based on received signals indicative of the physical state of the physical agents. Storage medium.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261693687P | 2012-08-27 | 2012-08-27 | |
US61/693,687 | 2012-08-27 | ||
PCT/US2013/054388 WO2014035640A1 (en) | 2012-08-27 | 2013-08-09 | Integration of a robotic system with one or more mobile computing devices |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150046302A KR20150046302A (en) | 2015-04-29 |
KR101793189B1 true KR101793189B1 (en) | 2017-11-02 |
Family
ID=50184133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157007769A KR101793189B1 (en) | 2012-08-27 | 2013-08-09 | Integration of a robotic system with one or more mobile computing devices |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP2888712A4 (en) |
JP (2) | JP6067120B2 (en) |
KR (1) | KR101793189B1 (en) |
CN (1) | CN104662578B (en) |
AU (1) | AU2013309312B2 (en) |
CA (1) | CA2882099C (en) |
DE (1) | DE112013004190T5 (en) |
GB (1) | GB2519903A (en) |
HK (2) | HK1207459A1 (en) |
WO (1) | WO2014035640A1 (en) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2482119B (en) | 2010-07-19 | 2013-01-23 | China Ind Ltd | Racing vehicle game |
CN106292356B (en) * | 2015-06-09 | 2019-03-29 | 联想(北京)有限公司 | A kind of robot control method and electronic equipment |
DE102015121892A1 (en) * | 2015-12-15 | 2017-06-22 | Viessmann Modelltechnik Gmbh | Speed controller for a model railway, control device and model railway |
MX2018009464A (en) * | 2016-02-02 | 2019-05-06 | Deka Products Lp | Modular electro-mechanical agent. |
CN106474743B (en) * | 2016-12-28 | 2022-05-06 | 赵红领 | Control method of intelligent track code scanning racing toy car |
US10686883B2 (en) * | 2017-07-07 | 2020-06-16 | Hewlett Packard Enterprise Development Lp | Bluetooth low energy devices |
CN107368029B (en) * | 2017-08-24 | 2019-08-27 | 关磊 | Gravity racing car gunnery system |
JP6948409B2 (en) | 2018-01-16 | 2021-10-13 | 株式会社ソニー・インタラクティブエンタテインメント | Information processing device and image generation method |
US11780084B2 (en) | 2018-01-16 | 2023-10-10 | Sony Interactive Entertainment Inc. | Robotic device, control method for robotic device, and program |
WO2019142227A1 (en) | 2018-01-16 | 2019-07-25 | 株式会社ソニー・インタラクティブエンタテインメント | Mobile body and mobile body control method |
SG10201804153SA (en) * | 2018-05-16 | 2018-11-29 | Voyager Innovations Inc | System and method for determining an outcome associated with an event |
CN108854070A (en) * | 2018-06-15 | 2018-11-23 | 网易(杭州)网络有限公司 | Information cuing method, device and storage medium in game |
US11769422B2 (en) | 2018-08-10 | 2023-09-26 | Kawasaki Jukogyo Kabushiki Kaisha | Information processing device, robot manipulating system and robot manipulating method |
CN109782737A (en) * | 2019-01-28 | 2019-05-21 | 平安科技(深圳)有限公司 | Unmanned vehicle analog detection method and system |
GB201906813D0 (en) * | 2019-05-16 | 2019-06-26 | Roboraca Ltd | Metaverse |
KR102324845B1 (en) * | 2019-10-02 | 2021-11-11 | (주)케이시크 | User game connected self-driving method and system |
US20240350902A1 (en) * | 2021-08-30 | 2024-10-24 | Lego A/S | System and method for augmented reality for a moveable real-world object |
WO2023186290A1 (en) * | 2022-03-30 | 2023-10-05 | Telefonaktiebolaget Lm Ericsson (Publ) | A computer software module arrangement, a circuitry arrangement, an arrangement and a method for providing a virtual display for simultaneous display of representations of real life objects at different physical locations |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100203933A1 (en) * | 2007-05-31 | 2010-08-12 | Sony Computer Entertainment Europe Limited | Entertainment system and method |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10244A (en) * | 1853-11-15 | Improvement in uniting shovel-blades to the handle-straps | ||
JP2001022264A (en) * | 1999-07-12 | 2001-01-26 | Sony Corp | Simulation device |
US8160994B2 (en) * | 1999-07-21 | 2012-04-17 | Iopener Media Gmbh | System for simulating events in a real environment |
DE69937058T2 (en) * | 1999-10-26 | 2008-05-29 | Sony France S.A. | Method and system for agent transfer for a robot |
US6491566B2 (en) * | 2001-03-26 | 2002-12-10 | Intel Corporation | Sets of toy robots adapted to act in concert, software and methods of playing with the same |
GB2385238A (en) * | 2002-02-07 | 2003-08-13 | Hewlett Packard Co | Using virtual environments in wireless communication systems |
US7090576B2 (en) * | 2003-06-30 | 2006-08-15 | Microsoft Corporation | Personalized behavior of computer controlled avatars in a virtual reality environment |
US7704119B2 (en) * | 2004-02-19 | 2010-04-27 | Evans Janet E | Remote control game system with selective component disablement |
US20060223637A1 (en) * | 2005-03-31 | 2006-10-05 | Outland Research, Llc | Video game system combining gaming simulation with remote robot control and remote robot feedback |
US8287372B2 (en) * | 2006-09-28 | 2012-10-16 | Mattel, Inc. | Interactive toy and display system |
KR100842566B1 (en) * | 2007-02-01 | 2008-07-01 | 삼성전자주식회사 | Method and apparatus for controlling robot using motion of mobile terminal |
US20090265642A1 (en) * | 2008-04-18 | 2009-10-22 | Fuji Xerox Co., Ltd. | System and method for automatically controlling avatar actions using mobile sensors |
CN101732858B (en) * | 2008-11-11 | 2013-10-30 | 盛乐信息技术(上海)有限公司 | Real and virtual combined networking game system and realizing method thereof |
DK2435149T3 (en) * | 2009-05-28 | 2015-09-21 | Anki Inc | Distributed system for autonomous control of toy cars |
US20120190453A1 (en) * | 2011-01-25 | 2012-07-26 | Bossa Nova Robotics Ip, Inc. | System and method for online-offline interactive experience |
-
2013
- 2013-08-09 KR KR1020157007769A patent/KR101793189B1/en active IP Right Grant
- 2013-08-09 WO PCT/US2013/054388 patent/WO2014035640A1/en active Application Filing
- 2013-08-09 AU AU2013309312A patent/AU2013309312B2/en active Active
- 2013-08-09 EP EP13834203.5A patent/EP2888712A4/en not_active Withdrawn
- 2013-08-09 GB GB1503471.3A patent/GB2519903A/en not_active Withdrawn
- 2013-08-09 JP JP2015529831A patent/JP6067120B2/en active Active
- 2013-08-09 CN CN201380050215.8A patent/CN104662578B/en active Active
- 2013-08-09 CA CA2882099A patent/CA2882099C/en active Active
- 2013-08-09 DE DE112013004190.1T patent/DE112013004190T5/en not_active Withdrawn
-
2015
- 2015-08-19 HK HK15108042.4A patent/HK1207459A1/en unknown
- 2015-08-19 HK HK15108045.1A patent/HK1207460A1/en unknown
-
2016
- 2016-12-20 JP JP2016246307A patent/JP6154057B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100203933A1 (en) * | 2007-05-31 | 2010-08-12 | Sony Computer Entertainment Europe Limited | Entertainment system and method |
Also Published As
Publication number | Publication date |
---|---|
KR20150046302A (en) | 2015-04-29 |
JP2017080455A (en) | 2017-05-18 |
CN104662578A (en) | 2015-05-27 |
AU2013309312A1 (en) | 2015-03-05 |
AU2013309312B2 (en) | 2017-04-20 |
JP6067120B2 (en) | 2017-01-25 |
CA2882099C (en) | 2017-10-24 |
GB201503471D0 (en) | 2015-04-15 |
EP2888712A1 (en) | 2015-07-01 |
DE112013004190T5 (en) | 2015-07-16 |
EP2888712A4 (en) | 2016-09-28 |
CN104662578B (en) | 2019-01-01 |
JP6154057B2 (en) | 2017-06-28 |
GB2519903A (en) | 2015-05-06 |
WO2014035640A1 (en) | 2014-03-06 |
JP2015533534A (en) | 2015-11-26 |
CA2882099A1 (en) | 2014-03-06 |
HK1207460A1 (en) | 2016-01-29 |
HK1207459A1 (en) | 2016-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101793189B1 (en) | Integration of a robotic system with one or more mobile computing devices | |
US10874952B2 (en) | Virtual representation of physical agent | |
US9067145B2 (en) | Virtual representations of physical agents | |
US20200254353A1 (en) | Synchronized motion simulation for virtual reality | |
EP3592445B1 (en) | Gameplay ride vehicle systems and methods | |
CN109478340B (en) | Simulation system, processing method, and information storage medium | |
WO2018012395A1 (en) | Simulation system, processing method, and information storage medium | |
US9555337B2 (en) | Method for tracking physical play objects by virtual players in online environments | |
US20190105572A1 (en) | Drivable vehicle augmented reality game | |
JP6957218B2 (en) | Simulation system and program | |
US20060223637A1 (en) | Video game system combining gaming simulation with remote robot control and remote robot feedback | |
US20120190453A1 (en) | System and method for online-offline interactive experience | |
US9550129B2 (en) | Multiplayer game platform for toys fleet controlled by mobile electronic device | |
JP2008043484A (en) | Program, information storage medium and game system | |
JP2014150958A (en) | Game system and program | |
JP2024054297A (en) | Game program, computer and game system | |
KR101473422B1 (en) | Toy driving system and application for controlling toy | |
JP6974780B2 (en) | Game programs, computers, and game systems | |
JP6974782B2 (en) | Game programs, computers, and game systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
GRNT | Written decision to grant |