説明

ゲーム機用の入力端末エミュレータ

【課題】ゲーム機の端末をエミュレートするハンドヘルドデバイス(例えば、移動体電話及び/又は音楽/マルチメディアプレイヤ)を提供すること。
【解決手段】このハンドヘルドデバイスは、様々な端末をエミュレートするために使用することができ、それによって、この同一のハンドヘルドデバイスを使用して、様々なゲーム機と共にプレイすることができる。一実施形態において、ユーザは、エミュレートされるべき特定の端末の種類を示し、ハンドヘルドデバイスは、選択された端末の種類に対応するボタンをタッチスクリーン上に生成する。ボタンを表示する部分上のユーザアクションに応答して、ゲーム機のインターフェースの要件に合致する端末の入力が、ゲーム機のゲームポートに提供される。

【発明の詳細な説明】
【技術分野】
【0001】
[003]本発明は、概してゲーム技術に関し、より具体的にはゲーム機用の入力端末に関する。
【関連技術】
【0002】
[005]ゲーム機は、一般に、1人又は複数のユーザがゲームをプレイすることを可能にするものである。ゲームは、関連する技術分野でよく知られているように(生産性の向上を第一目的とすることとは対照的に)概して1人又は複数のユーザの娯楽を目的としている。
【0003】
[006]簡単に述べるならば、ゲーム機に関連する入力端末が提供され、入力端末は、対応するユーザが、プレイされているゲームに入力を提供することを可能にする。概して、入力端末は、ゲーム機(又はゲーム)とのインタラクティブ性を可能にし、ゲームの基礎となるロジックは、提供された入力に応じて(ビジュアル、オーディオ、機械的などの)様々なユーザエクスペリエンスを提供する。
【0004】
[007]例示的な実施形態を、以下、添付の図面を参照して説明する。
【0005】
[0014]図面において、同様の参照番号は、同一の、機能的に同様の、及び/又は構造的に同様の要素を示す。要素が最初に現れる図面が、対応する参照番号の最も左の(1つ又は複数の)桁によって示される。
【詳細な説明】
【0006】
[0015]1.概要
[0016]本発明の一態様によって提供されるハンドヘルドデバイスは、ゲーム機の端末をエミュレートする。端末をエミュレートすることは、ハンドヘルドデバイスが、ユーザが当該端末とインタラクションする態様と同様の態様でそのユーザがハンドヘルドデバイスとインタラクションすることを可能にし、そのとき、(対応するユーザのアクションに応じて)ゲーム機のインターフェースの要件に合致した、端末と同様の信号を生成するという意味を含む。
【0007】
[0017]一実施形態において、ユーザはいくつかの種類の端末のうちのいずれかを選択することができ、ハンドヘルドデバイスは、選択された端末の種類をエミュレートする。具体的には、端末の様々なキーを表すボタンをタッチスクリーン上に表示することができ、端末の入力が、ボタンが表示される(タッチスクリーンの)それぞれの部分上のタッチアクションに応答してゲーム機に提供される。
【0008】
[0018]結果として、ユーザは、同じハンドヘルドデバイスを使用して異なるゲーム機でゲームをプレイすることができる。或いは、ユーザは、同じハンドヘルドデバイスを使用して同じゲーム機用の異なる端末の種類をエミュレートすることができる。
【0009】
[0019]本発明のいくつかの態様を、以下に説明する。多数の具体的詳細、関係、及び方法が、本発明の完全な理解を提供するために説明されていることを理解されたい。しかし、当業者は、本発明が具体的詳細のうちの1つ若しくは複数なしに、又はその他の方法などと共に実施され得ることを容易に認識するであろう。その他の場合、よく知られている構造又は動作は、本発明の特徴を曖昧にすることを避けるために詳細に示していない。
【0010】
[0020]2.例示的環境
[0021]図1は、一実施形態において本発明のいくつかの態様が実装されることができる例示的なゲームシステムの構成図である。ゲーム機110及びハンドヘルドデバイス130を含むゲームシステム100が図示されている。単に例示のために、典型的な数/種類のシステムだけを図示してある。当業者に明らかであるように、多くの環境は、環境が設計される目的に応じて、数及び種類の両方の点ではるかに多くの/より少ない/異なるシステム/コンポーネントを含むことが多い。
【0011】
[0022]例えば、スタンドアロンユニットとして示されているが、複数のゲーム機が(例えば、ネットワークによって)通信可能に結合される可能性があり、ゲーム機110がそのようなデバイスの1つを表す可能性がある。また、そのような環境での実装は、本発明の様々な態様の範囲及び精神の中にあるとみなされる。図1の各ブロックを、以下でさらに詳細に説明する。
【0012】
[0023]ゲーム機110は、所望のゲームに対応するゲームロジックを実行する。概して、各ゲームロジックは、1人又は複数のユーザからの異なる(一連の)ユーザ入力に応じて異なるユーザエクスペリエンスを提供するように設計される。しかし、ユーザ入力は、ポート122、123、及び132上で予め指定された規約/プロトコルに従って異なる端末の入力として受信される。端末の入力は、対応するポート上の、ゲーム機110で期待される入力信号を(デジタル又はアナログの形態で)表す。各端末の入力は、ゲーム及びゲーム機110の設計に応じて>状態に基づく=(すなわち、前のユーザ入力、及び/又はゲーム機110から受信された前のゲーム出力に依存する)か、又は>状態がない=(単に、予め指定された短い期間内の端末におけるユーザ入力を反映する)可能性がある。
【0013】
[0024]上述のように、端末の入力の少なくとも一部は(各通信経路112、131、及び111上の)ゲームポート122、132、及び123で受信されることができる。各ポートは、適切な電気的及びその他のプロトコルのインターフェースを提供するハードウェア回路/コンポーネント/部分を表し、それらの適切な電気的及びその他のプロトコルのインターフェースを使用して、入力及び/又は出力信号が対応する通信経路上で受信される。各ポートは、特定のゲームに好適なように双方向又は単方向であることができる。ポート132及び経路131の組合せは、関連する技術分野でよく知られている適切なインターフェース(例えば、USB、有線又は無線イーサネット、RS232、FireWire、RS−485、IEEE802.11、Bluetoothなど)を使用する有線又は無線通信リンクとして実装されることができる。各ゲームポートは、単に例示のために、単一の端末とインターフェースを取ると仮定される。
【0014】
[0025]ゲーム機は、簡潔にするために図1には示していないが、様々なその他の入力及び/又は出力ポート(例えば、出力信号のための外部ディスプレイユニット、管理のためのキーボード、ゲームの特定の入力及び/又は出力のための専用端末などとのインターフェース)、並びにサポートするコンポーネント(例えば、ゲーム機に統合されたディスプレイユニット又はオーディオカード)を含む可能性がある。ゲーム機110は、Microsoft Corporation(米国)のXbox(商標)、Sony CorporationのPlayStationなどの製品を使用して実装(又は拡張/適合)されることができる。しかし、ゲーム機110は、(将来/過去/現在に設計された)様々なその他のゲームを実行する可能性がある。
【0015】
[0026]本発明の態様によって提供されるハンドヘルドデバイス130は、ゲーム機110の端末(図示せず)をエミュレートする。したがって、ハンドヘルドデバイス130は、1人又は複数のユーザがユーザ入力を提供することを可能にし、ゲーム機110が設計されたプロトコルに従ってユーザ入力を端末の入力に変換する。端末の入力が、ポート132に提供される。
【0016】
[0027]ユーザが入力を提供することを可能にするために、ハンドヘルドデバイス130は、(場合によってはそれぞれが異なるゲームを実行する)異なるゲーム機と共にハンドヘルドデバイス130を使用するために場合によってはユーザによって設定可能であるタッチセンシティブスクリーンを含む。タッチセンシティブスクリーン(タッチスクリーン)は、(そのタッチセンシティブスクリーンの表面上の)タッチアクションを検出し、さらなる処理のために対応する信号を提供するように設計されるディスプレイスクリーンを指す。例えば、タッチされたポイント及びポイントタッチ遅延(すなわち、当該ポイントがどれだけ長くタッチされたか)などの1つ又は複数のタッチアクションを示すデータが、さらなる処理のために提供されることができる。
【0017】
[0028]ハンドヘルドデバイス130は、本発明の態様に従って、場合によっては異なるゲーム機上の異なるゲームで動作可能であるようにプログラムされることができる。そのようなプログラミング性の一部は、特定のゲームに好適であるようにタッチスクリーン上の表示を適合することを伴う。説明を例示的なものとして続ける。
【0018】
[0029]3.タッチスクリーン上の例示的表示
[0030]図2は、対象のゲームが、ユーザが上、下、左、及び右ボタンのうちの1つ又は複数を押すことを要求し、さらにユーザが戦いに関連する様々なオプションを選択することを要求すると仮定してタッチスクリーン上に示される表示を示している。しかし、特定のゲームに好適な異なる表示が、本発明の様々な態様の範囲及び精神を逸脱することなしに提供されることができる。そのような異なる表示は、異なる種類のより多い/より少ないボタン(又は必要とされるユーザ入力の指示のその他の好適な形態)を含む可能性がある。
【0019】
[0031]概して、各端末は、ゲームに参加するためにユーザによって操作される様々な入力要素(例えば、キー、ジョイスティック、タッチパッドなど)を含むものとみなされることができる。本発明の態様によれば、(端末の)各入力要素は、(以下でボタンと呼ばれる)タッチスクリーンの対応する部分に示され、ユーザは、当該部分内の適切なタッチアクションによって各入力要素を操作する。入力要素が複数のアクションを許可するとき、異なるタッチアクションが、任意の規約に従って、対応するアクションに相当するように合意されることができる。本発明の特徴を分かりにくくならないように、いくつかの典型的で単純な入力要素(キー)を以下に例示する。
【0020】
[0032]左側のボタン205〜208、大きなボタン225、下方向ボタン232、上方向ボタン233、右方向ボタン234、及び左方向ボタン235、並びに右側の2つのボタン250及び251を有する表示を伴うタッチスクリーン200が示される。概して、方向ボタン232〜235は、オブジェクト(例えば、人、動物、鳥などのゲーム内の生物のキャラクタ)又はゲーム内の無生物のオブジェクト(例えば、車両、銃のような武器など)に対して対応する方向入力を提供するために使用される。
【0021】
[0033]ボタン205〜208は、(戦いとの関連において)ゲームに好適なように発砲、シーン変更、武器変更などの機能を割り当てられることができる。ボタン225、250、及び251も、ゲームをプレイすることに関連する、ボタン205〜208に対する機能と同様の機能を割り当てられることができるが、ボタン250及び251は、オン/オフ、リセットなどの機能を割り当てられることができる。代替として、ボタン250及び251は、以下で説明される様々な設定(プログラム性)のために使用されることができる。その他のボタンも、そのようなプログラム性に関する必要に応じて提供されることができる。
【0022】
[0034]さらに、ハンドヘルドデバイス130は、マルチメディアプレイヤ(例えば、Apple CorporationのiPhone(商標))として使用される(オーディオ及び/又はビデオを再生する)ことができ、したがって、ボタン225及び205〜208は音楽を再生するために使用されることができ、その一方、同時に、ボタン232〜235はゲームをプレイするために使用される。
【0023】
[0035]ユーザがタッチスクリーン200上の適切なタッチアクションによって様々なユーザアクションを実行するとき、ハンドヘルドデバイスの残りの部分は、ゲームに関連するユーザ入力の場合にタッチ/ユーザアクションを要求される端末の入力に変換するように実装される必要がある。そのような特徴が実装されることができる態様を、例を用いて以下に説明する。
【0024】
[0036]4.ハンドヘルドデバイス
[0037]図3は、本発明の一実施形態における、ゲームシステム用の端末をエミュレートするハンドヘルドデバイスの詳細を示す構成図である。タッチスクリーン200、タッチスクリーンコントローラ320、無線インターフェース330、オーディオインターフェース340、プロセッサ350、デバイスインターフェース360、出力フォーマットジェネレータ370、システムメモリ380、及び二次記憶装置390を含むハンドヘルドデバイス130が示される。各ブロックを、以下でさらに詳細に説明する。
【0025】
[0038]単に例示のために、典型的な数/種類のブロックだけが図示される。当業者に明らかであるように、多くの環境は、環境が設計される目的に応じて、数及び種類の両方の点ではるかに多くの/より少ない/異なるブロックを含むことが多い。例えば、デバイスはマルチメディアプレイヤ及び移動体電話として動作することが示されるが、そのような特徴の一部は、より少ないコンポーネントを使用して端末を実装するために削除される可能性がある。
【0026】
[0039]無線インターフェース330は、ハンドヘルドデバイス130が無線ネットワーク(図示せず)と通信するために必要な物理的インターフェース(アンテナなど)、電子的インターフェース(送信機、受信機など)、及びプロトコルのインターフェース(GSM、CDMAなど)を提供する。一実施形態において、プロセッサ350は、ユーザが、タッチスクリーン200上に示されるユーザインターフェース(図示せず)を使用して音声、SMS、データ、電子メールなどを通じて通信することを可能にすることができる。多くのそのようなインターフェースが当業者に明らかであろう。したがって、ハンドヘルドデバイス130は、(電子メール及びウェブブラウジングのための)インターネットアクセスデバイスに加えて(端末としての使用と平行してか、又は別の態様でかのいずれかで)任意的に移動体電話として動作することができる。
【0027】
[0040]オーディオインターフェース340は、(内蔵スピーカ又は外部プラグ接続可能なイヤホンなどを通じた)オーディオ出力及び(内蔵又は外部プラグ接続可能なマイクロホンなどを通じた)オーディオ入力を提供する。オーディオインターフェースは、ハンドヘルドデバイス130が(伝送のために音声信号をキャプチャし、受信音声信号を再生するために)移動体電話として動作するときに使用されることができる。
【0028】
[0041]さらに、オーディオインターフェース340は、適切な信号がプロセッサ350から受信されるときに、歌を表すオーディオ信号を生成することができる。したがって、ハンドヘルドデバイス130は、任意的に音楽プレイヤとしても動作することができる。ディスプレイスクリーン200と共同して、ハンドヘルドデバイス130は、(プロセッサ350から受信された対応する信号に応答してビデオ信号及びオーディオ信号両方の組合せを再生する)マルチメディアプレイヤとして動作することができる。マルチメディアプレイヤは、やはり、端末としての使用と平行してか、又は別の態様でかのいずれかで動作することができる。
【0029】
[0042]デバイスインターフェース360は、ゲーム機110と通信するために必要な物理的インターフェース、電気的インターフェース、及びプロトコルのインターフェースを提供する。概して、デバイスインターフェース360は、通信経路131上のポート132を介してゲーム機110に端末の入力を提供するように設計される必要がある。デバイスインターフェース360は、よく知られているインターフェース(例えば、USB、有線若しくは無線イーサネット、Bluetooth、RS232、パラレルインターフェースなど)を使用して実装されることができるか、又はゲームシステムの製造者によって使用される独自仕様のインターフェースを使用することができる。独自仕様のインターフェースは、物理的インターフェース、電気的インターフェース、及びプロトコルのインターフェースのうちのいずれにおいても異なる可能性があり、したがって、デバイスインターフェース360は、対応するゲーム機に適合するためのプラグ接続可能なコンポーネントを有する可能性がある。また、例えばユーザエクスペリエンスを向上するためにゲーム機110から受信された受信された任意の信号(例えば、オーディオ)が、経路131上で受信され、好適に再生されることができる。
【0030】
[0043]システムメモリ380は、ハンドヘルドデバイス130の動作中にプロセッサ350によって使用されるプログラム(命令)及び/又はデータを記憶するためのランダムアクセス可能な場所を含む。データ及び命令は、二次記憶装置390から取得される可能性がある。取得されるデータは、ゲームシステムが現在サポートするゲームの種類のための(表示される必要がある様々なボタンと、様々なユーザアクションに応答して生成される必要がある様々な端末の入力とを指示するために使用される)様々な設定データに対応する可能性がある。実行されるとき、命令は、様々なアプリケーション(ウェブブラウジング、セル電話、マルチメディアプレイヤなど)を同様にサポートする可能性がある。システムメモリ380は、RAM(例えば、SRAM、SDRAM、DDR RAMなど)、不揮発性メモリ(例えば、ROM、EEPROM、フラッシュメモリなど)、又はそれら両方を含む可能性がある。
【0031】
[0044]タッチスクリーンコントローラ320は、タッチスクリーン200の機能に必要な動作を実行する。タッチスクリーンコントローラ320は、タッチスクリーン200上に表示されるべきテキスト/グラフィックを表すデータを(プロセッサ350から)受信し、経路322上に対応する表示/制御信号を生成する。信号の性質は、タッチスクリーン200の実装に依存し、コントローラ320は、それに応じて、知られている態様で実装されることができる。
【0032】
[0045]さらに、(タッチスクリーン200の動作と共同して)タッチスクリーンコントローラ320は、タッチスクリーン200上で感知されたタッチアクションの様々な属性(例えば、タッチされたポイント及びポイントタッチ遅延など)を示すタッチデータを生成する。以下で説明されるように、タッチデータは、様々なユーザ入力の検出の基礎を成し、そして今度は、それらの様々なユーザ入力が、ゲーム機110に提供される端末の入力の基礎を成す。タッチスクリーンコントローラ320及びタッチスクリーン200の組合せは、知られている態様で実装されることができる。プロセッサ350とは別個のユニットとして示されるが、タッチスクリーンコントローラ320は、単一のユニットとしてプロセッサ350に統合されてよい。
【0033】
[0046]出力フォーマットジェネレータ370は、ユーザアクションを、ゲーム機110に好適な端末の入力に変換する。概して、出力フォーマットジェネレータ370の実装は、ゲーム機110のインターフェースの要件に合致する必要がある。したがって、(信号の内容、フォーマットなどの観点の)インターフェースの要件が注意深く検討されることができ、出力フォーマットジェネレータ370がそれに応じて実装されることができる。
【0034】
[0047]非常に単純なシナリオにおいて、2値スイッチ(2つのあり得る状態、すなわち、オン及びオフを有するスイッチ)として構成されたボタンに関して、出力フォーマットジェネレータ370は、ボタンApress@及び対応する座標をプロセッサ350から受信することができ、受信された座標及びボタンApress@をbutton_hitイベントに変換する。次に、button_hitイベントが、ゲーム機110のインターフェースの要件に合致するデバイスインターフェース360及び経路131を通じてゲーム機110に提供されることができる。
【0035】
[0048]変換のその他の例は、タッチスクリーン200上のAdragging@を、−1から+1までの間の値を伴う角度(0〜360度)として定義されるジョイスティックの動きに変換すること、又はボタンの押下の状態を方向(上、下、左、右、又は北、南、東、西など)に変換することである可能性がある。出力フォーマットジェネレータ370は、単一のユニットとしてプロセッサ350に統合されてもよい。概して、プロセッサ350、タッチスクリーンコントローラ320、及び出力フォーマットジェネレータ370のうちの1つ又は複数は、処理システムと呼ばれる。
【0036】
[0049]二次記憶装置390は、ハードドライブ、フラッシュメモリ、リムーバブルストレージドライブなどを含む可能性がある。二次記憶装置390は、ハンドヘルドデバイス130が本発明によるいくつかの特徴を提供することを可能にするデータ及びソフトウェア命令を(不揮発性メモリ上に)記憶することができる。
【0037】
[0050]通常、命令がプロセッサによって取得され、実行されることができる(RAM、リムーバブル又は非リムーバブル不揮発性メモリを含む)メモリユニットは、コンピュータ(又は概してマシン)可読媒体と呼ばれる。これらのメモリユニットは、命令がプロセッサによって実行されるときに、(本明細書において説明される本発明の様々な特徴を提供するために)ハンドヘルドデバイスの動作を制御するコントローラを表す。したがって、メモリユニットは、端末の動作を制御するコンピュータ可読媒体と呼ばれる。
【0038】
[0051]プロセッサ350は、ハンドヘルドデバイス130が異なるゲーム機に関連して動作することを可能にするためのデータを使用する命令(両方とも二次記憶装置390内にある)を実行することができる。
【0039】
[0052]二次記憶装置390は、様々な端末の種類/ゲーム/ゲーム機のための(複数のテーブルを含む)設定データを記憶することができる。例えば、1つのテーブルが、対応するスクリーン設定において入力要素としてプログラムされるべきスクリーン200の特定の部分(位置及び領域)を示すことができる。その他のテーブルが、データがゲーム機110に提供されるべきフォーマット、ゲームポート122、123、及び132に関する入力及び出力インターフェースの要件などを示すことができる。(図2に示される)各スクリーン設定は、設定データの適切な指定によって(通常のジョイスティック、ゲームパッドなどが使用されるように)複数のゲームに関連して使用されることができる。
【0040】
[0053]プロセッサ350は、少なくとも多くの点で、システムメモリ380に記憶された命令を実行することによって(ハンドヘルドデバイス130内の)様々なその他のブロックの動作(又は無動作)を制御する。また、プロセッサ350によって実行される命令の一部は、デバイス130によって提供される様々なユーザアプリケーション(例えば、歌/ビデオを再生する、電話をかけるなど)を表す。
【0041】
[0054]通常、プロセッサ350は、システムメモリ380などの様々な種類の記憶媒体から一連の命令を読み、本発明の様々な特徴を提供するために命令を実行する。例示的な実施形態におけるプロセッサ350の動作が、以下でさらに詳細に説明される。
【0042】
[0055]5.例示的実装
【0043】
[0056]図4は、本発明の一実施形態における入力端末の処理システムの動作を示すフローチャートである。フローチャートは、単に例示のために図1〜3に関して説明するものである。しかし、様々な特徴が、その他の環境及びその他のコンポーネントで実装されることができる。さらに、ステップを、単に例示のために特定の順序で説明する。
【0044】
[0057]本明細書において提供される開示を読むことによって当業者に明らかになるように、その他のコンポーネント及びステップの異なる順序を使用する、その他の環境における代替実施形態が、本発明のいくつかの態様の範囲及び精神を逸脱することなしにやはり実装されることができる。フローチャートはステップ401において始まり、制御が直ちにステップ410に進む。
【0045】
[0058]ステップ410において、プロセッサ350が、ユーザがゲーム機に好適な端末の種類を選択することを可能にする。プロセッサ350は、タッチスクリーン200上に示されるメニューなどの好適なユーザインターフェースを使用して、ユーザがゲーム機110のゲームに対して使用されるべき端末の種類(例えば、Microsoftのサイドワインダーゲームパッド)を選択することを可能にすることができる。例えば、プロセッサ350は、ユーザにゲーム機のリストを提示することができる。ユーザがゲーム機を選択すると、プロセッサ350は、選択されたゲーム機と互換性がある利用可能な端末の種類のリストを提示することができ、ユーザは利用可能な端末の種類のうちの1つを選択することができる。
【0046】
[0059]ステップ420において、プロセッサ350は、端末の種類に関する設定データを取得する。理解されることができるように、様々な端末の種類のための設定データが二次記憶装置390に記憶されることができ、選択された端末の種類に関するデータが取得され、適切な場所(レジスタ、変数など)に記憶されることができる。設定データは、経路131上でポート132を通じてゲーム機110などのその他のソースから受信されること、又は(例えば、ウェブサーバから)無線インターフェース330を通じて受信されることなどもできることを理解されたい。
【0047】
[0060]ステップ430において、プロセッサ350は、タッチスクリーン上に、端末の種類の入力要素を視覚的に表す画像を表示する。例えば、ユーザがゲームのための入力端末として(Microsoft Corporationの)サイドワインダーゲームパッドを選択する場合、画像がサイドワインダーゲームパッドを視覚的に複製する(視覚的に表す)ように、ボタン、コントロール、テキスト、及びその他の視覚的特徴を備えたサイドワインダーゲームパッドの画像がタッチスクリーンディスプレイ上に表示される。
【0048】
[0061]異なる要請に応じて、ユーザは、別のゲームのための入力端末として(Sega Corporationの)Sega Dreamcastコントローラを選択することができる。そのとき、Sega Dreamcastコントローラを視覚的に複製するSega Dreamcastコントローラの画像が、タッチスクリーンディスプレイ上に表示されることができる。汎用的なジョイスティックが端末の種類として選択される場合、ある部分が(ジョイスティックの上部に提供される)押しボタンに対応する可能性があり、(第1の部分と重なるか、又は重ならない)別の部分が様々な方向のジョイスティックの動きに対応する可能性がある。
【0049】
[0062]ステップ450において、プロセッサ350が、ユーザアクションを表すタッチデータを受信する。ユーザは、(選択された入力端末の種類の視覚的表現を有する)タッチスクリーン200上で押す、離す、ドラッグするなどのアクションを実行することができる。プロセッサ350は、タッチスクリーンコントローラ320からユーザアクションを受信する。一実施形態において、プロセッサ350は、ユーザアクションが行われたタッチスクリーンディスプレイ上の位置の座標を表す2つの正の整数、及び押下の状態を表す(A0”又はA1”の形態の)論理値としてユーザアクションを受信することができる。押下の状態A1”は、Apress@(又はタッチスクリーン上のAtouch@)が、受信された座標によって示される位置で現在行われていることを示すことができる一方、押下の状態A0”は、Apress@が解除された(タッチスクリーンがもはやAtouch@されていない)ことを示すことができる。プロセッサ350は、関連する技術分野でよく知られているその他のフォーマットでタッチデータを受信する可能性があることを理解されたい。
【0050】
[0063]ステップ460において、プロセッサ350は、ユーザアクションが有効な端末の入力を表すかどうかをチェックする。例えば、プロセッサ350は、(誤ったApress@の状態を防止するために)Apress@が所定の長さの時間続いたかどうかをチェックすることができる。プロセッサ350は、ボタン又はコントロールなどのユーザ入力要素がユーザのアクションが行われた座標に配置されているかどうかをチェックすることもできる。両方のチェックが正しいと判明する場合、Apress@は有効な端末の入力であり、プロセッサ350は、ユーザアクションを出力フォーマットジェネレータ370に提供する。チェックが正しいと認められない場合、そのApress@は有効な端末の入力ではない。ユーザアクションが有効な端末の入力であると判明する場合、処理はステップ470に続く。そうでない場合、制御はステップ450に戻る。
【0051】
[0064]ステップ470において、出力フォーマットジェネレータ370は、ユーザアクションを、ゲーム機のインターフェースの要件に適合する形態の端末の入力に変換する。ステップ480において、デバイスインターフェース360が、(1つ又は複数の)端末の入力を経路131上でゲーム機110に送信する。ステップ450〜480のループが、タッチスクリーン200が遭遇する様々な押下のアクションを処理し続けることができる。
【0052】
[0065]このように、上記の例示的な実施形態は、設定データ内の様々な定義に基づいて動作する。(設計されるべき)特定のゲームに好適なようにさらなる端末の種類が現れるとき、設定データは、単に、端末の種類に対応するように変更される必要がある可能性がある。一実施形態における例示的な設定の内容を、以下でさらに詳細に説明する。
【0053】
[0066]6.設定データ
[0067]図5は、一実施形態における、二次記憶装置390に記憶された設定データを論理的に示す。テーブル501は、2つの列、端末の種類511及びデバイスの種類512を含む。各行が、1つの端末の種類と、その端末の種類が好適である特定のゲーム機とだけに与えられることが示される。テーブルのデータは、好適なユーザインターフェースを提供するための基礎として使用されることができ、そのユーザインターフェースを使用して、ユーザは(ステップ410において上述されたように)端末の種類を指定することができる。複数の行が、例えば異なるユーザの嗜好に適合するために同じ端末の種類に対して存在することができることを理解されたい。
【0054】
[0068]テーブル502が、それぞれの端末の種類に対して提供されることができる。3つの列、画像531、位置532、及び倍率533を含むテーブル502が示される。画像531は、図2に関して上述した(1つ又は複数の)ボタンの視覚的表現を表し、位置532は、画像の中心が置かれるべき(タッチスクリーン200の領域全体の上の)画素位置を示すことができる。倍率533は、画像531が、対応する領域に表示する前に拡大縮小されるべき率を示し、異なるデバイス/ゲーム/ユーザなどに対して異なる可能性がある。
【0055】
[0069]さらなる設定データが、エミュレーションを補助するために、及び/又は、単に、以下で説明されるように本発明の様々な態様に従って提供される端末の使い勝手のために二次記憶装置390に保有されることもできる。
【0056】
[0070]7.さらなる設定データ及びその使用
[0071]このセクションは、ユーザ入力が、端末をエミュレートするハンドヘルドデバイス130によって獲得され、ゲーム機110に適合する端末の入力に変換される態様を示す。エミュレートされている端末の視覚的表現は、以下の種類の要素を含む可能性がある。
【0057】
[0072]A.デジタルボタン:これらは、端末の入力要素を表す(任意の所望の形状の)グラフィックである。一実施形態において、各ボタンは、定義された中心及び最大許容範囲(例えば、その中心が画素位置(100,100)にあり、範囲が25画素である正方形)を有する。ユーザがそのような入力要素上でアクションを行うとき、(押下された状態に対する)1又は(押下された状態の後の解放された状態も表す押下されていない状態に対する)0のいずれかが、出力フォーマットジェネレータ370によって生成されることができる。
【0058】
[0073]B.単方向押しボタン:これらは、定義された中心及び最大許容範囲を有する端末の入力要素の別の群を表す(任意の形状の)グラフィックである。ユーザがそのような入力要素上でアクションを行うとき、0から1まで(0及び1の両方を含む)の間の浮動小数点数が、出力フォーマットジェネレータ370によって生成されることができる。
【0059】
[0074]C.双方向押しボタン:これらは、定義された中心及び最大許容範囲を有する端末の入力要素のさらに別の群を表す(任意の形状の)グラフィックである。ユーザがそのような入力要素上でアクションを行うとき、−1から1まで(−1及び1の両方を含む)の間の浮動小数点数が、出力フォーマットジェネレータ370によって生成されることができる。
【0060】
[0075]表1〜4は、例示的な実施形態において、設定データが、エミュレートされている端末のために記憶されることができる態様を示す。テーブル1は、ハンドヘルドデバイス130上でエミュレートされている端末のボタン(入力要素)に関するグラフィックを定義するために必要な設定データを示す。テーブル1に従う設定データが、エミュレートされている端末の各ボタンに関して記憶されることができる。プロセッサ350は、テーブル1に示される情報を記憶する対応する設定テーブルから取得されたデータを使用してタッチスクリーン200上でボタンの視覚的表現を生成することができる。
【表1】

