JP2010531711A - ユーザ作成可能マシン - Google Patents

ユーザ作成可能マシン Download PDF

Info

Publication number
JP2010531711A
JP2010531711A JP2010515005A JP2010515005A JP2010531711A JP 2010531711 A JP2010531711 A JP 2010531711A JP 2010515005 A JP2010515005 A JP 2010515005A JP 2010515005 A JP2010515005 A JP 2010515005A JP 2010531711 A JP2010531711 A JP 2010531711A
Authority
JP
Japan
Prior art keywords
game
machine
elements
input
mapping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010515005A
Other languages
English (en)
Inventor
スタンパー ティモシー
メイルズ グレッグ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2010531711A publication Critical patent/JP2010531711A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating 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 by the player, e.g. authoring using a level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/34Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using peer-to-peer connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/408Peer to peer connection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • A63F2300/6018Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content where the game content is authored by the player, e.g. level editor or by game device at runtime, e.g. level is created from music data on CD
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car

Abstract

ユーザがいくつかのパーツを選択して、マシンに組み立てることができるゲームにおいていくつかのコンポーネントパーツがユーザに提示される。コンポーネントパーツの一部または全部は、制御可能パラメータを有することができ、これらはゲームをプレイするために使用されるゲームコントローラ上のインプットにマッピングされる。

Description