【0061】
[0076]テーブル2は、ハンドヘルドデバイス130によってエミュレートされている端末に関する設定データを示す。テーブル2は、エミュレートされている端末の名前(テーブルの要素「TerminalName」)と、テーブルの要素「DigitalButtons」、「UniDirButtons」、及び「BiDirButtons」にそれぞれ記憶された上述の3つの種類(デジタル、単方向、及び双方向)のそれぞれのボタンの数とを特定する。
【0062】
[0077]テーブル2は、上述のボタンの3つの種類のそれぞれに関する(テーブル1に示された)設定データに含まれる全てのボタン設計の詳細の連結されたリストへのポインタも記憶する。ハンドヘルドデバイス130上に端末を視覚的に表現するために、プロセッサ350は、それぞれの連結されたリストからボタンのそれぞれに関する設定データを取得し、タッチスクリーン200上にそれぞれのボタンに関するグラフィックを生成することができる。
【表2】

【0063】
[0078]テーブル3は、ゲーム機と共に使用されることができる端末を指定する設定データを示す。
【表3】

【0064】
[0079]テーブル4は、各ボタンに対応する現在の値が、その値をゲーム機110に提供する前に記憶されることができる態様を示す。エミュレートされている端末の各ボタンは、そのボタンの現在の値を記憶するために、テーブル4に示される出力テーブルを有することができる。
【表4】