いくつかの現在のコンピュータゲームは、ユーザがスポイラ、ホイールなどのエレメントを変更することによってレーシングカーなどの乗物をカスタマイズすることを可能にしている。しかし、許容されるバリエーションの数は制限され、許容されるフィーチャ(feature)の各組み合わせの物理的パフォーマンスは事前に計算され、ゲームにハードコード化されている。これは、ユーザに実現可能に提供できる柔軟性を制限する。
子供向けであるいくつかの教育用ソフトウェアゲームが存在し、これらは、パーツの構築キットおよびドラッグアンドドロップ(drag and drop)インタフェースを提供することによってより大きい柔軟性を提供して、ユーザがパズルを解く複雑怪奇な仕掛け(Rube-Goldberg contraption)を構築することを可能にしている。
以下は、読者に基本的理解を提供する目的で開示の簡単な概要を提示する。この概要は、開示の網羅的なオーバービューではなく、本発明のキーとなる/重要なエレメントを特定するものでも、本発明の範囲を画定するものでもない。その唯一の目的は、本明細書に開示したいくつかの概念を、後に提示する詳細な説明の序論として簡単な形式で提示することである。
ユーザがいくつかのパーツを選択し、マシンに組み立てることができるゲームにおいていくつかのコンポーネントパーツがユーザに提示される。コンポーネントパーツの一部または全部は制御可能なパラメータを有することができ、これらはゲームをプレイするために使用されるゲームコントローラ上のインプットにマッピングされる。
付随的特徴の多くは、添付図面と関連して考慮される以下の詳細な説明の参照によってより良く理解されるのに伴って、より容易に理解されるであろう。
本説明は、添付の図面に照らして読まれる以下の詳細な説明からより良く理解されるであろう。
ユーザがマシンを作成するのを可能にするゲームの機能エレメントを示す概略図である。 ゲームアプリケーションのオペレーションを示す例示のフロー図である。 エレメントのライブラリにストアされたデータを示す概略図である。 例示のマシンを示す概略図である。 ゲーミングデバイスのネットワークを示す概略図である。 ゲーミングサーバのオペレーションの方法を示す例示のフロー図である。 本明細書に記載の方法の実施形態を実現することができる例示のコンピューティングベースのデバイスを示す図である。
添付図面において、類似のパーツは類似の参照符号を用いて示されている。
添付の図面と関連して以下に提供される詳細な説明は、本発明の例を説明したものであり、本発明の例を構築または利用できる唯一の形態を表したものではない。この説明は、例の機能および例を構築し、操作するためのステップのシーケンスを示しているが、同じまたは同等の機能およびシーケンスが異なる例で達成されることもできる。
図1は、ユーザが乗物、武器またはその他のタイプのマシンなどのマシンを、ユーザが選ぶ任意の方法でコンポーネントパーツのライブラリから作成することを可能にするゲームの機能エレメントを示す概略図である。これらのマシンはその後にゲームのプレイで使用することができ、これは単一のコンソール上であることも、ネットワークを介することもある(例えば、Xbox Live(商標)などのシステムを使用して)。ゲームはゲームアプリケーション101を備え、エレメントのライブラリ102(これらのエレメントはコンポーネントまたはビルディングブロックと呼ばれることもある)、マッピングデータ103およびコントローラインタフェース104がゲームアプリケーションと関連付けられている。メタルパネル、モータ、ホイール、ステアリングエレメント、ロケットブースタなどのアイテムを備えることができるエレメントのライブラリ102内のエレメントの各々は、物理的パラメータ(質量、慣性モーメント、質量中心、摩擦、復原(restitution)、密度、硬さなどの1つまたは複数)およびエレメントが制御可能な場合には、いくつかの制御可能なパラメータ(ステアリング、スラスト(thrust)、スピード、点火制御など)が関連付けられたセットを有している。これらの制御可能なパラメータの各々は、ゲームコントローラ上のコントロール(インプットとも呼ばれる)にマッピングされており(例えば、ステアリング制御可能パラメータは左/右コントロールにマッピングされ、スラスト制御可能パラメータは前進/逆進コントロールにマッピングされ、点火制御はコントローラ上のボタンにマッピングされている、など)、そのマッピング関係はマッピングデータストア103にストアされている。使用される特定の物理的パラメータおよび制御可能パラメータは、特定のゲームに依存することが理解されよう。物理的パラメータ「復原(restitution)」は、あるオブジェクトが別のオブジェクトと衝突したときにそのオブジェクトに返されるエネルギーの量を表すために使用されている(例えば、よく弾むボールは高い値を有し、スチールのけた(steel girder)は低い値を有する)。
ゲームアプリケーション101のオペレーションは図2を参照して説明することができ、図2においてエレメントのライブラリ102からのエレメントがユーザに提供されている(ブロック201)。提供されるこれらのエレメントは、そのライブラリ内のエレメントのサブセットを備えることも、すべてのエレメントを備えることもあり、これらのエレメントはエレメントの表現をグラフィカルユーザインタフェース(GUI)でユーザに提示することによって提供することができる。アプリケーションは、ユーザが提供された複数のエレメントを選択し、例えば、GUIのドラッグアンドドロップインタフェースを使用してそれらを配置してマシンを作成することを可能にする(ブロック202)。選択した複数のエレメントの制御可能パラメータ(またはフィーチャ)の各々は、マッピングデータ103に基づいてゲームコントローラ上のコントロールにマッピングされる(ブロック203)。結果としてのマシンはその後に引き続いてテストすることも、ゲームプレイで使用することも、および/または将来の使用のためにセーブすることもできる。このプロセスは構築したマシンを改善するために繰り返すことができる(図2の点線の矢印に示すように)。組み立てたマシンは、プロセスのどのステージでもストアすることができる(例えば、プロセスを通る途中または終了時に)。マシンが使用されるとき(テスト時またはゲームプレイで)、マシンに対する力は、制御可能パラメータがマッピングされているコントロールから受信したインプットに基づいて、および各エレメントについてストアされた物理的パラメータとエレメントの構成にも基づいてリアルタイムで計算される(ブロック204)。上述したように、物理的パラメータはエレメントのライブラリ102にストアしておくことも、別の場所にストアしておくこともできる。これらの力はその後に、マシンの動きを定義するリジッドボディ(剛性体)シミュレータにインプットすることができる(物理的パラメータの一部または全部と共に)。リジッドボディシミュレータは、それ与えられた力(ブロック204で計算されたもの)のほかに、付加的力(例えば、エレメントまたはマシンをひとつに接続したことに起因する)を計算することも、付加的力(例えば、重力、摩擦)を考慮に入れることもできる。リジッドボディシミュレータは、Havoc(商標)によって提供されるエンジンのような物理エンジン(physics engine)を備えることも、任意の他の方法で実現することもできる。
ゲームアプリケーション内では、コントロールモジュール(図1には図示していない)を使用して、組み立てられたマシンに対する力を計算することができる(ブロック204)。複数のコントロールモジュールを提供することができる(例えば、車などの特定のマシンタイプについての力の計算のために別のモジュールを提供することも、異なるフォースアプリケータ(force applicator)が同じリジッドボディに適用されることもある。)
図2の点線の矢印で示されるように、プロセスはいつでも繰り返すことができる。例えば、コンポーネントは、損傷したり、摩滅したり、消耗したり、アップグレード/改善したりされる能力を有することができる。この例においても、他の例においても、マシンは、例えば、マシンをひとつにする接続を通じて、その動作時になんらかの方法で別のマシンによる影響を受ける可能性がある。結果として一緒にされたマシンは、一人のゲーマによって制御されることも、二人以上のゲーマによって制御されることもある(詳細は以下の記載のとおり)。例えば、磁性フック(magnetic hook)を備えた「ヘリコプタ」リフティングマシンはそれ自体を別のマシンに接続して(磁性フックを通して)それを運ぶことがあり、この第2のマシンも第1のマシンのコントロール/方向/スピードに影響を及ぼすことになるスラスタ(thruster)を有することができる。これは、例えば、第2のマシン(第1のマシンによってフックされている)は、マルチプレイヤゲームにおけるコンピュータの人工知能(AI)または別のプレイヤによって制御されるいくつかのゲームアプリケーションで活用することができる。この第2の制御側エンティティの目的は、第2のマシンが「キャプチャ(captured)」または「フック(hooked)」されたとき第1のマシンのオペレーションを援助するか、妨害するかのどちらかであることがある。
ユーザ作成マシン(ブロック202で組み立てられた)は同じ制御可能パラメータ(例えば、各々が「スラスト」の制御可能パラメータを有する2つのロケットブースタ)を有するいくつかのエレメントを備えている場合、各エレメントのその制御可能パラメータは、ゲームコントローラ上の同じコントロールにマッピングすることができ、そのため、ユーザがそのコントロールを操作したとき、各エレメントはゲームプレイ内でスラストを提供することになる。エレメントの各々から提供された制御パラメータ(例えば、スラスト)の量は、エレメントおよびその制御可能パラメータに関連付けられたパラメータに依存することができる。例えば、2つの同じロケットのスラスタは、同じ量のスラストを提供し、同じコントロールに対し同一に応答することができるが、異なるサイズまたはタイプのスラスタ(例えば、ロケット、ジェット、イオン、プロペラなど)を接続すると、異なる量のパワー、異なるパワー曲線および/または同じコントロールに対する異なるレスポンスを提供することができる。しかるに、別の例では、マシンはいくつかのサブマシンを備えることができ、その各々は別個のゲーマによって操作することができる(例えば、乗物は第1のサブマシンを備えることがあるのに対し、その乗物に装着された武器は第2のサブマシンを備えることがある)。このような例では、各特定のサブマシンにおけるエレメントの制御可能パラメータは、異なるゲームコントローラ上のコントロールにマッピングすることができる(例えば、サブマシン1はゲームコントローラ上のコントロールにマッピングされ、サブマシン2はゲームマシン2上のコントロールにマッピングされるなど)。
公知のゲームとは異なり、上述した方法およびゲームは、組み立てたマシンのパフォーマンスに関する事前に計算されたパラメータを含んでいないが、その代わりに、各制御可能コンポーネントパーツの物理的パラメータが、これらの制御可能コンポーネントパーツの制御可能パラメータに関するインプットに加えて、マシンに対する制御力(control force)をリアルタイムで発生するために使用される。リアルタイムでの力の計算に備えて、いくつか初期計算は、マシンの組み立て時に行なうことができる。計算された力は、そのあと、マシンの結果としての動きを定義するために使用することができる。従って、エレメントは、ゲーム設計者によって定義された限られた数のオプションから選択するのではなく、ユーザの選択に応じて、どのようにも組み合わせることができる。
すべてのコンポーネントパーツ(またはエレメント)が少なくとも1つの物理的パラメータを有しているのに対し、すべてのコンポーネントパーツが制御可能パラメータを有しているわけではない(例えば、メタルパネルは制御可能パラメータを有していない)。一部のコンポーネントパーツは動くことができるのに対し(例えば、ホイール)、それでも、これらのコンポーネントパーツが制御可能パラメータを有していないことがあるのは、ユーザのコントロールの下で動くことができるモータまたは他のパワーソース(動力源)を必要とするからである(そうでない場合は、これらのコンポーネントパーツは、重力などの、他の加えられた力に基づいてのみ動くことになる)。
エレメントの各々は個々の目的を有することがあり、いくつかの例では、各エレメントは1つの制御可能パラメータだけを有することがある。例えば、モータは「スピード」の制御可能パラメータを有することができ、ロケットブースタは「スラスト」の制御可能パラメータを有することができるなどである。エレメントは限られた数の制御可能パラメータを有することができるのに対し(例えば、1つだけ)、組み立てられたマシンに加えられる力に関するこれらの制御可能パラメータの影響によって、組み立てられたマシンの動きの多くの側面に変化が生じることがある。例えば、ホイールまたは方向舵は方向を制御することができるかもしれないが、戦略的に配置された複数のスラスタが方向を制御するために使用することができるかもしれない。ホイールは、特定のコントロールの下で制動力を供給することができるかもしれないが、配備されたアンカー(anchor)もそうすることがある。
エレメントの各々と関連付けられた物理的パラメータは、実世界の同じエレメントの表現であることがあり、例えば、スチールパネルは、現実のスチールパネルに一致する質量や密度などの物理的パラメータを有することができる。しかし、多くのゲーム世界は、正確なニュートン力学(Newtonian Dynamics)をシミュレートしておらず、そのため、多くの例では、物理的パラメータまたは力が計算される(ブロック204において)仕方は、ゲームの特定の要件に従って調節することができる(例えば、パネルは実生活の同等のものに満たない質量パラメータを有することがあり、そのため、それから構築された戦争マシンは飛行または浮遊することができる)。
エレメントの各々は、エレメントが別のエレメントに接続することができる1つまたは複数の定義されたコネクションポイントを有することができる(例えば、ホイールは、ホイールのどちらかの側に車軸のコネクションポイントを1つ有することもあれば、2つ有することもある)。これらのコネクションポイント301の詳細は、図3の概略図に示すように、エレメントのライブラリ102にエレメント302と関連付けてストアすることができ、図3は、上で議論した制御可能パラメータ303および物理的パラメータ304も示している。
特定のエレメントの定義したコネクションポイントは、選択的とすることができ、各コンポーネント上の1または複数のロケーションで利用可能であることがある標準のコネクションポイントタイプを有し、任意のコンポーネント上の任意のコネクションポイントを他の任意のコンポーネント上の任意のコネクションポイントに接続させるのではなく、いくつかまたはすべてのコンポーネント上のコネクションポイントのいくつかまたはすべては、他のいくつかまたはすべてのコンポーネントまたは同じタイプのコンポーネント上のいくつかまたはすべてのコネクションポイントに接続しないことがある。このコネクションポイントの選択性は、特定のゲーム内のメカニズムで定義することができる。例えば、2つのコンポーネントだけからマシンを構築するためにステアリング可能ホイールをスラスタに直接に接続することが許されないことがあるが、ゲーマ(gamer)は標準のシャーシコンポーネント上の任意のコネクションポイントにホイールを接続し、同じシャーシコンポーネント上の任意の残りのコネクションポイントにスラスタを接続することができることもある。
選択したエレメントの組み立てを支援するために(ブロック202において)、ゲームアプリケーションは、エレメント(またはブロック)を位置合わせするためのメカニズムを提供することができる。いくつかのメカニズム例について、以下に説明する。
第1のメカニズム例では、3Dマトリックスのビジュアル指示がコネクションポイントを示すエレメントの周りに提供することができ、オブジェクトがユーザからのコントロールインプットに応答してあるコネクションポイントから別のコネクションポイントにジャンプすることができる。別の例では、あるポイントから別のポイントにジャンプする代わりに、オブジェクトはあるコネクションポイントにいる間、そのポイントで接続する要求を示すインプットを待ちながら、一時停止することができる。
別のメカニズム例では、ゲームアプリケーションは、ユーザが、定義したコネクションポイントとは別のポイントでエレメントを接続することを試みるとき、コネクションポイント間のシミュレートした磁気吸引力および対応するシミュレートした反発力を提供することができる(例えば、2つのエレメントがコネクションポイントでないポイントでひとつされた場合は、これらのエレメントは、ユーザによって解放されたとき、弾力で引き離されるように表示することができる)。
さらに別のメカニズム例では、2つのエレメントが結合のために正しい位置に位置合わせされるとき、他の任意の種類のビジュアルまたはオーディブル指示を提供することができる。あるいは、定義したコネクションポイントに対応していない位置で2つのエレメントがひとつにされたときアラートを提供することができる。
エレメントを位置合わせするのを支援するメカニズムの説明は個々のエレメントを結合することに関するが、これらのメカニズムは、部分的に完成したマシン、サブマシンおよび全体マシンなどの、エレメントのグループにも適用可能である。エレメントのグループに対するコネクションポイントはユーザ定義とすることも(例えば、ユーザは、その後に乗物に装着され、第2のゲーマによって操作されるときサブマシンとみなすことができる武器のコネクションポイントを定義することができる)、コネクションポイントがグループ内のエレメントの特定の組み合わせの結果としての効果とすることができる(例えば、既に使用されておらず、アクセス可能であるグループ内のエレメントに対するコネクションポイント)。別の例では、エレメントのグループに対するコネクションポイントは、個々のエレメントについて上述したのと同じ方法で選択的とすることができる。
図4は、ゲームアプリケーションおよび上述した方法を使用して作成することができるマシン400の一例を示している。このマシンは、6つエレメントを備えている。すなわち、2つホイール401、モータ402、ステアリングエレメント403、パネル404およびシート405である。このマシンは、説明の便宜のためにのみ2Dマシンであり、このマシン(およびマシンが構成されるエレメント)は3次元とすることができることが理解されるであろう。これらのエレメントのうちの2つ(モータとステアリングエレメント)は制御可能パラメータ(スピードと方向)を有することができ、これらはゲームマシン上の2つの異なるインプットにマッピングすることができる(例えば、スピードは前進/後進コントロールにマッピングすることができ、方向は左/右コントロールにマッピングすることができる)。マシン400に適用される力は、6つのエレメントの各々の物理的パラメータおよび制御可能パラメータがマッピングされているゲームマシン上のインプットからのインプット(例えば、前進/後進および左/右コントロールからの)に基づいてリアルタイムで計算することができる。これらの計算した力は、そのあとでマシンの動きを発生するために使用することができる。
ライブラリ102内のすべてのパラメータはゲーム開発者によって提供することができるが、いくつかの例では、追加のエレメントは他のゲーム開発者などのサードパーティによって提供することも、ゲーマによって発生することもある。これにより、ネットワーク接続のゲームプレイにおいて、ゲーマが異なるフィーチャセットを有する状況になる(すなわち、エレメントの異なるライブラリにより、他のゲーマがもっていないエレメントを使用してマシンを構築することができるという結果になる)。異なるフィーチャセットをもつゲーマが依然として一緒にプレイできるようにするためには、「Transfer of features between gaming devices」と題され、2006年6月20日に出願された同時継続の米国特許出願第11/425,258号に記載された方法を使用することができる。この方法は、図5と図6を参照して以下に説明され、米国特許出願第11/425,258号は引用によってその全体が本明細書に組み込まれる。
ゲーミングデバイスを1つに接続するこの方法は、以下に説明されており、異なるフィーチャセットをもつデバイス間でマルチパーティのゲームを可能にする。デバイスはいくつかのゲーミングデバイスからデータを受け取り、各ゲーミングデバイスがどのフィーチャを要求しているかを判定する。これらの要求されたフィーチャは、特定のデバイスに保持されていないが、他のデバイスの1または複数によって保持されているフィーチャである。各ゲーミングマシンによって要求される特定のフィーチャに関するコードがそのあとでゲーミングデバイスの各々に転送される。
図5は、ゲーミングデバイスのネットワーク500を示す概略図である。ネットワークは、サーバ502(例えば、Xbox Live(登録商標)サーバ)を介して一緒に接続された4つのゲーミングデバイス501(例えば、Xbox360(商標))を備える。各ゲーミングデバイスはコンソール503、ディスプレイ504およびコントローラ505を備えている。コネクションはワイヤードまたはワイヤレス、直接または間接(例えば、インターネットを介して)にすることができる。ネットワークは、より多くのまたはより少ないデバイスを備えることができ、各デバイスは、異なるゲーマが異なるコントローラを使用して同じゲームをプレイする状態で1または複数のコントローラを接続することができることが理解されるであろう。サーバ502のオペレーションについて図6を参照して説明する。サーバはゲームに参加するゲーミングデバイス503の各々からのリクエストを受け取り(ステップ601)、これらのリクエストに応答して、サーバは問題のゲームに関するアトリビュート(属性)情報についてゲーミングデバイスの各々をポーリングする(ステップ602)。このアトリビュート情報は、ゲームのレベル、武器、アバター(avatar)およびその他のフィーチャのほかに、ライブラリ(例えば、図1に示すライブラリ102)内のエレメントの詳細を含むことができる。アトリビュート情報を受け取ったあと、サーバはデバイスの各々によって保持されたフィーチャセットの差異を判定し(ステップ603)、それらが共通のフィーチャセットをもつように要求されたフィーチャを各コンソールに転送する(ステップ604)。各ゲーミングデバイスが同じフィーチャセットを有すると、ゲームをスタートすることができる(図6には図示せず)。
別の例では、ゲーミングデバイス501は、どのゲーミングデバイスも支配的でないピアツーピアのシナリオにおいて中央サーバなしで動作することができる。各ゲーミングデバイスは標準のピアツーピア手法を使用して、複雑なパラレルネットワーキングメッシュにおいて相互間で通信し、フィーチャデータを転送することができる。この例示の実施形態では、第1のゲーミングデバイスはそのフィーチャセットのリストをコンパイルし、その後、このリストを分析する次のゲーミングデバイスにこのリストを送ることができ、どの追加フィーチャがそのゲーミングデバイスによって保持され、以前のゲーミングマシンのフィーチャのどれが保持されていないかをリストに注記する。このリストはゲーミングデバイスの各々に順次に送ることができ、各受信ゲーミングデバイスは上述したようにリストに注記する。すべてのゲーミングデバイスによって注記されると、リストは第1のゲーミングデバイスに戻される。この時点で、システム内の各ゲーミングデバイスは、どのフィーチャが他のゲーミングデバイスによって保持され、どのゲーミングデバイスが保持しているフィーチャデータを要求しているかを知ることになる。ゲーミングデバイスはその後に要求されたフィーチャデータを、それを必要とする他のゲーミングデバイスにストリームアウトすることができる。
このピアツーピアのシナリオにおける別の例では、各ゲーミングデバイスは、保持しているフィーチャのリストをネットワーク内の他のゲーミングデバイスの各々に送る。ネットワーク内の他のゲーミングデバイスの各々からリストを受け取ると、どのゲーミングデバイスも、保持するコードをどのゲーミングデバイスに送る必要があるかを判定することができる。このコードはその後に、これらのフィーチャを要求する他のゲーミングデバイスにストリームすることができる。あるいは、ゲーミングデバイスは、受け取ったリストを使用して、ネットワーク内の特定の他のゲーミングデバイスからのフィーチャデータをリクエストすることができる(それを最初にリクエストすることなくそれをそれらにストリームするのではなく)。フィーチャセットの差異に関するコードをそのあとでゲーミングデバイス間で転送できるように、フィーチャセットに関するデータをピアツーピアネットワーク内のゲーミングデバイス間で共有することができる方法はほかにも存在し得ることが理解されるであろう。
図7は、ゲームコンソールのようなコンピューティングおよび/またはエレクトロニックデバイスの任意の形態として実現することができ、上述した方法の実施形態が実現することができる例示のコンピューティングベースのデバイス700の種々コンポーネントを示す図である。
コンピューティングベースのデバイス700は、マイクロプロセッサ、コントローラまたは上述した方法を行うためにデバイスのオペレーションを制御するコンピューティング実行可能命令を処理するその他の適当なタイプのプロセッサとすることができる1または複数のプロセッサ701を備える。デバイスは、グラフィカルプロセッシングユニット(GPU)702および/または物理プロセッサ(図7に図示せず)のように、専用のタスクを有するプロセッサをさらに備えることができる。
コンピュータ実行可能命令は、メモリ703など、任意のコンピュータ可読媒体を使用して提供することができる。メモリは、ランダムアクセスメモリ(RAM)、磁気または光学ストレージデバイスなどの任意のタイプのディスクストレージデバイス、ハードディスクドライブ、またはCDやDVDまたは他のディスクドライブのように、任意の適当なタイプとすることができる。フラッシュメモリ、EPROMまたはEEPROMを使用することもできる。
メモリは、オペレーティングシステム704を備えたプラットフォームソフトウェアをストアするように構成することができ、あるいは、他の任意の適当なプラットフォームソフトウェアがコンピューティングベースのデバイスに提供されてアプリケーションソフトウェア705がそのデバイス上で実行できるようにすることができる。メモリ703にストアされたアプリケーションソフトウェアは、上述したゲームアプリケーション101を含むことができる。リジッドボディシミュレータ(上述した)はゲームアプリケーション内に含まれることも、別個のアプリケーションソフトウェア(図7に図示せず)を備えることもできる。メモリは、エレメントのライブラリ102およびマッピングデータ103(これも上述した)をストアするために使用することもできる。コンピューティングベースデバイス700は、1または複数のインプット、アウトプットおよびコントローラインタフェース104(またはユーザインプットとの他のインタフェース)およびネットワークインタフェース706などのインタフェースを備えることができる。
本例はゲームコンソールおよびネットワーク化されたゲーミングシステムにおいて実現されるものとして本明細書に説明され、例示されているが、記載の装置および方法は、限定ではなく、一例として提供されている。この分野の精通者ならば理解されるように、本例は種々の異なるタイプのコンピューティングシステムの用途に適している。これらの方法は、ゲームをプレイすることができる任意のデバイス上で実現することができ、デバイスはネットワーク化されても、スタンドアロンデバイスでもよい。
上記の説明は、組み立てたマシンの動きを計算された力から発生するためにリジッドボディシミュレータの使用に言及しているが、これは単なる例であり、マシンの動きを計算された力から発生するために適切な任意のシミュレーションツールを使用することもできる。他の例では、動きは、オブジェクトに対する力を最初に発生することなく直接に発生することができる(例えば、ブロック204と205の組み合わせにより)。
「コンピュータ」という用語は、ここでは、命令を実行することができる処理能力を有する任意のデバイスのことを指すために用いられている。この分野の精通者は、このような処理能力は多数の異なるデバイスに組み込まれており、従って、この「コンピュータ」の用語は、PC、サーバ、モバイル電話、パーソナルデジタルアシスタントおよび多くの他のデバイスが含まれることを認識するであろう。
本明細書に記載した方法は、記憶媒体上のマシン可読形態のソフトウェアによって行うことができる。このソフトウェアは、方法ステップが任意の適当な順序で、または同時に履行できるようにパラレルプロセッサまたはシリアルプロセッサ上での実行に適したものにすることができる。
これにより、ソフトウェアは価値があり、別個に取引可能な商品とすることができることが認められる。この中には、望みの機能を履行するために「ダム(dumb)」または標準のハードウェア上で稼動し、または制御するソフトウェアを包含することが意図されている。また、シリコンチップを設計したり、ユニバーサルプログラマブルチップを構成したりするために使用される、HDL(hardware description language)ソフトウェアのように、ハードウェアの構成を「記述」または定義して、望みの機能を履行するソフトウェアを包含することも意図されている。
この分野の精通者は、プログラム命令をストアするために利用されるストレージデバイスは、ネットワークにまたがって分散することができることを認識するであろう。リモートコンピュータは、例えば、ソフトウェアとして記述されたプロセスの例をストアすることができる。ローカルまたは端末のコンピュータは、リモートコンピュータにアクセスし、ソフトウェアの一部または全部をダウンロードしてプログラムを稼動することができる。あるいは、ローカルコンピュータはソフトウェアの断片を必要時にダウンロードすることも、いくつかのソフトウェア命令をローカル端末で実行し、いくつかをリモートコンピュータ(またはコンピュータネットワーク)で実行することができる。また、この分野の精通者は、この分野の精通者に知られている従来の手法を利用することにより、ソフトウェア命令の一部が、DSP、プログラマブルロジックアレイなどの専用の回路によって履行されることもあることを認識するであろう。
本明細書に示したどの範囲またはデバイスの値も、この分野の精通者に自明であるように、求める効果を失うことなく拡張または変更することができる。
上述した便益および利点はひとつの実施形態に関係することもあれば、複数の実施形態に関係することもあることが理解されるであろう。「ある」アイテムへの言及は、これらのアイテムの1つまたは複数のことを指していることがさらに理解されるであろう。
本明細書に説明した方法のステップは、任意の適切な順序でも、該当する場合には同時に履行することもできる。さらに、個々のブロックは、本明細書に記載した主題の精神および範囲から逸脱することなく、これらの方法の任意のものから削除することができる。上述した例のいずれの側面も、上述した他の例のいずれの側面と組み合わせて、求める効果を失うことなくさらなる例を形成することができる。
好適な実施形態の上記の説明は単なる例として与えられており、この分野の精通者により種々の変更を行なうことが可能であることが理解されるであろう。上記の明細、例およびデータは、本発明の例示の実施形態の構造および使用の完全な説明を提供する。本発明の種々の実施形態は、ある程度の特定性をもって説明し、または1または複数の個々の実施形態を参照して説明してきたが、この分野の精通者は、本発明の精神および範囲から逸脱することなく、開示した実施形態に数多くの変更を行なうことが可能であろう。