【0065】
[0080]端末をエミュレートするハンドヘルドデバイス130は、テーブル1及び2に記憶されたデータを使用して、エミュレートされている端末の視覚的表現をタッチスクリーン200上に生成することができる。タッチスクリーン200上のユーザアクションの結果として生成された端末の入力がゲーム機110に送信されることができるように、通信が、経路131上でポート132を通じてゲーム機110とハンドヘルドデバイス130との間で確立される必要がある。
【0066】
[0081]一実施形態において、ゲーム機110は、そのゲーム機110が1つ又は複数のポート122、123、及び132から応答を受信するまで100ミリ秒毎に1回、全てのそのゲーム機110のポート上で検出信号(例えば、16進値0xAA)を繰り返し送信する。ゲーム機110と互換性がある端末をエミュレートするハンドヘルドデバイス130は、経路131をゲーム機110からの検出信号に関して繰り返しチェックする。そのとき、ハンドヘルドデバイス130は、ゲーム機110に存在信号(例えば、16進値0x55)を送信し、そのようにしてゲーム機110とハンドヘルドデバイス130との間の通信を確立する。次のステップとして、ゲーム機110は、問い合わせ信号(例えば、16進値0x01)を使用して、利用可能なボタンの数をハンドヘルドデバイス130に要求することができる。
【0067】
[0082]ハンドヘルドデバイス130は、各バイトがそのハンドヘルドデバイスが3つの種類のそれぞれのいくつのボタン用に構成されるかを示す3バイトの系列を用いて応答することができる。例えば、エミュレートされている端末が6つのデジタルボタン、1つの単方向ボタン、及び1つの双方向ボタンを有すると仮定すると、ハンドヘルドデバイス130は、デジタルボタン、単方向ボタン、及び双方向ボタンの数に対応する16進値0x6、0x1、及び0x1を有する3バイトを用いて応答することができる。ハンドヘルドデバイス130から各種類のボタンの数を受信した後、ゲーム機110は、ハンドヘルドデバイス130から端末の入力を受け取ることができる状態にある。
【0068】
[0083]ユーザがタッチスクリーン200の任意の部分を押すと、割り込みが、押された/解放されたポイントの座標とユーザアクションの性質(押された/解放された)とをタッチスクリーンコントローラ320がプロセッサ350に提供するために生成されることができる。タッチスクリーンコントローラ320が、ユーザによって押された1つのポイントだけに関する座標を提供することができると仮定して説明が続けられるが、タッチスクリーンコントローラ320は、複数のポイントがユーザによって同時に押される場合に複数の座標を提供する可能性があり、ユーザによる複数の同時の押下から生じるそのような複数の座標が、本明細書において提供される開示を読むことによって当業者に明らかになるように、同様の態様で端末の入力にやはり変換されることができることを理解されたい。例示の目的で、ボタン(入力要素)は、単一の軸、例えば上下又は左右に沿った動きが可能であると仮定される。
【0069】
[0084]プロセッサ350は、セクション5において上述されたように、(受信された座標とユーザアクションの性質とによって示された)ユーザアクションが有効な端末の入力を示すかどうかをチェックすることができる。それが有効な端末の入力ではない場合、受信されたデータは破棄される。それが有効な端末の入力である場合、出力フォーマットジェネレータ370が、以下で説明されるように端末の入力を生成する。
【0070】
[0085]入力要素がデジタルボタンである場合、対応するデジタルボタンに関する値が、ユーザアクションの性質が「押された」である場合は1に設定され、ユーザアクションの性質が「解放された」である場合は0に設定される。その他のボタンに関する値は0(解放された)に設定される。
【0071】
[0086]入力要素が単方向押しボタンである場合、出力フォーマットジェネレータ370が、以下の通りに端末の入力を生成する。
【0072】
[0087]タッチスクリーン200上に表示される入力要素の中心座標が(X0,Y0)であり、タッチスクリーンコントローラ320からプロセッサ350によって受信された座標が(X1,Y1)であると仮定する。また、Xt及びYtが、タッチスクリーン上に表示される入力要素に関するそれぞれ(座標0,0を基準とした)x軸及びy軸に沿った境界であり、ユーザが1つの自由度(例えば、x軸)だけを与えられると仮定する。さらに、0から1までの出力は、小数の精度nを有する(例えば、n=3の場合、可能な値は0.000から1.000までの間になる)。
【0073】
[0088]端末の入力=((10^n)/Xt)*(X1−X0)
【0074】
[0089]入力要素が双方向押しボタンである場合、出力フォーマットジェネレータ370が、以下の通りに端末の入力を生成する。
【0075】
[0090]タッチスクリーン200上に表示される入力要素の中心座標が(X0,Y0)であり、タッチスクリーンコントローラ320からプロセッサ350によって受信された座標が(X1,Y1)であると仮定する。また、Xt及びYtが、グラフィックのボタンに関するそれぞれx軸及びy軸に沿った境界であり、ユーザが1つの自由度(例えば、y軸)だけを与えられると仮定する。さらに、−1から1までの出力は、小数の精度nを有する(例えば、n=4の場合、可能な値は−1.0000から+1.0000までの間になる)。
【0076】
[0091]端末の入力=((10^n)/Yt)*(Y1−Y0)
【0077】
[0092]上述の態様で出力フォーマットジェネレータ370によって生成された端末の入力は、(上述の)出力テーブル4に記憶され、ゲーム機110が端末の入力を要求するときに経路131を介してゲーム機110に提供される。
【0078】
[0093]したがって、適切な設定データを使用することによって、ハンドヘルドデバイス130は、様々なゲーム機と併せて使用されることができる。説明が、一実施形態におけるゲーム機に関して続けられる。
【0079】
[0094]7.ゲーム機
[0095]図6は、一実施形態におけるゲーム機110の詳細を示す構成図である。ゲームロジック610、端末インターフェース620、機械的出力630、オーディオ出力640、及びディスプレイ出力650を含むゲーム機110が示される。各ブロックが、以下でさらに詳細に説明される。
【0080】
[0096]端末インターフェース620は、(例示的な実施形態において3つの示されたポート上で)異なる端末から様々な端末の入力を受信し、対応する情報をゲームロジック610に提供する。端末インターフェース620は、異なるハンドヘルドデバイスが図6のゲーム機にプラグ接続されることができ、図6のゲーム機と併せて使用されることができるように(少なくともポート132に)プラグ接続可能な物理的インターフェースを提供することができる。
【0081】
[0097]機械的出力630、オーディオ出力640、及びディスプレイ出力650は、プレイされているゲームに対応する様々なユーザエクスペリエンスを提供するために一緒に使用される。機械的出力630は、外部の機械的コンポーネントとインターフェースを取ることによって物理的な動き(例えば、振動)を提供することができる。オーディオ出力及びディスプレイ出力650は、ユーザエクスペリエンスの一部としてオーディオ信号及び視覚的画像を生成するためにそれぞれ使用されることができる。
【0082】
[0098]ゲームロジック610は、様々な端末の入力を受信し、受信された様々な端末の入力に応じて、ゲームに対応するユーザエクスペリエンス提供する。ゲームロジックは、ゲームの頭脳とみなされることができる。(異なるポートからの)異なる端末の入力は、ゲームを構成する異なるユーザエクスペリエンスを引き起こすことができる。一実施形態において、端末は、入力を提供できるだけであり、ゲームロジックが、ゲームに対応するユーザエクスペリエンスを決定するように設計される。端末は、そのような実施形態においてゲームロジックからいかなる入力も受信せず、したがって、ゲームに関するいかなるAintelligence@も含まない。
【0083】
[0099]上記の例示的な例において、ゲーム機110は、(端末をエミュレートする)ハンドヘルドデバイス130に繰り返し(例えば、10ミリ秒毎に)「データ読み取り」信号(例えば、16進バイト0x02)を送信することによって端末の入力を要求することができる。ハンドヘルドデバイス130は、それぞれの出力テーブルから各ボタンに関する現在の値(例えば、浮動小数点数が4バイトで表されると仮定して、各デジタルボタンに関する1バイト及び各方向ボタンに関する4バイト)を取得し、その現在の値を、経路131を介してゲーム機110に提供することができる。6つのデジタルボタン、1つの単方向ボタン、及び1つの双方向ボタンを有する端末の上記の例において、ハンドヘルドデバイス130は、14バイト(6つのデジタルボタンのそれぞれに関する1バイトずつからなる6バイト、単方向ボタンに関する4バイト、及び双方向ボタンに関する4バイト)を用いて、ゲーム機110からの「データ読み取り」要求に応答することができる。
【0084】
[00100]したがって、上述の技術を使用して、(その他に移動体電話、音楽/ビデオプレイヤなどのうちの1つ又は複数として使用可能である)様々なハンドヘルドデバイスが、ゲーム機用の端末エミュレータとして使用されるように適合されることができる。ユーザは、そのようなデバイスを様々な地理的位置に持ち運び、様々なゲーム機と共にプレイすることができる。したがって、ゲーム機の提供者は、ポートを端末エミュレータのプラグ接続が可能なように利用できるようにしておき、ユーザがゲームをプレイすることを可能にすることができる。
【0085】
[00101]8.結論
[00102]本発明の様々な実施形態を上で説明したが、それらの実施形態は、限定ではなく例としてのみ示されたことを理解されたい。したがって、本発明の幅及び範囲は、上述の例示的な実施形態のいずれによっても限定されるべきでなく、添付の特許請求の範囲及びその均等物によってのみ定義されるべきである。
【図面の簡単な説明】
【0086】
【図1】本発明の様々な態様が実装されることができる例示的なゲームシステムを示す構成図である。
【図2】一実施形態における、タッチスクリーン上に示される表示を示す図である。
【図3】本発明の一実施形態における、ゲームシステム用の端末をエミュレートするハンドヘルドデバイスの詳細を示す構成図である。
【図4】一実施形態における、端末のエミュレーションを可能にする処理システムの動作を示すフローチャートである。
【図5】端末のエミュレーションを提供するハンドヘルドデバイスの一実施形態において記憶されることができる様々な設定データを示す図である。
【図6】一実施形態におけるゲーム機の詳細を示す構成図である。
【符号の説明】
【0087】
100 ゲームシステム
110 ゲーム機
111、112、及び131 通信経路
122、123、及び132 ポート
130 ハンドヘルドデバイス
200 タッチスクリーン
205〜208 左側のボタン
225 大きなボタン
232 下方向ボタン
233 上方向ボタン
234 右方向ボタン
235 左方向ボタン
250及び251 右側の2つのボタン
320 タッチスクリーンコントローラ
330 無線インターフェース
340 オーディオインターフェース
350 プロセッサ
360 デバイスインターフェース
370 出力フォーマットジェネレータ
380 システムメモリ
390 二次記憶装置
501及び502 テーブル
511 端末の種類
512 デバイスの種類
531 画像
532 位置
533 倍率
610 ゲームロジック
620 端末インターフェース
630 機械的出力
640 オーディオ出力
650 ディスプレイ出力