Claims (20)

  1. エレメントのライブラリ(102)と、
    ゲームアプリケーション(101)であって、
    前記エレメントのライブラリをユーザに提供し、
    前記ライブラリ(102)からの複数のエレメントのユーザ選択および配置を可能にしてマシンを作成し、
    各エレメントの任意の制御可能パラメータをゲームコントローラ上のインプットにマッピングする
    ように構成されたゲームアプリケーションと
    を備えたことを特徴とするゲーム。
  2. 前記ゲームアプリケーションは、マッピングをマッピングデータストア(103)にストアするようにさらに構成されたことを特徴とする請求項1に記載のゲーム。
  3. 前記エレメントのライブラリは、各々のエレメント(302)について、少なくとも1つの関連する物理的パラメータ(304)を備えたことを特徴とする先行する請求項のいずれかに記載のゲーム。
  4. 前記ゲームアプリケーションは、
    ゲームコントローラから受け取ったインプットおよび複数のエレメントの各々と関連付けられた前記少なくとも1つの物理的パラメータに基づいて、実行時にマシンに対する少なくとも1つの力を計算するようにさらに構成されたことを特徴とする請求項3に記載のゲーム。
  5. 前記ゲームアプリケーションは、
    マシンの動きを定義するシミュレータに前記少なくとも1つの力を入力するようにさらに構成されたことを特徴とする請求項4に記載のゲーム。
  6. 前記エレメントのライブラリは、各々のエレメント(302)について、少なくとも1つのコネクションポイント(301)を備えたことを特徴とする先行する請求項のいずれかに記載のゲーム。
  7. 前記ゲームアプリケーションは、
    エレメントを位置合わせするメカニズムを提供するようにさらに構成されたことを特徴とする請求項6に記載のゲーム。
  8. 同一の制御可能パラメータは、ゲームコントローラ上の同じインプットにマッピングされたことを特徴とする先行する請求項のいずれかに記載のゲーム。
  9. マシンは、第1のサブマシンと第2のサブマシンとを備え、各エレメントのいずれかの制御可能パラメータをゲームコントローラ上のインプットにマッピングすることは、
    第1のサブマシンにおける各エレメントの任意の制御可能パラメータを第1のゲームコントローラ上のインプットにマッピングし、
    第2のサブマシンにおける各エレメントの任意の制御可能パラメータを第2のゲームコントローラ上のインプットにマッピングすることを備えたことを特徴とする先行する請求項のいずれかに記載のゲーム。
  10. ゲームにおける方法であって、
    エレメントのライブラリをユーザに提供すること(201)と、
    前記ライブラリ(102)からの複数のエレメントのユーザ選択および配置を可能にして、マシンを作成すること(202)と、
    各エレメントの任意の制御可能パラメータをゲームコントローラ上のインプットにマッピングすること(203)と、
    を備えることを特徴とする方法。
  11. マッピングをマッピングデータストアにストアすることをさらに備えることを特徴とする請求項10に記載の方法。
  12. 前記エレメントのライブラリは、各々のエレメントについて、少なくとも1つの関連する物理的パラメータを備え、前記方法は、
    ゲームコントローラから受信したインプットおよび複数のエレメントの各々と関連付けられた少なくとも1つの物理的パラメータに基づいて、実行時にマシンに対する少なくとも1つの力を計算すること(294)をさらに備えたことを特徴とする請求項10または11に記載の方法。
  13. 前記方法は、マシンの動きを定義するシミュレータに前記少なくとも1つの力を入力すること(205)をさらに備えたことを特徴とする請求項12に記載の方法。
  14. 各エレメントの任意の制御可能パラメータをゲームコントローラ上のインプットにマッピングすることは、
    同一の制御可能パラメータをゲームコントローラ上の同じインプットにマッピングすることを備えることを特徴とする請求項10乃至13のいずれかに記載の方法。
  15. 前記マシンは、第1のサブマシンと第2のサブマシンとを備え、各エレメントの任意の制御可能パラメータをゲームコントローラ上のインプットにマッピングすることは、
    第1のサブマシンにおける各エレメントの任意の制御可能パラメータを第1のゲームコントローラ上のインプットにマッピングし、
    第2のサブマシンにおける各エレメントの任意の制御可能パラメータを第2のゲームコントローラ上のインプットにマッピングすることを備えることを特徴とする請求項10乃至14のいずれかに記載の方法。
  16. 前記エレメントのライブラリは、各々のエレメントについて、少なくとも1つのコネクションポイントを備え、前記方法は、
    エレメントを位置づけるメカニズムを提供することをさらに備えることを特徴とする請求項10乃至15のいずれかに記載の方法。
  17. ゲームにおける方法であって、
    複数のマシンコンポーネントをゲーマに表示することと、
    マシンを作成するために結合される少なくとも2つのマシンコンポーネントを前記複数のマシンコンポーネントから選択する第1のユーザインプットの受信を可能にすることと、
    前記少なくとも2つのマシンコンポーネントの各々と関連付けられた任意の制御可能パラメータをユーザインプットデバイス上の少なくとも1つのコントロールにマッピングすることと、
    を備えることを特徴とする方法。
  18. 前記第1のユーザインプットは、前記マシン内で前記少なくとも2つのマシンコンポーネントの相対的に位置づけに関する情報をさらに備えることを特徴とする請求項17に記載のゲームにおける方法。
  19. 各マシンコンポーネントは、少なくとも1つの関連物理的パラメータを有し、前記方法は、
    前記少なくとも1つのコントロールから第2のユーザインプットを受信すると、前記第2のユーザインプットに基づいて前記マシン上の少なくとも1つの力を計算することであって、前記制御可能パラメータは前記少なくとも2つのマシンコンポーネントの各々と関連付けられ、物理的パラメータは前記少なくとも2つのマシンコンポーネントの各々と関連付けられたことをさらに備えることを特徴とする請求項17または18に記載のゲームにおける方法。
  20. 前記マシンの動きパラメータを発生するように構成されたシミュレータに前記少なくとも1つの力を出力することをさらに備えることを特徴とする請求項19に記載のゲームにおける方法。