【特許請求の範囲】
【請求項1】
一群のプレイヤがゲームをプレイすることを可能にするゲームシステムにおいて、
一群のゲームポート上で複数の端末の入力を受信するように設計されたゲーム機であって、前記一群のゲームポート上で前記複数の端末の入力を受信することに応答して前記一群のプレイヤに前記ゲームに対応するユーザエクスペリエンスを提供し、前記一群のゲームポートが第1のゲームポートを含むゲーム機と、
前記ゲーム機用の端末エミュレータとして動作するように設計されたハンドヘルドデバイスと
を備え、
前記ハンドヘルドデバイスが、タッチセンシティブスクリーンを含み、前記タッチセンシティブスクリーン上の一部分、一群のユーザアクション、及び前記複数の端末の入力に含まれる第1の端末の入力を示すようにプログラム可能であり、
前記端末が、前記タッチセンシティブスクリーンの前記部分上の前記一群のユーザアクションに応答して前記第1の端末の入力を送信するように設計されている、ゲームシステム。
【請求項2】
前記ハンドヘルドデバイスは、前記ハンドヘルドデバイスが第1の端末の種類をエミュレートすべきか、または第2の端末の種類をエミュレートすべきかを示す入力を受信するように設計され、前記ハンドヘルドデバイスは、前記ハンドヘルドデバイスが前記第1の端末の種類をエミュレートすべきであることを前記入力が示すときにのみ前記第1の端末の入力を提供するが、前記ハンドヘルドデバイスが前記第2の端末の種類をエミュレートすべきであることを前記入力が示す場合には、前記一群のユーザアクションが前記部分上で検出されたときでさえも前記第1の端末の入力を送信しない、請求項1に記載のゲームシステム。
【請求項3】
前記ハンドヘルドデバイスが、前記ゲーム機にプラグ接続可能であり、それによって、前記ハンドヘルドデバイスを持ち運んで、異なる場所に置かれたゲーム機と共に使用することができるようになっている、請求項1に記載のゲームシステム。
【請求項4】
前記ハンドヘルドデバイスが移動体電話としても動作する、請求項2に記載のゲームシステム。
【請求項5】
前記ハンドヘルドデバイスがマルチメディアプレイヤとしても動作する、請求項2に記載のゲームシステム。
【請求項6】
ゲームシステムの端末をエミュレートするハンドヘルドデバイスにおいて、
タッチスクリーンと、
ゲーム機のゲームポートに結合されるように設計されたデバイスインターフェースであって、前記ゲーム機が前記ハンドヘルドデバイスの外部に提供されるデバイスインターフェースと、
端末の種類に関連する入力要素を示す設定データを記憶するためのメモリと、
前記入力要素を表す画像を前記タッチスクリーンの一部分上に表示し、前記部分上の一群のユーザアクションに応答して端末の入力を生成する処理ユニットと
を備え、
前記端末の入力が、前記デバイスインターフェースによって前記ゲームポート上で前記ゲーム機に提供され、
ユーザが、前記ゲーム機によって提供されるゲームをプレイするために前記部分上の前記一群のユーザアクションを提供する、ハンドヘルドデバイス。
【請求項7】
前記設定データが複数の端末の種類をさらに指定し、各端末の種類が、対応する一群の入力要素に関連付けられ、
前記処理ユニットが、前記ハンドヘルドデバイスによってエミュレートされるべき特定の端末の種類を示すユーザ入力を受信するように設計され、
前記処理ユニットが、前記特定の端末の種類に関連する入力要素の第1の群を決定するために前記設定データを調べ、前記ユーザ入力を受信することに応答して前記タッチスクリーン上に入力要素の前記第1の群に対応するボタンを表示する、請求項6に記載のハンドヘルドデバイス。
【請求項8】
前記処理ユニット及び前記デバイスインターフェースが、前記特定の端末の種類を示す前記ユーザ入力を受信することに応答して、並びに入力要素の前記第1の群を表示する部分上のユーザアクションに応答して、前記特定の端末の種類に従って前記ゲームポート上に端末の入力を共に生成する、請求項7に記載のハンドヘルドデバイス。
【請求項9】
前記設定データが、入力要素の前記第1の群のそれぞれに対応するボタンが表示されるべき前記タッチスクリーン上の位置を示し、前記処理ユニットが、前記設定データによって指定された位置に前記ボタンを表示する、請求項8に記載のハンドヘルドデバイス。
【請求項10】
前記デバイスインターフェースが、FireWire、RS−485、IEEE802.11、Bluetooth、USB、RS232のうちの1つに従う前記端末の入力を前記ゲームポート上に提供するように設計されている、請求項9に記載のハンドヘルドデバイス。
【請求項11】
入力要素の前記第1の群のうちの1つが、前記ゲーム機に方向を示すように設計されている、請求項9に記載のハンドヘルドデバイス。
【請求項12】
ゲーム機でゲームをプレイすることを容易にする方法において、
ハンドヘルドデバイスのタッチスクリーン上に端末の種類の第1の入力要素を視覚的に表す画像を表示するステップであって、前記第1の入力要素が前記タッチスクリーンの第1の部分上に表示されるステップと、
前記第1の部分上の一群のユーザアクションを表すタッチデータを受信するステップと、
前記一群のユーザアクションを、前記ゲーム機のインターフェースの要件に適合する形態の端末の入力に変換するステップと、
ゲーム機のゲームポートに前記端末の入力を送信するステップと
を含む方法。
【請求項13】
ユーザが前記ゲーム機に好適な端末の種類を選択することを可能にするステップと、
メモリから前記端末の種類に関する設定データを取得するステップであって、前記設定データが、前記第1の部分、及び前記第1の入力要素の種類を示すステップと
をさらに含み、
前記表示するステップが、前記メモリから取得された前記設定データに基づく、請求項12に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−61277(P2009−61277A)
【公開日】平成21年3月26日(2009.3.26)
【国際特許分類】
【外国語出願】
【出願番号】特願2008−228444(P2008−228444)
【出願日】平成20年9月5日(2008.9.5)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
2.イーサネット
【出願人】(501261300)エヌヴィディア コーポレイション (166)
【Fターム(参考)】