JP2010515005A 2007-06-28 2008-06-21 ユーザ作成可能マシン Pending JP2010531711A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/770,118 US20090005138A1 (en) 2007-06-28 2007-06-28 User Creatable Machines
PCT/US2008/067807 WO2009006052A2 (en) 2007-06-28 2008-06-21 User creatable machines

Publications (1)

Publication Number Publication Date
JP2010531711A true JP2010531711A (ja) 2010-09-30

Family

ID=40161268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010515005A Pending JP2010531711A (ja) 2007-06-28 2008-06-21 ユーザ作成可能マシン

Country Status (8)

Country Link
US (1) US20090005138A1 (ja)
EP (1) EP2158016A4 (ja)
JP (1) JP2010531711A (ja)
KR (1) KR20100024427A (ja)
CN (1) CN101687114A (ja)
CA (1) CA2689153A1 (ja)
IL (1) IL201951A0 (ja)
WO (1) WO2009006052A2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5530128B2 (ja) 2009-07-31 2014-06-25 株式会社小糸製作所 蛍光体および発光装置
US10912991B2 (en) * 2009-12-09 2021-02-09 Sony Interactive Entertainment LLC Portable game controller settings
EP2542982A4 (en) * 2010-03-05 2016-10-26 Infrared5 Inc SYSTEM AND METHOD FOR TWO-WAY COMMUNICATION AND FOR CONTROLLING CONTENTS IN A WEB BROWSER
US9183676B2 (en) 2012-04-27 2015-11-10 Microsoft Technology Licensing, Llc Displaying a collision between real and virtual objects
CN107930121B (zh) * 2017-12-12 2020-09-01 苏州蜗牛数字科技股份有限公司 一种根据输入设备类型控制游戏目标移动的方法及装置
EP3866941A1 (en) * 2018-10-19 2021-08-25 Hit Box. L.L.C. Ergonomic game controller and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000157741A (ja) * 1998-11-26 2000-06-13 Namco Ltd ゲーム装置及び情報記憶媒体

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5577185A (en) * 1994-11-10 1996-11-19 Dynamix, Inc. Computerized puzzle gaming method and apparatus
US6272223B1 (en) * 1997-10-28 2001-08-07 Rolf Carlson System for supplying screened random numbers for use in recreational gaming in a casino or over the internet
US6283858B1 (en) * 1997-02-25 2001-09-04 Bgk International Incorporated Method for manipulating images
IL130513A (en) * 1999-06-17 2001-09-13 Cadent Ltd computer game
US7198568B2 (en) * 2002-05-01 2007-04-03 Nintendo Co., Ltd. Game machine and game program for changing the movement of one character based on the movement of another character
US7739479B2 (en) * 2003-10-02 2010-06-15 Nvidia Corporation Method for providing physics simulation data
AU2005292264B2 (en) * 2004-10-01 2009-06-11 Wms Gaming Inc. System and method for 3D image manipulation in gaming machines
US7874921B2 (en) * 2005-05-11 2011-01-25 Roblox Corporation Online building toy
JP2006314705A (ja) * 2005-05-16 2006-11-24 Nintendo Co Ltd ゲームプログラムおよびゲーム装置
US9104294B2 (en) * 2005-10-27 2015-08-11 Apple Inc. Linked widgets

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000157741A (ja) * 1998-11-26 2000-06-13 Namco Ltd ゲーム装置及び情報記憶媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNB200400338001; The PlayStation2 Books ライディングスピリッツ 公式コンプリートガイド 初版, 20020906, 第4,7,22,24頁, ソフトバンクパブリッシング株式会社 *
JPN6013015588; The PlayStation2 Books ライディングスピリッツ 公式コンプリートガイド 初版, 20020906, 第4,7,22,24頁, ソフトバンクパブリッシング株式会社 *

Also Published As

Publication number Publication date
KR20100024427A (ko) 2010-03-05
IL201951A0 (en) 2010-06-16
CN101687114A (zh) 2010-03-31
CA2689153A1 (en) 2009-01-08
US20090005138A1 (en) 2009-01-01
EP2158016A2 (en) 2010-03-03
WO2009006052A2 (en) 2009-01-08
EP2158016A4 (en) 2014-01-15
WO2009006052A3 (en) 2009-03-12

Similar Documents

Publication Publication Date Title
JP5356984B2 (ja) リアルライフシミュレーション環境のローカルユーザと、対応する仮想環境のリモートユーザとの対話を可能にするシステムおよび方法
KR101793189B1 (ko) 하나 이상의 모바일 컴퓨팅 디바이스들을 갖는 로봇 시스템의 통합
JP3747449B2 (ja) ゲームの処理方法、ゲーム装置、画像処理装置及び画像処理方法並びに記録媒体
US7922584B2 (en) Image generation method and information storage medium with program for video game in which operation of the controller beyond a predetermined angle causes a character to attack
JP2010531711A (ja) ユーザ作成可能マシン
US11724191B2 (en) Network-based video game editing and modification distribution system
EP3796988B1 (en) Virtual camera placement system
TWI804031B (zh) 虛擬與現實結合的多人體感系統、方法、裝置及儲存媒體
US20110124413A1 (en) Haptic-simulation home-video game
US6425826B1 (en) Game machine and information storage medium
JP2009000521A (ja) オンラインゲーム方法及びオンラインゲームシステム
JP2004325828A (ja) シミュレータ、プログラム及び情報記憶媒体
JP7389275B2 (ja) 仮想と現実とを組み合わせたマルチユーザ体験システム、方法、装置及びコンピュータプログラム
Long et al. Evolving controllers for simulated car racing using differential evolution
JP2000237449A (ja) ゲーム装置及び情報記憶媒体
JP2000306115A (ja) 画像生成装置及び情報記憶媒体
Cardamone Evolutionary learning and search-based content generation in computer games
JP4204059B2 (ja) ゲーム装置及び情報記憶媒体
US20170148256A1 (en) Physics engine configuration for an electronic game of chance
JP3866743B2 (ja) ゲーム装置、オッズ提示方法、ならびに、プログラム
Pietro Virtual unreality of videogames
WO2023137543A1 (en) Virtual reality (vr)-enhanced motion platform, experience venue for such motion platform, and experience content and interactivity ecosystem
JP2002085855A (ja) ゲームソフトの利用システム及びその配信方法
CN116547045A (zh) 用于多人社交游戏的玩具系统
JP4155469B2 (ja) ゲーム装置及び情報記憶媒体

Legal Events

Date Code Title Description
A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20100820

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130405

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130906