(57)【特許請求の範囲】
【請求項１】
ゲームシステムであって、；
少なくとも１つのゲームを管理するように構成されたゲームサーバを含み、ここで
（ａ）第１の接続は第１のデバイスと前記ゲームサーバの間でなされ、前記第１のデバイスが第１の動作センサを有し、
（ｂ）第２の接続は第２のデバイスと前記ゲームサーバの間でなされ、
（ｃ）第３の接続は第３のデバイスと前記ゲームサーバの間でなされ、前記第３のデバイスが第２の動作センサを有し、
（ｄ）前記第１の接続により前記ゲームサーバ上で第１のデバイスゲーム動作データは前記第１のデバイスから受信され、ゲーム中に第１のプレイヤーに動かされる前記第１のデバイスに応答して、前記第１の動作センサを使用して前記第１のデバイスゲーム動作データは判断され、
（ｅ）前記第２のデバイス上でゲームに関連する第１の画像コンテンツが表示され、前記第１の画像コンテンツは、少なくとも一部は、受信した前記第１のデバイスゲーム動作データに基づいて表現され、
（ｆ）前記第３の接続により前記ゲームサーバ上で第３のデバイスゲーム動作データを前記第３のデバイスから受信し、ゲーム中に第２のプレイヤーに動かされる前記第３のデバイスに応答して、前記第２の動作センサを使用して前記第３のデバイスゲーム動作データは判断され、
（ｇ）前記ゲームに関連する前記第２のデバイス上で第２の画像コンテンツが表示され、前記第２の画像コンテンツは、少なくとも一部は、受信した前記第３のデバイスゲーム動作データに基づいて表現され、
前記第２のデバイスが、前記ゲームサーバからダウンロードされ、プレイヤーの位置を特定し前記ゲームサーバからグラフィック表示コンテンツを要求するためのゲームロジックを有する非同期Ｗｅｂアプリケーションを含む、ゲームシステム。
【請求項２】
前記第２のデバイスがＷｅｂ対応ディスプレイである、請求項１に記載のゲームシステム。
【請求項３】
前記第１の接続および前記第２の接続が別々のインターネット接続である、請求項１に記載のゲームシステム。
【請求項４】
前記第１の動作センサがジャイロスコープおよび加速度計を含む、請求項１に記載のゲームシステム。
【請求項５】
前記第１のデバイスがジャイロスコープおよび加速度計から得た生の動作データを分析し、前記第１のゲーム動作データを判断する、請求項１に記載のゲームシステム。
【請求項６】
前記第１のゲーム動作データがスイング速度およびロール角を含む、請求項１に記載のゲームシステム。
【請求項７】
前記第１のゲーム動作データが前腕の回転率、手首の曲げ率、スイング軌道を含む、請求項６に記載のゲームシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
[関連出願の相互参照]
本出願は２０１２年５月２日付け出願のＪｅｆｆｅｒｙらによるモバイルフォン動作センサ入力を用いたＷｅｂベースのスポーツゲームプラットフォームという米国特許仮出願番号第６１／６４１、８２５号の利益を主張し、これらそれぞれの主題は、その全体が参照により本明細書に組み込まれる。また、本出願はＪｅｆｆｅｒｙの２０１１年１０月７日提出「マルチメディア・プレゼンテーション・スレッドの動的アセンブリの方法およびシステム」と題する米国特許出願第１３／２６９、５３４号、Ｊｅｆｆｅｒｙらの２０１２年１０月１８日提出「モバイルデバイスの動的センサを使用してスポーツ動作を分析する方法およびシステム」と題する米国特許出願第１３／６５５、３６６号、Ｊｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９、７７４号に関し、これらそれぞれの主題は、その全体が参照により本明細書に組み込まれる。
【背景技術】
【０００２】
[本発明の背景]
１．発明の属する技術分野
本発明はコンピュータゲーム分野に、更に詳しくは、モバイルデバイス動作センサ入力を搭載の分散型ウエブベースゲームのプラットフォーム関する。
【０００３】
２．関連技術の説明
テレビゲームにはユーザが簡単なコントローラを使って（２つの短い線が上下する）「ｐａｄｄｌｅｓ／かい」で「ボール」を打つ、１９７２年の「Ｐｏｎｇ」というゲームに始まる広範にわたって先行技術が存在する。過去４０年間の間にコントローラおよびゲームコンソールは目覚ましい進歩をとげた。例えば、プレイステーションムーブにはゴルフ（「Ｔｉｇｅｒ  Ｗｏｏｄｓ  Ｇｏｌｆ」）、テニス（「Ｇｒａｎｄ  Ｓｌａｍ  Ｔｅｎｎｉｓ」）、格闘（「Ｔｈｅ  Ｆｉｇｈｔ」）に関するカスタマイズされたコントローラがあり、これらの場合ゲームコンソールには約２５０ドル、さらに、カスタマイズされたコントローラには７０ドルを要する。例えば、Ｍｏｖｅコントローラはカメラを使用し、かつ、赤外線センサ搭載のブルートゥースコントローラにより動作を捉える。Ｘボックス３６０Ｋｉｎｅｃｔの場合は、プレイヤーの身体動作は３つの３Ｄカメラおよび高度のパターン認識技術で捉えるので物理的なコントローラさえも使用していない。Ｗｉｉ、ＰｌａｙＳｔａｔｉｏｎ、Ｘｂｏｘ  ３６０にはネットワーク能力が有り、ホストされたオンラインネットワークを介してマルチプレイヤーゲームが可能である。
【０００４】
ＰＣベースのゲームの多くでは、コンピュータキーボードおよび／またはマウスをコントローラとして使用している。例えば、「Ｗｏｒｌｄ  ｏｆ  Ｗａｒｃｒａｆｔ」ではユーザはコミュニケーション用にキーボードを使用して戦士の移動動作、戦闘動作、構築動作の制御のために戦士キャラクターおよびスクリーン上の機能を選択する。Ｇａｍｅｌｏｆｔの「Ｌｅｔ’ｓ  Ｇｏｌｆ  ３」および「Ｗｏｒｌｄ  ＰＧＡ  Ｔｏｕｒ  Ｇｏｌｆ」では、プレイヤーはアバター（分身）ゴルフキャラクターのスイングを制御する「ｓｌｉｄｉｎｇ  ｂａｒ（滑り棒）」を選択する。これらのゲームでは高額なコントローラの購入を必要としないが、キーボードおよび／またはマウスを使用した制御は困難な場合がある。ゴルフなどの高スキルを要するゲームではこの困難性は特に顕著であり、つまり、ボールを打つ最適なスイングでは腕の振り、腰および肩の回転、手首の曲げ、腰の移動、前腕の回転、インサイドアウトスイング軌道で成る多次元的な身体動作が要求されるので、それぞれが正しくないと最適なショットとは成らない。実際、キーボードおよび／またはマウスを使用してゴルフスイング完全動態をシミュレーションすることは簡単には出来ない。
【０００５】
任天堂Ｗｉｉコントローラは、ゲームコンソールにブルートゥースコネクションにより接続されており、かつ、ＡＤＸＬ３３０加速度計を使用して３軸で加速度を検知している。さらに、Ｗｉｉリモートは１０ＬＥＤセンサバーと組み合わされて物理的にゲームコンソールに接続されているＰｉｘＡｒｔ光学的センサを特徴としているが、これによりＷｉｉリモートが指す位置の測定が可能である。台湾の会社であるＡＳＲｏｃｋは任天堂Ｗｉｉゲーム用のコントローラを模するｉＰｈｏｎｅの動作センサ使用を主張し、その結果として、ユーザはゲームコントローラとしてｉＰｈｏｎｅを使用する既存のＷｉｉまたはＰＣベースのゲームをプレイが出来るとしている。ｉＰｈｏｎｅはブルートゥースまたはＷｉＦｉネットワークを使用してゲームコンソールに接続されている。これによりコントローラ費用は抑えられるが、ユーザは依然としてゲームコンソールまたは特有のゲームコントローラ・ハードウエア・マザーボードを自身のパソコンに取り付ける必要がある。ＡＳＲｏｃｋのソフトウエアインストールは挑戦的であっても、いくつかの使い勝手の問題がある。
【０００６】
任天堂ＷｉｉコントローラまたはｉＰｈｏｎｅを使用してシミュレーションしたＡＳＲｏｃｋのＷｉｉコントローラはゴルフスイング、野球のスイング、または、テニスのサーブなどのスポーツ動作を正確に表現してはいないデータ提供であることを留意すべきである。すなわち、Ｗｉｉコントローラは多くのスポーツ動作に対しては精緻ではない近似のみの提供である。例えば、実施したゴルフスイング動作およびスイングの強さの検知はできるが、Ｗｉｉコントローラの方法ではインパクト速度、または、インパクトでのクラブヘッドの精密角度を正確に計算できない。
【０００７】
Ｋｉｍの米国特許出願第２０１０／００６９１５８号は表示デバイスに接続されたモバイルフォーン、ゲームサーバ、ゲームコンソールを用いた韓国人ＨｗａｔｕおよびＭａｈ−Ｊｏｎｇなどによるマルチプレイヤー・カードおよびボードゲームの方法を開示している。しかしながら、Ｋｉｍの方法は表示デバイスに物理的に接続しているゲームコンソールを明らかに必要とし、ゴルフなどのスポーツゲームの現実的な制御には好適とは言えないモバイルデバイスから重要なデータ入力を簡単に得ており、そして、モバイルフォーンはゲームコンソールへの接続（例えば、ブルートゥース、赤外線またはワイヤレスＬＡＮ接続により）が必要である。
【０００８】
Ａｌｌｅｎらの米国特許出願第８、０１９、８７８号はゲームを作るのにモバイルデバイスを用いてローカルエリアネットワーク（ＬＡＮ）上のウエブブラウザの制御方法を記載している。しかしながら、この方法は同一のＬＡＮ上で接続されたデバイスに限定され、かつ、ＬＡＮ上のｗｅｂブラウザによるモバイルデバイス直接接続、および、ｗｅｂブラウザにダウンロードしたプラグインソフトウエアが必要となり、このソフトウエアは現在市販されているＷｅｂ対応テレビでは作動しない。
【０００９】
テレビゲームに関する先行技術には重大な限界がある。コンソールベースのゲームの場合、導入維持に必要な全費用は非常に大きい（少なくとも、ゲームをサポートするプラットフォームに約２５０ドル、個別のゲーム購入費に約７０ドル、コントローラ購入にも７０ドルを要する）。これがコンソールベースのゲーム売上げが過去数年間、停滞気味である一つの理由となっていると思われる。ＰＣ、タブレット、または、モバイルフォーンベースのゲームでは典型的なユーザ入力はパソコンのキーボードまたはタッチスクリーン経由でなされるが、この様なインターフェイスはゴルフ、野球、ボウリング、テニスなどのスポーツ身体動作に係るゲームに最適とは言えない。
【発明の概要】
【００１０】
本発明のシステムおよび方法によれば、動作センサを搭載したモバイルデバイスをゲームの入力コントローラとして使用される分散型ゲームプラットフォームを提供する。クラウドベースのゲームサーバは複数プレイヤー、および、ゲームで表示するコンテンツを管理する。出力されたゲームはモバイルデバイスと物理的に区別されるＷｅｂ対応ディスプレイ上に表示される。複数プレイヤーが複数の地域で同時に同じゲーム、または、異なったゲームをプレイできる。
【００１１】
本発明の注目すべき特徴はユーザが次の２つの接続の確立である：第１に、ユーザのモバイルデバイスからクラウドベースのゲームルールエンジンへの接続、第２に、Ｗｅｂ対応ディスプレイからゲームルールエンジンへの接続から成る２つの個別、同時のインターネット接続。必要とされていないが、モバイルデバイスおよび表示デバイスが同じワイヤレスのローカルエリアネットワーク（ＬＡＮ）上にある場合には、モバイルデバイスから表示デバイスへの直接的接続がある。この任意の接続はユーザおよび表示デバイスに対して遅延低減の利点がある。つまり、表示デバイスが同じローカルエリアネットワーク（ＬＡＮ）上にある場合には、ＬＡＮ経由で表示デバイスへのスイングデータの直接的受け渡しの方が、複数ルータ経由でリモートサーバにデータを送った後に複数ルータ経由でディスプレイに返すよりも速いのである。
【００１２】
さらに、分散型アーキテクチャは次の３つのレベルの計算処理が用いられている：身体動作のモバイルデバイスプロセッサを使用した分析、クラウドベースのゲームルールエンジンの複数プレイヤー管理、プレイヤーインターアクション分析、プレイヤー動作履歴を保存と分析、および、ゲームコンテンツを各表示デバイスへの押上げ（または、引き寄せ）、ならびに、クラウドベースのゲームルールエンジンから押上げられた軽量なゲームロジックを使用した表示デバイスのローカルゲームロジック処理およびアニメーションの表現。
【００１３】
本発明の方法の有意な利点は少なくとも３点である：
【００１４】
別の機器の必要がない。２０１５年までに世界で使用されるスマートフォンは１０億個を超えているが、これら全てのスマートフォンには動作センサが備えられる。本明細書に開示されたシステムは通常のゲームコンソールと比べて著しく低コストであり、かつ、近い将来、一般ユーザは動作センサを搭載したモバイルデバイスおよびＷｅｂ対応ディスプレイ等の必要な機器を有するであろう。
【００１５】
ゲームを制御するのにキーボード、マウス、タッチスクリーンは必要ない。特に、ゴルフ、野球、テニスなどのスポーツゲームをするにはキーボードによる方法は不向きである。例えば、ゴルフ、野球、テニスの場合を見ると、キーボード上のキーの押下とかマウスのクリックよりも、フォーンを振り回してＷｅｂ対応テレビ表示の仮想ボールを打撃する方が比べられないほど多くの現実世界的な経験が得られる。さらに、Ｗｉｉゲームコントローラおよびテレビベースの身体動作キャプチャは必ずしも正確でなく、かつ、現在、精密な分析ができるものではない。
【００１６】
ＷｉｉまたはＸｂｏｘなどのゲームコンソールは三次元物体の優れた図形描画を可能にし、かつ、１９９０年代のクレイＹ−ＭＰなどの高性能スーパーコンピュータと同等の計算能力を持つ。開示されたシステムにより、高性能のグラフィックプロセッサが備わっているゲームコンソールまたはＰＣを購入することなく、複数の分散された地域で複数プレイヤーが同時にゲームをすることを可能にする。開示されたゲームは比較的低い計算能力のＷｅｂ対応デバイス上で作動し、かつ、タイガーウッズＰＧＡゴルフなどの幾つかのコンソールゲームへの機能強化となる優れたグラフィックコンテンツを有するように特に設計されている。
【００１７】
加えて、開示されたウエブベースの分散型ゲームプラットフォームを実行するには、少なくとも５つの顕著な技術革新が用いられる：
【００１８】
（１）モバイルデバイスセンサから生動作データを正確に捉え、そのデータを分析し、かつ、短い遅延接続を可能にする形態の分析データを送信する方法；
【００１９】
（２）ゲームルールエンジンからＷｅｂ対応表示デバイスへ送達され、かつ、帯域幅利用率および遅延を最小限にするためにＷｅｂ対応ディスプレイでキャッシュする待ち行列コンテンツに関する帯域幅およびゲーム表示媒体の遅延を短縮する方法；  
【００２０】
（３）表示デバイスの帯域幅および分解能を最適化する一方で、現実世界をシミュレーションする特有の表示デバイス用ゲーム表示媒体の強化方法；
【００２１】
（４）ゲームの挙動、複数プレイヤー、ゲームルール、および、分散型処理アーキテクチャにおける出力動画それぞれをモバイルデバイス、ゲームルールエンジン、および、Ｗｅｂ対応ディスプレイが最適に分析する計算処理分散方法；
【００２２】
（５）モバイルデバイスがスイングイベントを公開し、かつ、ゲームエンジンおよび表示デバイスが特有の特定ユーザ用の特定イベントに加入する、ユーザデータベースの周期的なポーリングまたはイベント駆動型アーキテクチャのいずれか使用のユーザ入力を検知するゲームルールエンジンおよび表示デバイスの方法；
【００２３】
本発明のこれらの点、別の面、特徴、利点は添付図面とともに理解することで以下の好適な実施形態から明らかになる。
【図面の簡単な説明】
【００２４】
【図１】図１は、モバイルデバイスのいろいろな種類の回転運動を図示する。
【図２】図２は、本発明の一実施形態による、マルチプレイヤー分散型ゲームプラットフォーム用の例示的アーキテクチャを図示する。
【図３】図３は、本発明の一実施形態による、マルチプレイヤーゲームプラットフォームアーキテクチャの例示的実施形態を図示する。
【図４】図４（ａ）ないし（ｅ）は、本発明のゴルフゲームの好ましい実施形態における、いろいろなユーザ経験を図示する。
【図５】図５は、本発明の一実施形態による、ゴルフゲーム用のマルチプレイヤーゲームプラットフォームの例示的実施形態を図示する。
【図６】図６（ａ）および（ｂ）は、本発明の一実施形態による、デジタル画像に対応するセグメントに区切ったゴルフ場のホールを図示する。
【図７】図７（ａ）および（ｂ）は、スイング正確性判断に有益であるゴルフスイング例でのモバイルデバイスのピッチとロールを示す。
【図８】図８（ａ）および（ｂ）は、打点およびその打点を通過するゴルフクラブヘッドの速度を測定するモバイルデバイスのピッチデータについて図示する。
【図９】図９（ａ）および（ｂ）は、打点を判断するゴルフスイングの例におけるモバイルデバイスのピッチおよびヨーについて図示する。
【図１０】図１０は、本発明の一実施形態による、デジタル画像のリアル感を強化する層、シネマグラフ、および／または、スプライトアニメーションについて図示する。
【図１１】図１１（ａ）ないし（ｃ）は、例示テニススイングまたは座りながら水平に打つゴルフスイング中のモバイルデバイスのピッチ、ヨー、ロールの変化を図示する。
【図１２】図１２（ａ）ないし（ｃ）は、野球のスイングのヨー、ロール、およびピッチを図示する。
【図１３】図１３（ａ）ないし（ｃ）は、ボウリング動作のピッチ、ロール、およびヨーを図示する。
【発明を実施するための形態】
【００２５】
本明細書で使用するときモバイルデバイスはマイクロプロセッサ、メモリー、統合動作センサを有するハンデヘルドデバイスを言う。モバイルデバイスの例としてはアップルｉＰｈｏｎｅ、アップルｉＰｏｄ、サムソンＧａｌａｘｙスマートフォンが含まれる。本明細書に記載したモバイルデバイスは例示目的に過ぎないことを理解すべきである。
【００２６】
本明細書で使用するとき、表示デバイスはＷｅｂページを図で表示可能なインターネット接続ディスプレイを言う。
【００２７】
本明細書で使用するとき画像は限定されないが、写真、スプライト、シネマグラフ、ビデオ、ラスタまたはベクター画像、アニメーション、その別のグラフィックエンジン生成視覚物体、およびこれらの組み合わせを含む視覚的に認識できる図形要素を言う。
【００２８】
本明細書で使用するとき、帯域幅利用率とは所定の時間に通信チャネルを通過するデータ量を言う。
【００２９】
本明細書で使用するとき、遅延とは送信とデータ受信との間の時間の遅れを言う。
【００３０】
本明細書で使用するとき、校正点はスポーツ動作が開始する前の構えのポジションでのモバイルデバイスの時間および空間の位置を言う。
【００３１】
本明細書で使用するとき、打点は仮想物体とのインパクトの時間および空間の位置を言う。
【００３２】
本明細書で使用するとき、放出点は仮想物体の放出の時間および空間の位置を言う。
【００３３】
ゴルフなどのスポーツでは打点および放出点は、時間及び空間での同じ物理的位置である。しかしながら、別のスポーツでは打点および放出点は同じではない。例えば、ラクロスでは長柄のスティックでボールを受け取った後（打点でボールがラクロススティックに当たる）、異なる位置の（放出点で）スティックから投げる。更に、いくつかのスポーツでは打点が無くて放出点のみである。例えば、フライフィッシングでは特定の最大値を超えると加重された釣り針が釣竿から放出され、釣竿に角運動量を付与する手首の軽い振りで放出点が生じる。
【００３４】
図１はモバイルデバイス１０の動作センサにより測定された種々の回転運動を図示する。このセンサはＸ、Ｙ、Ｚの加速度データ（各軸に沿ってＧで表示）を捉える加速度計、ならびに、移動（各軸でのラジアン単位で表わす）中のモバイルデバイス１０のピッチ、ロール、および、ヨーを測定するジャイロスコープを含む。現在、動作センサはモバイルデバイス１０に搭載されたアプリケーションで利用できる（押上げされたデータをポーリングさせるか、所有するかのいずれかで）データを用いて、１秒当たり（１００ヘルツ）約１００回でサンプリングする。本発明と併せて用いられる代表的なジャイロスコープはＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ，Ｉｎｃ．社製のＬ３Ｇ４２００Ｄジャイロスコープである。しかしながら、本発明は現在利用可能な動作センサ技術に限定されないことを理解すべきである。
【００３５】
図２は本発明の一実施形態による、ゲームプラットフォーム１００の例示的アーキテクチャを図示する。図示の様に、ゲームプラットフォーム１００の３つの主要な部品はモバイルデバイス１０、ゲームサーバ１１０、表示デバイス２０である。ゲームサーバ１１０はプレイ中の複数のゲームを管理するゲームルールエンジン１１５を含む。図示の様に、ゲームルールエンジン１１５はユーザデータベース１１６、ゲームリソースデータベース１１７、動作アーカイブデータベース１１８にアクセスする。ユーザデータベース１１６はログイン情報およぶゲーム情報を保存する。ゴルフの場合にはゲーム中に行われた各スイングのスイング情報、プレイヤーの現在のスコア、何番のホールでプレイしているか、今使用しているゴルフクラブ等の情報を含む。ゲームリソースデータベース１１７は、表示デバイス２０上のゲームシシミュレーション用のグラフィカルコンテンツを含む。例えば、ゲームリソースデータベース１１７は飛んでいる仮想ゴルフボールが地面に落ちるまで投影しているゴルフホールのセグメントに基づいて画像を取り出せるような指数化したゴルフホールの複数の２Ｄ画像またはビデオを含む。更に詳しく説明するとおり、ゲームリソースデータベース１１７はゲーム経験を強化するための様々な（シネマグラフ、ビデオ、スプライトなどの）図形要素を含む。動作アーカイブデータベース１１８は中長期的な分析用に実績動作データ、例えば、ゴルフの場合にはスイング、パッティング、チッピング等の一貫性向上の縦断的比較用のスイング動作正確性のデータを含む。さらに、スイング動作データの正確性はユーザに提示され、かつ、パッティング一貫性向上の縦断的比較のために、アプリにローカルで、および、ユーザのアカウントにあるサーバに格納される。
【００３６】
例示されている実施形態において、ゲームサーバ１１０はインターネット１５０経由のクラウドベース対応のグローバルな接続性がある。ユーザにとってユーザのモバイルデバイス１０および表示デバイス２０を、個別の区別されるインターネット接続経由でゲームサーバ１１０に同時接続することができる。初めに、モバイルデバイス１０は分析動作データを含めたデータをゲームサーバ１１０へ送信すると、今度は、ゲームサーバ１１０は別々のインターネット接続経由でディスプレイ２０においてゲーム媒体表示を促進する。一実施形態では、ソフトウエアアプリケーションの形式で軽量のゲームロジックエンジン１２０はゲームルールエンジン１１５の大量のロジックが符号化された好適なＷｅｂ対応表示デバイス２０に押し入れることができ、また続けて、ゲームロジックエンジン１２０は条件が違えばゲームサーバ１１０で直接実施することになる仕事の多くを行える。
【００３７】
一実施形態では、図２の点線７５で図示したように、同一のネットワーク上のローカルエリアネットワーク（ＬＡＮ）経由でユーザのモバイルデバイス１０および表示デバイス２０は任意で接続することができる。ＬＡＮ接続により同じ地域のユーザにとって、動作とゲームアニメーション表示との間の大幅な遅延低減が可能になる。この実施形態では、（同じ物理的ＬＡＮ上ではない）異なる地域で複数プレイヤーのゲームを可能にするために、動作データはモバイルデバイス１９から表示デバイス２０、さらには、ゲームサーバ１１０へ直接的送信する。ゲームに入っている別のプレイヤーの表示デバイス１０および／または２０を更新し、動作データはそれぞれのモバイルデバイス１０からインターネット１５０経由でゲームサーバ１１０へ送信する。ＬＡＮ接続７５により特定のプレイヤーに対するゲームの進行を速め、モバイルデバイス１０と同じＬＡＮ上の表示デバイス２０へのデータの高速（ミリ秒）送信が可能になる。例えば、非ローカル接続経由でゲームロジックサーバへ送信、続けて、表示デバイス２０へ送信される場合の感知できるデータ遅延（例えば、三分の一秒）と比較すれば、同じＬＡＮに接続されている場合にはモバイルデバイス１０をスイング動作すると、ほぼ同時に表示デバイス２０上にボールの飛球として現れる。
【００３８】
表示デバイスがパソコン（ＰＣ）、Ｗｅｂ対応テレビ、タブレット、または、類似の計算装置である場合、適切なＷｅｂブラウザプラグイン装着で接続ができる。好ましくは、ユーザはプラグインを装着し、モバイルデバイス１０用にＬＡＮを検索し、かつ、デバイス１０と通信するには「了解ボタン」をクリックする必要がある。または、そのプログラムはローカルネットワークを「聞く」ように構成されたカスタムＷｅｂブラウザであり得て、それゆえに、プラグインが有効に組み込まれる。現在市販されているｉＰａｄ、アンドロイド、Ｗｅｂテレビプ、Ｗｅｂブラウザはプラグイン機能をサポートしていないが、近い将来に、これらデバイスのいくつかはオープンプラットフォームになって類似の接続が可能になる。ｉＰａｄおよびアンドロイドのプラットフォームに関しては、組む込まれたプラグインと併せて本質的にＷｅｂブラウザ周りのカスタムアプリケーションが記述できる。このことから、モバイルデバイス１０への直接的なＬＡＮ接続を複数のＷｅｂ対応表示デバイスに対して行うことができる。
【００３９】
図３は本発明の一実施形態による、マルチプレイヤーゲームプラットフォームアーキテクチャの例示的実施形態を図示する。モバイルデバイス１０およびＷｅｂ表示デバイス２０は同一地域または異なる地域であり得る。ＷｅｂＳｏｃｋｅｔなどのロングポーリングを使用することにより、モバイルデバイス１０とＷｅｂ表示デバイス２０との間の通信を行う。示したように、２つの異なるロングポーリング接続１８０はモバイルデバイス１０とゲームサーバ１１０との間、および、ゲームサーバ１１０と表示デバイス２０との間で実施される。ゲームサーバ１１０は複数のポーリングポート１３０を用いて、複数のユーザおよび表示デバイスをサポートする。
【００４０】
本発明の次の記載において、本発明の様々な実施態様を実施する例示的方法を開示する。本明細書に開示された本発明の方法およびシステムはＣ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ−Ｃ、Ｖｉｓｕａｌ  Ｂａｓｉｃ、Ｊａｖａなどの様々な適切なプログラミング言語で記述されたコンピュータプログラムコードの実施で実現できることを理解すべきである。一部の実施形態では、アプリケーションロジックの大部分は、例えば、非同期Ｗｅｂアプリケーションを作るＡＪＡＸ（非同期  ＪａｖａＳｃｒｉｐｔ  と  ＸＭＬ）パラダイムを使用して表示デバイス上で実施できることを理解すべきである。さらに、一部の実施形態では、アプリケーションソフトウエアは複数の異なるサーバ（示さず）に分散できることを理解すべきである。
【００４１】
また、好ましくは、本発明のソフトウエアは最適なブラウザ（例えば、Ｓａｆａｒｉ、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、Ｍｏｚｉｌｌａ  Ｆｉｒｅｆｏｘ、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ、Ｏｐｅｒａ）を使用してクライアントによりアクセス可能であるＨＴＭＬ、ＰＨＰ、Ｊａｖａｓｃｒｉｐｔ、ＸＭＬ、ＡＪＡＸで記述された様々なＷｅｂベースのアプリケーションをさらに含むことを理解すべきである。
【００４２】
本発明の重要な側面は帯域幅利用率の最適化および遅延最小化への体系的なアプローチであり、そして、特別な表示デバイス２０のグラフィック解像度を最適化することである。特に、遅延は重大な関心事項であり、かつ、帯域幅利用率およびディスプレイのグラフィック解像度に関連している。ユーザ入力の身体動作とアウトプット表示デバイスにシミュレーションされた動作との間の時間の遅れは、スポーツゲームのリアル感を削いてしまう。さらには、次のシーンが出遅れることもユーザをイライラさせる。別の目標は、インプット動作に対してほぼ即時の表示アウトプットをすることで、優れたグラフィックコンテントのシーン切り替えが一秒未満になるようにユーザ経験を出来うる限り均一にすることである。
【００４３】
帯域幅利用率の影響を見る例として、１Ｍｂ／ｓ（Ｔ１）接続では５ＭＢ（メガバイト）ビデオまたは写真はダウンロードするのに４０秒かかる。米国で平均的家庭用ブロードバンド接続である５Ｍｂ／ｓ接続では同じビデオをダウンロードするのに８秒かかる。このことから、ゲームでのデータ密度（ビット数）が高いと、コンテントのダウンロードでユーザは潜在的に重大な遅延を経験することになる。
【００４４】
今後数年間に、先進国においては帯域幅利用率がおおよそ５０Ｍｂ／ｓに著しく増加することが考えられる。この理由としては４ＧおよびＬＴＥセルラーデータネットワークの発明があり、また、システムを向上させている固定電話ケーブルおよび通信会社が４Ｇでの競争力維持努力がある。５０Ｍｂ／ｓでは、５ＭＢファイルはダウンロードするのに僅か０．８秒しかかからない。しかしながら、同時に経時的には表示デバイスは大きくなり画素解像度も上がっている。例えば、２０１２年、米国の平均的ＬＣＤテレビ表示デバイスは１９２０ｘ１０８０画素解像度で３７インチの大きさであり、３００ドルから５００ドルの値段であったが、同じ解析度であれば、４６インチは約７００ドル、６０インチは２０００ドル未満の値段であった。これが２０１５年には６０インチＬＣＤは７００ドル近辺に下がり、解析度は２５６０ｘ１４４０に上がるであろう。このことから、帯域幅利用率とディスプレイの解像度は経時的に互いに競い合う状態である。
【００４５】
遅延の影響を見る例として、ユーザがモバイルデバイス１０をスイングして（モバイルデバイスおよび表示デバイスは異なるネットワークにあると仮定）、このデータが計算を行うゲームサーバ１１０へインターネット経由で送信され、次に、表示デバイス２０に送信されると時間の遅れを生じる。この時間の遅れは、デバイスの帯域幅利用率を超える大きな帯域幅ファイルが表示デバイスに同時に送信される時には悪化するが、これは、別のゲームデータと併せて動作データが列を作って待っている待ちに入り渋滞が起こるからである。本明細書に開示された方法はシステム性能を（１）帯域幅利用率、（２）全般的なシステム遅延、（３）表示デバイスの解析度の３つの側面で最適化する。
【００４６】
図２および３において、スポーツ動作検出およびアウトプット表示における全体のシステム遅延
0006313283.tif 000002
は以下のように表され、
0006313283.tif 000003
式中、
0006313283.tif 000004
は、モバイルデバイスでのスポーツ動作分析時間であり、
0006313283.tif 000005
は、モバイルデバイス１０からインターネット１５０経由でゲームサーバ１１０への送信時間であり、
0006313283.tif 000006
は、ゲームサーバ１１０での処理時間であり、
0006313283.tif 000007
は、ゲームサーバ１１０から表示デバイス２０への送信時間であり、
0006313283.tif 000008
は、表示デバイス２０上でのアニメーション、画像、または、別のデータの表示処理時間である。図３の実施形態では、ＷｅｂＳｏｃｋｅｔなどのロングポーリングの利点はモバイルデバイス１０からの動作データがイベントとしてゲームエンジン１１０にブロードキャストされると、ここから表示デバイス２０にブロードキャストされることである。米国本土ではＷｅｂＳｏｃｋｅｔ接続の間の遅延は約５０ミリ秒（ｍｓ）である。動作データおよびユーザインタフェースの更新などのデータの小さなパケットについて図３に図示したアーキテクチャを使用した場合では、全体のシステム遅延はモバイルデバイス１０、ゲームエンジン処理、グラフィックエンジン表示での動作分析処理制約を主として受けるのであり、
0006313283.tif 000009
＝１００ミリ秒であるインターネット経由のデータ通信時間にあるのではない。
【００４７】
実際、図３のアーキテクチャは複数の同時ユーザ向けにモバイルデバイス１０、ゲームサーバ１１０、Ｗｅｂディスプレイ２０の間での実時間に近い同期を提供する。このアーキテクチャにより、スイング動作データをＷｅｂディスプレイ２０と送受信しながら、モバイルデバイス１０およびＷｅｂディスプレイ２０に関してユーザ行動の実時間に近い同期が可能になる。加えて、図３のアーキテクチャは高拡張性であり、かつ、本質的なデザインから逸脱することなく数千のプレイヤーに対応するように提供する。そのような場合には、何千もの異なったゲームが任意の時点であり、完了の様々なステージであり、また、アーキテクチャは任意の時点においてゲームサーバ１１０で管理されているゴルフ、野球、ボウリングなどの種々の異なったスポーツ動作をも支持することが出来る。
【００４８】
本発明の新規要素は仮想の多人数参加型ゴルフゲーム、二人および四人プレイヤーによるテニスゲーム、多人数参加型野球ゲームの発明に関する以下の詳細な説明で明らかになるであろう。しかしながら、以下の実施例は限定するものではないことを理解すべきである。
【００４９】
ゴルフの実施例
図４ないし１０を参照することで、本発明は、ここに記載された技術を使用して実装されたゴルフゲームの例により一層明確化する。図４（ａ）ないし４（ｅ）はユーザ経験を示し、かつ、図５は対応する分散型ゴルフアーキテクチャである。
【００５０】
一実施形態では、分散型ゲームプラットフォーム１００にアクセスするために、ユーザはまず初めにアプリケーション（「ａｐｐ」）を自身のモバイルデバイス１０にダウンロードする。アップルｉＰｈｏｎｅ  ４／４ｓについての一実施形態では、このａｐｐはＯｂｊｅｃｔｉｖｅ  Ｃでプログラミングされ、かつ、毎秒あたり１００個サンプルのスピードで加速度計、ジャイロスコープ、磁力計などの内蔵ハードウエアベースセンサーにアクセスするために、Ｃｏｃｏａ  Ｔｏｕｃｈ  ＳＤＫ（ソフトウエア開発キット）に含まるＣｏｒｅＭｏｔｉｏｎフレームワークを利用している。「信号処理パイプライン」と呼ばれるこの上にある層は、実時間スイング分析計算を提供するプラットフォーム独立型クラスのプログラムを含む。信号処理パイプラインの上には、信号処理エンジンにより計算されたデータを処理するグラフィックベースのゲームプレゼンテーション層があり、これらのデータをサーバベースのゲームルールエンジンに送信し、かつ、ゲーム経験を捕捉するデバイス固有のコンテントが付いた画面をユーザに表示する。
【００５１】
別の実施形態において、モバイルウエブサイトにより、モバイルブラウザーに簡単なＪａｖａＳｃｒｉｐｔイベントハンドラを使用して同一ハードウエアベースのセンサにアクセスが可能である。一般的に、ブラウザ経由のセンサへのアクセスはＣｏｒｅＭｏｔｉｏｎフレームワークと比較してはるかに遅いが、しかし、現在の技術では毎秒あたり１０個のサンプルのスピードである。本明細書において、同一の信号処理パイプラインをスイング情報分析に使用し、かつ、インタラクティブＪａｖａＳｃｒｉｐｔウエブサイトがモバイルデバイスのスクリーン上にグラフィカルなインターアクションを構成する。
【００５２】
図４（ａ）では、ユーザが自身のモバイルデバイス１０を使用して指定されたウエブサイトにログインすると標準ブラウザを開き、かつ、そこへナビゲートすることでユーザのＷｅｂ対応ディスプレイ２０が同一ウエブサイトに接続する。ユーザが接続を行うと、その都度、ユーザ情報を質問するログインページが表示される。ログインするとゲームサーバ１１０によりゲームリソースデータベース１１７からダウンロードされて、ｗｅｂ対応表示デバイス２０に仮想のゴルフ練習場またはゴルフコースが表示される。しかしながら、表示デバイス１０へＷｅｂページを最初にダウンロードしている間には、軽量のゲームロジックエンジン１２０もバックグランドにダウンロードできる。非Ｗｅｂベースのゲームエンジンは、例えば、ＡＪＡＸを使用して同期アプリケーションとしてプログラムできる。
【００５３】
図４（ｂ）では、デバイス１０および２０にログインした後にはユーザは打ちっぱなし練習場に入るか、または、ゲームを開始できるが、いずれの場合においても友達３０をプレイに招待できる。自身のデバイスにログインした後に招待された友達は招待を受諾してホストのゲームに参加できる。プレイするゲーム毎に一時的テーブル作成のために、プレイヤーのデータベースにある各ユーザの記録を連結し、クラウドベースのゲームルールエンジン１１５は複数プレイヤーを管理する。アカウントを所有しているユーザはユーザデータベース１１６内にユーザ自身のデータベース記録を所有する。
【００５４】
図４（ｃ）では、ゲームを開始した後は各プレイヤー自身が特定する仮想ゴルフバッグからゴルフクラブを選択し、自身のモバイルデバイス１０をスイングすると、「打撃」により各デバイスが該スイングを分析してスイングデータの小さなパケットをデータがユーザデータベース１１６で更新されるゲームサーバ１１０に送信する。ゴルフスイング動作分析については以下のサブセクションで詳しく記載した。プレイヤーとゲームルールエンジン１１５とのインターアクションはキー入力、タッチスクリーンのタッチ、さらに、利用可能な場合は音声認識などのモバイルデバイス１０の様々な入力デバイスを使用して実施される。
【００５５】
次に、このスイング情報は以下のサブセクション（２）に記載の３つの方法の１つを使用して表示デバイス２０に送信される。図４（ｄ）では、（飛球を計算して予測するアルゴリズムを使用して）ダウンロードされた表示デバイスグラフィックエンジン１２５はディスプレイ２０上に飛球２５を表現する。同様に、友達が仮想ボールを打撃したデータが友達のモバイルデバイス１０からゲームサーバ１１０へ送信されるが、このデータはユーザデータベース１１６に送信され更新される。図４（ｅ）では、データは特定ユーザに送られ、かつ、飛球は特定の環境に合わせて表現され、そして、各プレイヤーはゲーム環境での自身の特定位置から各友達からの複数のゴルフスイングゲーム動作を観る。
【００５６】
ユーザはクリックまたはタッチしてユーザそれぞれの飛球位置に進む。ダウンロードされた軽量のＷｅｂベースのゲームエンジン１２０には、ゴルフスイング後の仮想ゴルフコース上のユーザの場所を判断し、かつ、ゲームルールエンジン１１５によりゲームリソースデータベース１１７から適切なグラフィック表示コンテンツを要求する表示デバイス用のロジックが含まれている。そして、プレイヤーがゴルフホール上の異なる位置にいる場合以外、このプロセスは繰り返す。プレイヤーの位置はユーザデータベース１１６に送信され更新され、かつ、ゲームエンジン１２０は仮想ゴルフコース上の各プレイヤーの飛球を表現する。加えて、一実施形態では、プレイヤーは相互に通信することができるのでゲームプレイヤー間のソシアルネットワークが構築される。かかる通信は例えば、適切なＩＰボイスオーバ、テキストチャット、テキストメッセージボードアプリケーションなどを有するゲームルールエンジン１１５により達成可能である。
【００５７】
ゲームをすることに加えて、ユーザは複数の仮想の商品およびサービスを購入できる。これらにはゴルフレッスン、最新のゴルフクラブ、カスタムバッグ、ゴルフクラブカバー、友達のショットを混乱させるマジックボール、トーナメント優勝の仮想賞品などを含むが、これらに限定さえるものではない。Ｊｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９、７７４号に詳細に説明されているように、仮想の商品にはユーザ定義のゴルフスイング分析を基にしたカスタマイズされたスポーツ指導が含まれる。
【００５８】
本発明の関連する新規性は予測分析により可能になる「仮想キャディー」である。当該システム内でユーザが行った全てのスイングは、動作アーカイブデータベース１１８で捉えられる。ユーザが打ったショットのデータは分析ソフトウエアを使用して取り出す。例えば、あるホールのティーグラウンドでドライバーを１００回スイングした結果、平均飛距離が２４９ヤードで３０ヤード右側にスライスするようであれば、２３５ヤード前方で２５ヤード右側のウオターハザードを避けるために「仮想キャディー」は３番ウッドを推奨するであろう。
【００５９】
また、ユーザがショット後にスクリーンをタッチしてモバイルアプリケーションに手操作入力または音声入力する方法で、または、モバイルデバイスにブルートゥースにより連結されているゴルフクラブに物理的に結合したジャイロスコープおよび加速度計による方法で動作アーカイブデータベース１１８を現実のゴルフコースで得られたデータで増強しても良い。仮想キャディーは現実および仮想ゴルフに拡大することも可能であるので、現実のゴルフコース上において、仮想コースでプレイにした類似のアドバイスをする。
【００６０】
開示されたゴルフゲームのさらなる技術的態様は、以下のセクションに記載される：（１）分散型ゲームエンジン、（２）モバイルデバイススイング分析、（３）表示デバイス最適化。
【００６１】
（１）分散型ゲームエンジン
図５はゴルフゲームにおけるゲームプラットフォーム１００の実施形態を図示する。上述のようにゲーム分析は３つの主要な部品、つまり、モバイルデバイス１０、ゲームサーバ１１０、表示デバイス２０に分散している。図５は４人の異なるプレイヤー３０、つまり、Ａ、Ｂ、Ｃ、Ｄの異なるモードの実施例を提供する。この実施例は例示的であり、４人のプレイヤーに限定するものではない。ここに示すように、プレイヤーＡはモバイルデバイス１０を所有しているが、表示デバイス２０を所有していない。このモードでは、ゲームグラフィックスがプレイヤーＡのモバイルデバイス１０に単独で表示されている。プレイヤーＢはプレイヤーＡとは異なる地域にいるが表示デバイス２０にアクセスする。ゲームインターアクションおよび表示デバイス２０上のグラフィカル表示は以下で記載する。例証的に、プレイヤーＣおよびＤはプレイヤーＡおよびＢとは違う同一の地域にいて、表示デバイス２０を所有している。同一地域にいるプレイヤーたちは、デバイスを使用してそれぞれのプレイヤーを知るように構成され、単独のモバイルデバイスを使用するか、または、プレイヤー自身のモバイルデバイスを所有している。図５に示した実施例は特定のハードウエア製品に限定されるものではないことを理解すべきである。
【００６２】
ゴルフスイング分析は以下のセクションに記載する方法によるモバイルデバイス１０で分析を行うこの分析からのアウトプットはモバイルフォーンのスイング速度、インパクトでのフォーンの角度（フックまたはスライス）、前腕の回転率、手首の曲げ率、スイング軌道（インサイド・アウトサイドまたはアウトサイド・イン）を含むが、これらに限定さえるものではない。これらのデータはユーザデータベース１１６を更新し、異なるユーザインターアクションを管理し、ゲームコンテンツを供給するゲームサーバ１１０へ送信される。ユーザがログインした時に比較的軽量のＪａｖａｓｃｒｉｐｔ／ＡＪＡＸゲームエンジン１２０は、ＨＴＭＬ５対応表示デバイスＷｅｂブラウザにダウンロードすることができる。個々のユーザのスイングデータがゴルフゲームサーバ１１０から渡されたら、このゲームエンジン１２０は特定のユーザディスプレイ環境を制御する。ゲームエンジン１２０はゴルフゲームのゲームロジック、および、飛球シミュレーションならびに別のレンダリング用のグラフィックエンジン１２５を有する。以下のセクションで詳しく記載するように、各ゴルフホールは二次元写真またはビデオに対応するセグメントに分けられている各ホールの写真の数は、以下のセクションで記載するようにユーザ経験とシステムの帯域幅および遅延との両方を最適化するように選択される。各ホールのグリッド位置はホールごとに前もって定義し、かつ、ＷｅｂブラウザゲームエンジンのＪａｖａコードでプログラムする。各ホールでのグリッド位置に対応するグラフィカルコンテンツはゲームリソースデータベース１１７に保存する。
【００６３】
ボールの飛球距離および方向は主としてクラブのヘッド速度、クラブのロフト、打撃角度で決まる。ゴルフクラブが異なればロフトも異なる。しかしながら、クラブの速度はインパクトでのユーザが手で持っているフォーンの速度に正比例する。以下のセクションに記載するように、フォーンの速度の正確性およびゴルフドライバーのクラブヘッド速度を検証するために毎秒１，０００フレームの高速ビデオカメラを用いて詳細な実験を実施した。このデータを、様々なクラブおよびクラブヘッド速度に関する飛球距離のベンダー表との比較をした。ボールがスライスまたはフェードすると飛距離が小さくなるが、ドローの程度が小さい限りフックまたはドローしたボールは飛距離が大きくなるが、ただし、数度を超えたフックボールでは距離がでない。
【００６４】
ユーザが手で持っているフォーン速度、ユーザ身長、クラブ長さからクラブヘッドの速度を計算できる。さらに具体的には、様々なゴルフクラブの表索引を使用すれば特定のゴルフクラブのクラブヘッド速度を計算できるので、表索引を使用して計算した速度におけるクラブの様々なロフト角度での飛球をマッピングする。続けて、モバイルフォーンセンサーのスイングデータからショットによる距離および方向を正確に計算するために、スイング軌道およびフックまたはスライスの情報はフラクショナルな乗数／除算として使用する。
【００６５】
図６（ａ）および（ｂ）はホールを仮想グリッドに分ける方法を図示する。ショットの距離および方向はショットの終点になる（Ｘ、Ｙ）座標を定義している。この（Ｘ、Ｙ）ショット終点は特定のグリッド位置に対応する。図６（ａ）参照。各グリッド位置について、（画像、スプライト、および／またはビデオなどの）媒体１１９はゲームリソースデータベース１１７に保存される。ショットの終点（Ｘ、Ｙ）座標が決まれば、Ｗｅｂページグラフィックエンジンが表索引によりリソースデータベース１１７に問い合わせして（Ｘ、Ｙ）座標位置に対応する媒体１１９を表示する。次には、ユーザ経験（Ｘ、Ｙ）としては座標位置での立体的な視点からフラグのＷｅｂページ上の媒体を観ることである。ユーザが再度スイングするとスイング速度、選択されたクラブ、クラブヘッドの打撃角度から次の（Ｘ、Ｙ）座標位置が計算される。さらには、グラフィックエンジンが新しい位置に関してデータベースから正しい画像を表示する。
【００６６】
ユーザ毎にスイング履歴は動作アーカイブデータベース１１８に送信され更新される。前記したように、このデータは経過的なユーザパフォーマンス分析に使用する。ゲーム中の複数プレイヤーについて進捗状況を追跡しながらユーザデータベース１１６も更新される。このデータはゲームエンジン１２０を更新するマスタデータとして使用することができ、かつ、特定のユーザの表示スクリーン上に別のユーザの分身（アバター）および飛球シミュレーションを描くことが出来るようにする。
【００６７】
３Ｄのグラフィックエンジンモジュール１２５を使用して、シミュレーションされた飛球が２Ｄに現れる。１６００ｘ９００画素表示解像度でスイングした後のゴルフボールの飛行は、個別対象物としてボールの動画化で達成される。ボールが下部近くに位置するページの中心で、縦横それぞれの３５画素で飛行する。スイングが検知されると、その距離および方向は飛球の正確な軌道測定用に使用するゲームエンジンに送信される。飛球は開始位置から始まり使用されるクラブにより決定される高さの位置まで通る指数曲線である。
＋０  パターは０画素（これにより、ボールの転がりに似た直線を作成される）
＋２００ドライバーは２００画素
＋２２５から＋３２５  アイアンは２２５画素から３２５画素
＋３５０  ウエッジは３５０画素。
【００６８】
画像視野の高さ＋（フラグからの現在距離−打球前進距離）／２に等しい画素でのＹ位置、および、画像の画素の中心＋打球の横方向距離＊  ４に等しいＸ位置でボールは止まる。
【００６９】
ボールは３画素＋１７０／現在のスイングのヤード数で逆幾何級数的に「小さくなる」ように表示される。上記の画素数は例示的であり限定するものではない。
【００７０】
本発明の特に重要な特徴は最小化した遅延で、モバイルデバイスでゴルフスイングすると飛球が実時間に近い表示が実施されることである。ゲーム中は、ウエブサイトはユーザディスプレイ１１６を繰り返しポーリングして更新する。更新が検出されると、スイングデータを取り入れてゲームエンジン１２０へ送信して、スイングデータにより駆動された飛球シミュレーションを起動する。スクリーン上のボールの高さ、落下点までの距離、左右にバールがずれる距離、小さくなるボールのサイズ、動画化にかかる時間はスイングデータにより変わる。ゲーム参加者の飛球は各プレイヤーのスクリーン上に表示される。例えば、仮想ゴルフ練習場で複数プレイヤーが練習する場合、最大のヤード数が表示される。プレイヤーがゴルフゲーム中である場合、前に行われたスイングにより決定されたホールでの新しい位置に各プレイヤーが移動する。パッティンググリーンの位置に殆ど来るまでゲーム中のプレイヤーは進み、パッティングをシミュレーションした後にホールにボールが入ったら次のホールに移動する。
【００７１】
発明者らはモバイルデバイスをスイングした後の実時間グラフィカル表示に関して複数の方法を実施した。現在のＡＪＡＸソリューションである「ショートポーリング」は高拡張性であり、数多くのユーザに対して実時間でコンテンツ更新に使用できる。
【００７２】
使用するディフォルトポーリングが１秒当たり１回であるが、より多くのポーリング、例えば、１秒当たり５回または６回のポーリングも可能である。ＡＪＡＸポーリングまたは「ショートポーリング」では、このことは利用可能帯域幅の１つである。データが送信されていなくても、ただ単なるイベントチェックでもいくつかの帯域幅を使う。従って、もしユーザの数が多い場合、例えば、２００、０００の場合、１秒当たり５回でのポーリングはかなりの帯域幅を必要とする。しかしながら、一般的に帯域幅は処理能力および記憶領域よりも良くスケールする。また、加えて、帯域幅利用を管理するようにポーリングレートをダイナミックに調節できる。
【００７３】
図３を再度参照して、「ロングポーリング」を取り入れたアーキテクチャを図示した。アーキテクチャはＷｅｂＳｏｃｋｅｔのＷｅｂ技術を使用している。発明者らは、サーバがウエブサイトに新しいデータを「押し入れる」のでラグが無くなる拡張性ロングポーリングアーキテクチャを作成した。ＡＪＡＸポーリングでは、ウエブサイトが１秒当たり１回データベースをチェックするのを待つが、認識可能なラグがある可能性もある。
【００７４】
ロングポーリングによりデータの双方向伝送が可能になり、かつ、妥当な一つの技術としては、単独のＴＣＰ接続に全二重通信チャンネルを供給するウエブプロトコールであるＷｅｂＳｔｏｃｋｔがある。ＷｅｂＳｔｏｃｋｔ  ＡＰＩはＷ３Ｃにより標準化されており、かつ、ＷｅｂＳｔｏｃｋｔプロトコールはＲＦＣ６４５５としてＩＥＴＦにより標準化されている。また、これは参照によりその全体が本明細書中に組み入れられる。
【００７５】
図３はコントローラとしてモバイルデバイスを使用してＷｅｂディスプレイを制御およびナビゲートし、かつ、ネットワークに亘ってモバイルデバイスが捉えたスポーツ動作データを送信するロングポーリングアーキテクチャによる方法を図示する。フォーンおよびＷｅｂディスプレイデバイスは同一または異なった地域でもあり得る。モバイルデバイスとＷｅｂディスプレイとの間の通信はＷｅｂＳｔｏｃｋｔ技術を使用して行われる。図５は具体的なゴルフの場合の図２のアーキテクチャの実施形態であり、かつ、図３のショートポーリングまたはロングポーリング法を使用して実施できる。
【００７６】
（２）モバイルデバイスのゴルフスイング分析
本発明の重要な側面は、Ｊｅｆｆｅｒｙらの２０１２年１０月１８日提出「モバイルデバイスの動的センサを使用してスポーツ動作を分析する方法およびシステム」と題する米国特許出願第１３／６５５、３６６号を受けて、モバイルデバイス１０内に組込まれた加速度計およびジャイロスコープを使う動作アナライザー１３０である。本発明が克服しようとした特別の課題は実際にボールを打たずに、または、クラブやラケットを握らずに、ゴルフスイング分析をいかに正確に実施できるかということである。ここではゴルフについてスイング分析を記載するが、ここに記載された方法は、これらに限定されるわけではないが、例えばボールの打撃または投球、銃の照準合わせまたは射撃、釣竿での放出などの別の動作に応用可能であることを理解すべきである。最終のセクションはボウリング、テニス、野球などの別のスポーツに適用する動作分析法の一般化方法に関する。
【００７７】
図７はゴルフスイングをしている時のモバイルデバイス１０のピッチ（ａ）およびロール（ｂ）を図示する。本発明の重要な要素はアドレスの位置（ポジション１）でモバイルデバイス１０を静かに持つことによる、モバイルデバイス１０の校正である。次に、ピッチのモーションシグネチャはバックスイング（ポジション２）で増加し、ゴルフバックスイングのトップ（ポジション３）で局所最小値を示す。しかしながら、最小値（ポジション３）は、１８０度以上回転するピッチ動作センサのアーティファクトである。現実に、ピッチはバックスイングのトップの位置で１８０度を超える最大値まで増加し続ける。しかしながら、センサの限定により、モーションシグネチャを０から１８０度に制限する。ピッチデータは図示したように、打点（ポジション５）までのダウンスイング（ポジション４）中は低下し続ける。
【００７８】
精度分析
打点（ポジション５）でモバイルデバイス１６は、ほぼ初期の校正点（ポジション１）に戻り、ゴルフでのこのポイントは仮想ゴルフボールを用いたインパクトでの手の位置で、かつ、局所最小値あることに留意する。ゴルフスイングが高速の場合では、打点での最小値はジャイロスコープの分解能限界により校正ゼロに正確に戻らない。打点の測定が極めて重要であるのは、このポイントでのモバイルデバイス１０のロールが、クラブのフックまたはスライスを決定するからである。別のスポーツでは、打点はバットまたはラケットのフックおよびスライス、および／または、投擲あるいは投げるスポーツでの放出点測定に不可欠である。打点から開始し、ゴルフスイングはポジション（６）および（７）の位置をフォロースルーする。
【００７９】
要約すると、ピッチデータ、または、スクリーン（Ｘ軸）（図１参照）に見るモバイルデバイス１０を上部半分と下部半分に分ける軸の周りの回転は、ゴルファーがスイングをする際に最も明らかになるデータストリームである。インパクトは、開始校正点（ゴルファーが構えのポジションにある時のスイング前に取った、例えば、１秒間で全てのフォーンの位置／方向データを平均値で「ゼロ」と定義する）に近づく主要な最小値で見られる。具体的に見ると、ゴルファーのスイングでゴルファーがバックスイングに入るとピッチデータが取れて、インパクトの際に校正に戻るが、フォロースルーに入ると再度、上昇する。インパクトは構えの位置、または、校正点に最も近いピッチポジションである。
【００８０】
一実施形態では、ゴルフスイングでの打撃点はクローラアルゴリズムを使用してピッチの第２の最小値になるように選択する。別の実施形態では、最小値はこれとＺ加速度でのスパイクとを一致させるとこで確認できる。ピッチに１つ以上の主要な最小値が認められる場合は、インパクトであるとして選択された最小値はＺ加速度の最大値を有するポイントにより決定される。この確認は、ゴルファーのバックスイングまたはフォロースルーにおける回転が非常に大きくてジャイロスコープが完全に機能せず、かつ、校正点近くで余分な最小値が出来てしまうケースで役立つ。
【００８１】
一度、インパクトが見られると、スイングの正確性は校正でのロールデータからインパクトでのロールデータを差し引いて測定される。ロールデータ、または、スクリーン（Ｙ軸）を見る時のフォーンを左側半分と右側半分に分ける軸の周りの回転は、クラブフェイス上の「オープンおよびクローズ」フェイスポジションを示す。図７（ｂ）はロールデータの拡大図を示す。負の差異を応答するスイングはユーザが回転過多であることを意味し、これは、インパクトでクローズフェイスを示し、その量により、ドローまたはフックになる。正の差異を応答するスイングはユーザが回転過少であることを意味し、これは、インパクトでオープンフェイスを示し、その量によりフェードまたはスライスになる。ほぼゼロを応答するスイングはクラブフェイスがインパクトで極めて近く校正方向に合っていることを意味し、ストレートな球飛を示す。
【００８２】
速度分析
クラブヘッドの速度は球飛距離測定にはゴルフでは重要なパラメータである。ゴルフクラブの製造者は、特定のスイングスピードとクラブヘッドでゴルフボールを打球した際の球飛距離を詳述した実験的な表を持っている。また、そのような表はクラブタイプ（具体的には、ドライバー、５番アイアン、パター）、クラブヘッドのロフト、シャフトの硬さ、および球飛にインパクトを与えるその他の変数を考慮に入れている。
【００８３】
スイングスピードはスポーツ動作のメカニズムのため複雑な計算である。ゴルフクラブヘッドなどの仮想のスポーツ器具の速度計算は関心事であるが、センサで手の動作を測定することは挑戦的なことである。プロの運動選手が使う幅広い器具に対して、手および腕の動作がどの様に動作センサ・データ・アウトプットに翻訳されるかを理解するために、広範な実験を適切にフィットしたスポーツ器具を使って実施した。ゴルフ分析を図示したが本方法は野球、テニス、ボウリング、バスケットボール、アメリカンフットボール、卓球を含めるが、これに限定されないその他のスポーツ動作に一般化可能であることを理解すべきである。また、これらの実施例は限定を意味するものではないと理解される。
【００８４】
図８（ｂ）はゴルフスイングのスイング動作要素を図示する。もしも、クラブが腕に沿って正確にスイングされるとモバイルデバイス速度Ｖは以下の関係式でクラブヘッド速度（Ｖクラブヘッド）に関係する：
Ｖクラブヘッド  ＝  Ｖ  ｘ（腕の長さ  ＋  クラブの長さ）／腕の長さ（２）
【００８５】
しかしながら、エキスパートのゴルフプレイヤーは手首を曲げ、かつ、前腕を回転してボールに伝わるクラブヘッドの速度を増加させる。これらの手首の曲げ、および、回転はインパクトでのクラブヘッドの速度を飛躍的に増加させるので、式（２）は多くのゴルファーのゴルフスイングスピードについて巨視的な過小評価の値といえる。しかしながら、パッティングは手首の曲げが無いのでパッティングには有効である。
【００８６】
図８（ａ）は、具体的に、ゴルフスイングにつてモバイルデバイス１０の速度を計算する方法を図示している。例示のフルゴルフスイングの場合のモバイルデバイス１０のピッチに関するモーションシグネチャをグラフにした。スイングに関して標識したピッチデータでのポイント（４）、ポイント（５）、ポイント（６）に対応するスポーツ動作を下記に示した。初めに、スイングの局所最小値（ポイント５）でのピッチの最小値として定義するピッチデータでの打点を見出す。次に、６０度の角度でピッチデータの前後を調べる。これらのデータポイントは正しい手首の曲げであると仮定すれば、スイング（４）および（６）のポジションと一致する。一般的に、２つのポジションの間の通過には１０分の１秒で、プレイヤーの腕の長さを考えると、１２０度のアーク長で割りインパクトでのモバイルデバイス１０の速度を得ることができるが、ここで、アークの半径は経過時間による腕の長さと等しいとする。このことからモバイルデバイス１０の速度（手の速度）を得る。類似の方法をチッピングに使用できるが、しかし、短いスイング長のため５５度以下の短くなったアーク長で行う。
【００８７】
高速ビデオクロッキングを用いて、ドライバー・クラブヘッド・スピードは手の速度の２．４倍程度に遅く（ユーザが緩まない腕、前腕、手首でクラブをスイングした場合）なり、または、手の速度の６倍程度に速く（世界レベルのプロのゴルファーの場合）なることが確認されている。これら２つのマルチプライヤの違いは、インパクトで９０度のアーク長で腕を動かすのに要する時間では、ゴルファーがより大きなアーク長（１８０度に近いこともある）でクラブヘッドを動かすことを可能にする前腕の回転および手首の曲げの組み合わせから生まれる。発明者らが選択したマルチプライヤは手首の曲げおよび前腕の回転それぞれについて、Ｚ軸およびＹ軸（ヨーおよびロール）上のインパクトからジャイロスコープの加速度により直接的に駆動される。
【００８８】
アイフォン４および４Ｓに関する詳細な実験からジャイロスコープは特に正確であることが分かっており、ロールデータは約１／２度以内ではフックまたはスライスを予測するのに非常に好適である。しかしながら、アイフォン４からの加速度計データは「雑音のある」状態であり、さらには、特に、ゴルフスイング全体からみて正確ではないが、しかし、インパクトで前腕の回転率を測定するには良好に働く。この理由により、スイングを部分に分けて、インパクトのモバイルデバイスの平均速度Ｖを計算する：
0006313283.tif 000010
式中、Ｄ２−Ｄ１は図８のポイント（４）と（６）との間の距離であり；かつ、ｔ２−ｔ１は距離Ｄ２−Ｄ１に要する時間である。打点での瞬間速度に極めて近い近似を可能にするので、より短い距離が好適である。しかしながら、このジャイロスコープの０．０１秒分解能は１２０度のアークを必要とする。将来、ジャイロスコープのサンプリング分解能が向上すれば３０度以下のアークが好ましい。
【００８９】
式（３）はモバイルデバイスの実際の瞬間速度の近似であり、かつ、上記の手首の曲げまたは前腕の回転を含んでいないので、ゴルフクラブヘッド速度の一次近似である。高速ビデオカメラに関する詳細な実験から、各種のスイングタイプについて＋／−１０％範囲のクラブヘッド速度を計算することにより、これらの変数のマルチプライヤを見出すことができる。クラブヘッド速度から理想的な状況で球飛距離を予測できる。
【００９０】
本発明者は加速度計からのデータ品質アウトプットが将来的には、飛躍的にアイフォンまたはアンドロイドベースのフォーンのバージョンを向上させると考える。一実施態様では、インパクトでのモバイルデバイス１０（十分に正確な加速度計を有する）の速度は、バックスイングのトップ
0006313283.tif 000011
からモバイルデバイスのゼロ
0006313283.tif 000012
までの加速度（ａｘ，ａｙ，ａｚ）を積分することにより計算する。
0006313283.tif 000013
インパクトでの全モバイルデバイス速度は次のようになり：
0006313283.tif 000014
式中、
0006313283.tif 000015
は、ピッチデータから測定したバックスイングのトップでの最小値
0006313283.tif 000016
とインパクトでのスイングの最下点でのゼロ
0006313283.tif 000017
との間の時間である。積分は４次Ｒｕｎｇｅ−Ｋｕｔｔａアルゴリズムを使用してソフトウエアで計算する。例として、Ｗｉｌｌｉａｍ  Ｈ．  Ｐｒｅｓｓ  ｅｔ  ａｌ、Ｎｕｍｅｒｉｃａｌ  Ｒｅｃｉｐｅｓ  ３ｒｄ  Ｅｄｉｔｉｏｎ：  Ｔｈｅ  Ａｒｔ  ｏｆ  Ｓｃｉｅｎｔｉｆｉｃ  Ｃｏｍｐｕｔｉｎｇ、２００７を参照のこと。
【００９１】
速度成分ベクトル（５）では内部加速度計は雑音のあるアウトプットなので、加速度計の現在のバージョンを用いて正確に計算するのは困難であり、このことから、現在は平均法の方程式（３）を使用する。スイング動作データはユーザに提示され、かつ、スイング一貫性向上の縦断的比較のために、アプリにローカルで、および、ユーザのアカウントにあるサーバで格納される。
【００９２】
また、ユーザはフォーンを自身のゴルフクラブにクレードルで装着し、距離および正確性について実際の練習スイングと計算されたスイングを比較できる。フォーンをクラブに装着した時に同様の分析を使用するが、しかし、フォーンはゴルフクラブと比べて軽量なのでユーザの手は自然と動きが速いことが主な理由で、フォーンと比べてユーザのゴルフクラブのスイングが遅くなり、マルチプライヤは違うものになる。
【００９３】
スイング分析の更なる実施例として、ゴルフクラブのフルスイングではなくパッティングを考察する。ＰＩＮＧ、Ｉｎｃ．は以前からパッティング用のアイフォンアプリを製作している。しかしながら、この会社の先行技術発明は３つの重大な限界がある：この方法では（１）パターにアタッチメントを必要とし、（２）物理的なボールとのインパクトを必要とし、（３）（約２０フィート以上の）ロングパットでは正確でない。
【００９４】
本明細書に記載された方法は、これらのいかなる制限もない。上記に記載されたフルスイングと同様に、ユーザはパターのようにモバイルデバイス１０を手に持ち、そして、静止１秒後に振動する：これでフォーンは準備完了となる。次に、ユーザは想像の（仮想の）ボールをパッティングする。フルスイングと比較してフォーンからのピッチデータは、インパクトで最小値となる相対的に滑らかな正弦波関数である。パターのストロークは式３から計算した平均速度を用いてゴルフのフルスイングと同様に分析するが、式中、Ｄ１およびＤ２はボールとのインパクトした際のプールバックおよびストロークそれぞれの最大距離である。パターストロークの利点は関数が滑らかで、速度がゴルフのフルスイングと比較して相対的に遅いことである。このことから、式（４）および（５）はインパクトでの瞬間速度を計算するのにも使用し得る；パターの長さに関して、ボールとのインパクト時のパターヘッド速度のスケールマルチプライヤを用いて、式（４）の積分および式（３）の平均速度の両方を使用する。式（２）を参照。長いパターの場合の加速度法は、ますます精度が落ちていくが、平均速度法は経験的測定から得られたマルチプライヤを用いて、より良い結果を提供する。
【００９５】
パターヘッドのスピードからボールが転がる距離は、理想状態を仮定して計算できる。しかしながら、最も重要なことは物理的なボールを打つことをしないでインパクトでのフォーンのロール角の差の定量化（フルスイングの場合のフックおよびスライスと同様）が可能であることである。また、パットでの減速、または、左プルあるいは右プッシュ（これら最後の２つのエラーは加速度の第２積分およびロールデータから識別される）などのエラーについてジャイロスコープ加速度データの分析が可能である。さらに、スイング動作正確性データはユーザに提示され、かつ、パッティング一貫性向上の縦断的比較のためにアプリにローカルで、および、使用者のアカウントにあるサーバに格納される。
【００９６】
分散型ゲームプラットフォームに関連して、パッティングについての本発明の方法はゴルフゲームの先行技術の主要な欠陥を克服するが、仮想ゴルフゲームでのパッティングは信頼性がないことで有名である。ＰＧＳツアーでプレイしているエキスパートゴルファーでもゴルフコンピュータゲームでは一貫してパッティングを連続で３回または４回はすることが知られている。以前に述べたように、モバイルデバイスジャイロスコープを使用する本発明の方法は、例えば、ＮｉｎｔｅｎｄｏＷｉｉコントローラと比較してはるかに正確であるので、仮想ゴルフゲームでプロフェッショナルなゴルフパッティングを再現できる。
【００９７】
マルチセンサインパクト検知
モバイルデバイス１０の単一タイプの回転データ（ピッチ）を使用する仮想物体との「打点」を検出する技術は上記に記載した。スポーツ動作シグネチャ（時間の関数としてのピッチデータ）は、スポーツ動作のタイプに特異な（例えば、ゴルフのフルスイング）特徴を分析した。スポーツ動作シグネチャのアプリオリ構造は、仮想打点の時間および空間の位置を分離するのに必要であった。別の実施態様では、発明概念を拡張して多くの異なるスポーツ動作シグネチャ、および、幅の広い動作について打点の検出ができるようにする。
【００９８】
図８（ａ）および（ｂ）は、ゴルフスイングをしている時のモバイルデバイス１０のピッチおよびヨーの変化を図示する。この場合、使用されたモバイルデバイスはアップルアイフォーン４Ｇｓである。前述のとおり、モバイルデバイス１０の校正はアドレスの位置（ポジション１）でモバイルデバイス１０を静かに持つことで達成される。次に、ピッチの動作シグネチャはバックスイング（ポジション２）で増加し、ゴルフバックスイングのトップ（ポジション３）で局所最小値を示す。しかしながら、最小値（ポジション３）は１８０度以上回転するピッチ動作センサのアーティファクトである。先に述べた様に、現実に、ピッチはバックスイングのトップの位置で１８０度を超える最大値まで増加し続ける。しかしながら、センサの限定は動作シグネチャを０から１８０度に制限する。図示したように、ピッチデータは打点（ポジション５）までダウンスイング（ポジション４）中は低下し続ける。
【００９９】
高速カメラを用いた詳細な実験から、モバイルデバイスは初期のアドレス位置（ポジション１）近くに戻り、仮想打点（ポジション５）はピッチの局所最小値であることを見出した。打点（ポジション５）から、ゴルフスイングはフォロースルーして行く（ポジション６およびポジション７）。
【０１００】
打点の測定が極めて重要であるのは、このポイントでのフォーンのロールがクラブのフックまたはスライス、バットまたはラケット、および／または、投擲あるいは投げるスポーツでの放出点を定義するからである。以前、発明者らは第２の最小値のピッチ動作シグネチャを検索するクローラソフトウエアを使用した。しかしながら、異なるスイングが異なる動作シグネチャを有するので、この方法は普遍的に適用可能ではない。
【０１０１】
異なるタイプのゴルフスイングは異なる動作シグネチャになる可能性が有る。具体的には、ゴルフをする高齢者ではバックスイングを短縮する傾向があることが分かったが、その結果、動作シグネチャはチップのように見えて、図９（ａ）にある第１の最小値がない。
【０１０２】
このことから、単一動作センサアウトプットの動作シグネチャの特異的特徴を検索するクローラ法は誤った結果を生む。具体的には、ゴルフの場合、プロゴルファーのフルスイングの動作シグネチャではピッチデータの第２の最小値に打点がある。しかしながら、図７（ｂ）および（ｃ）には第２の最小値が無い；このことから、これらのタイプのショットで第２の最小値を検索するとエラーが発生する。従って、打点を得るために単一タイプの回転測定に動作シグネチャデータを使う方法には限界がある。本実施態様では、この問題を克服するために、打点および／または放出点を計算する少なくとも２つの異なるタイプの回転測定（例えば、ゴルフのピッチおよびヨー）を使用する。
【０１０３】
図９（ｂ）はフルゴルフスイングでのモバイルデバイスのヨーを図示する。ゴルフおよび野球のスイングではヨーは打点（５）で急速に変化する。このことから、ピッチおよびヨー動作センサデータを使用して、最大のヨー微分（ヨーの変化）を有するピッチ動作データの最小値を探索してインパクトゾーンを分離し得る。この方法は全てのタイプのゴルフスイングに効果があり、かつ、チップおよびパットの正確な打点検出を可能にする。
【０１０４】
マルチセンサ打点検知方法の有意な利点は、モバイルデバイスにおける動作分析で遅延最小化が可能なことである。具体的には、ゴルフの場合では、ユーザが違えばそのゴルフスイングも大きく違い、かつ、校正点通過後のスイング開始をランダムに遅延できる。最も遅いスイングは校正後、約５秒後に完了する一方、最も速いスイングは２秒ほどである。一つの方法は大部分のスイングを捉えたために５秒間のデータを収集し、次に、打点最小値を検出するのにクローラを使う。しかしながら、３秒ほどの遅延が加わっており、かつ、モバイルデバイスでの処理を遅くする追加的なデータを捉えているので、この方法は非効率である。
【０１０５】
本発明の方法では、カギとなるイベントはヨーが校正点でのヨーに等しくなる時、または、等価的にヨーがゼロを交差する時である。図９（ｂ）参照。スライスボールの場合、打点はヨーがゼロを交差した後の１００分の数秒であり、また、フックの場合、打点はヨーが校正点を交差する前の１００分の数秒である。このことから、ヨーゼロ交差はゴルフスイングの下部での打点の位置を決める指数となる。具体的には、ヨーがゼロを交差した時で探し、かつ、追加的な１５０ミリ秒後のデータを短縮し、打点はヨーゼロ交差からプラスマイナス１００ミリ秒に見出す。
【０１０６】
１０ミリ秒未満の演算処理時間を仮定して、本発明の総合インパクト検出およびスイング分析時間は２００ミリ秒未満である。従って、ゴルフスイングの場合、本発明のオリジナルで進歩的なマルチセンサインパクト検知法を使用することで、式（１）におけるモバイルデバイス動作分析の遅延
0006313283.tif 000018
を約３秒から２００ミリ秒未満に短縮できる。小さなデータパケット送信における５０ミリ秒の米国の場合の総合的な公共のインターネット遅延、式（１）での
0006313283.tif 000019
＝１００ミリ秒を仮定し、データ送信がモバイルデバイス１０からゲームサーバ１１０まで、そして表示デバイス２０まで戻るのに数千マイルと認めれば、モバイルデバイス上の打点から表示デバイス上の飛球までの大体の合計遅延時間は約３５０ミリ秒である。ユーザはゴルフスイングのフォロースルー、つまり、図７の動作５−７を完了するのに約５００ミリ秒かかる。このことから、図５のゴルフゲームシステムにいる複数の同時ユーザ３０（Ａ、Ｂ、Ｃ、Ｄ）に対して、飛球がほほ瞬間的に表示デバイス２０に現れる。
【０１０７】
モバイルデバイス動作分析遅延を短縮させる本明細書に記載された方法はゴルフスイングに限定されず、別の動作にも一般化可能であることを理解すべきである。さらに、複数のセンサはモバイルデバイスのピッチおよびヨーでなくてもよいが、モバイルデバイスで得られる複数のセンサ出力のうちの２つである。
【０１０８】
本発明に記載するように、スイング動作の正確性に関するデータはユーザに提示され、かつ、スイング、パッティング、チッピング等の一貫性向上の縦断的比較用の動作アーカイブデータベース１１８内のゲームサーバ１１０に保存される。また、これらのデータはＪｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９、７７４号に詳細に開示された、上記の「仮想キャディー」分析およびカスタマイズされたスポーツ指導の基礎である。
【０１０９】
（３）表示デバイス最適化
先行技術と比較した本発明のさらに別の利点は表示デバイス帯域幅利用率の最適化、および、全般的な遅延、モバイルデバイスのスイングと表示デバイス上の飛球表示との間の遅延時間の最小化を図る分散型インターネット環境で操作するように設計されたアーキテクチャであり、ここで、遅延とはゴルフの場合ではモバイルデバイスのスイングと次のショット表示媒体表現との間の時間の遅れである。遅延最小化に関してはスイングデータをモバイルデバイス１０からゲームサーバ１１０へ送信、更には、グラフィックエンジン１２０へ送信に関する式（１）で記載した。ここでは、グラフィック解像度および特定のユーザの表示デバイスのインターネット接続速度（帯域幅利用率）を最適化する方法について見てみる。
【０１１０】
ゴルフなどの３Ｄゲームを表現するにはかなりの計算能力を必要とし、かつ、先行技術のコンソールベースのゲームにおけるグラフィック画質はその処理能力に制約がある。本発明の方法は、ゴルフホールがセグメント化され、かつ、そのセグメントに画像がマッピングされている点で、コンソールベースのゲームとは実質的に異なる。一実施態様では、高いダイナミックレンジ（ＨＤＲ）のカメラなどの現在利用可能な画像化技術が使われている。画像はシネマグラフ（循環する短編ビデオクリップ）およびスプライト（グラフィックエンジンで制御する短いビデオ）（図１０に示す）によりさらに強調されるので、例えば、木々、旗、さらには雲が風にたなびくのである。写真の代わりに、画像は圧縮された高精細画質ビデオ、ＨＤＲビデオ、まだ発明されていない別の画像化技術などのフルスクリーンビデオであり得る。素晴らし効果が可能であり、ショット毎に低いデータ密度および計算要求となる。使用画像は写真機材で取った実際のゴルフコースのデジタル画像であり得る（または、それに基づいても良い）が、デジタル画像は必ずしも実際のゴルフコースに対応しなくても良く、例えば、芸術家が描くゴルフコースであったり、実際のゴルフコースの地形を簡素化したもの可能であることを理解すべきである。
【０１１１】
２０００年以降Ｗｅｂブラウザで支持されているカスケーディングスタイルシート（ＣＳＳ）により、ウエブページ上でグラフィックスおよびテキストのフォーマット化が可能になる。ＣＳＳの１つの特徴は１つの数字をＺ−インデックスと呼ばれる、１つのページ上のグラフィックスの層に付すことである。Ｚ−インデックスは特定のウエブページから成る積み重なる画像層における数字と層序列の両方を定義する。
【０１１２】
図１０はシミュレーションされたゴルフゲームにおける画像に奥深さを出すためのＣＳＳを使用した本発明の技術に関する例示的な例を示す。この方法は表示デバイスでのグラフィック処理を最小化するので遅延を短縮する。アニメーションの雲２１０、特定のヤード数で設定してある障害物２２０および２３０は画像の上に、３００のＺ−インデックスを背景画像２００に付す。例えば、１００ヤードには木２３０を、１５０ヤードには複数のブッシュおよび木２２０を設定、または、それぞれに１００および１５０のＺ−インデックスを付す。
【０１１３】
初期段階で、飛球２５は３００のＺ−インデックスを有し主要な背景に表示されるが、飛球距離、フック、スライスなどによりＺ−インデックスは変わる。右にスライスした時に飛球距離が１２０ヤードであれば、飛球２５のＺ−インデックスは１２５に変わり、ボールが木の層１００の背後でブッシュと木の層１５０の前に落下する。このことから、２Ｄイメージ環境において奥行き効果を作るために飛球のＺ−インデックスをダイナミックに変更するので、ボールは特定の距離に対応した層の後ろに落下する。この方法は２Ｄ写真に限定されないだけでなく、デジタルビデオ、ＨＤＲビデオ、または、まだ発明されていない別の画像化技術に応用可能である。
【０１１４】
また、表示デバイスの遅延を短縮し、かつ、帯域幅利用率の最適化する方法を開示することで本発明の新規性を図示する。
0006313283.tif 000020
表１．「Ａｑｕｉｍｏ」が本発明の新しい方法である、デジタルゴルフゲームの先行技術方法との画像密度比較
【０１１５】
表１は、方法１および方法２と表記した別の代表的方法と本発明の新しい方法（「Ａｑｕｉｍｏ」）との比較である。
【０１１６】
具体的には、本発明ではパー３では５０画像未満、パー４では７５画像未満、パー５では１００画像未満を使用したが、別の方法ではこの量の２倍または４倍を使用する。表２（ａ）ないし２（ｃ）は５、２０、５０Ｍｂ／秒の代表的な帯域幅について１０％画像のロード時間を秒単位で示す。具体的に言うと、利用可能帯域幅は経時的に増大するが、本発明の方法は画像解像度および画像のプリロード時間の側面で最適化し、常に、先行技術よりも良い成績である。
0006313283.tif 000021
表２ａ．低帯域幅（５Ｍｂ／秒）
0006313283.tif 000022
表２ｂ．中帯域幅（５Ｍｂ／秒）
0006313283.tif 000023
表２ｃ．高帯域幅（５Ｍｂ／秒）
【０１１７】
例として、飛球の飛びを予測するために過去のプレイヤーのスイング動作分析を使用する。従って、例えば、ユーザの平均ドライバー飛距離、フックまたはスライス、およびそれらのスイングメトリクスの標準偏差から見て、強調画像に対応させてボールが着地する可能性のあるコース上のトップ５の場所予測が可能である。より粒度の細かい方法（表２ａ−２ｃの方法１および方法２）は、同じ場所カバーするのにより多くの画像をロードしなければならない。（Ｔｒａｎｓｌａｔｏｒ’ｓ  Ｎｏｔｅ：Ｉｔ  ｓｅｅｍｓ“Ｍｅｔｈｏｄ  １  ａｎｄ  Ｍｅｔｈｏｄ  ２  ｉｓ  ｃｏｒｒｅｃｔ  ｉｎｓｔｅａｄ  ｏｆ“Ｍｅｔｈｏｄ  ２  ａｎｄ  Ｍｅｔｈｏｄ  ３．）表２ａ−２ｃは１０％プリローディングしたと仮定した全ての方法の場合における、低、中、高解像度画像での３つの帯域幅の場合の比較を示す。
【０１１８】
目標としているのはユーザの表示デバイスに帯域幅利用率を組み込むことで、可能である限りユーザにグラフィカルな経験を提供することである。従って、例えば、５Ｍｂ／ｓの比較的低い帯域幅を使用するユーザには５画像に対してプリロード時間が６秒である低解像度の画像が提供されるが、これは、ゴルフクラブの選択、友達との会話等に費やす予想時間から見て許容される。しかしながら、ユーザが５０Ｍｂ／ｓ接続を有している場合には５画像に対してプリロード時間が４秒の高解像度を提供する。
【０１１９】
特定の表示デバイスについての帯域幅利用率は次のように測定する：Ｊａｖａｓｃｒｉｐｔの変数が定義され、全体で約２ＭＢであるゲームスクリーン（２Ｄ画像、シネマグラフ、スプライトなど）のデジタル画像がゲームロジックサーバから送信されるので、ｓｔａｒｔＬｏａｄを現在時間にセットする。画像ロード完了でｆｉｎｉｓｈＬｏａｄと呼ばれる第２の変数が定義される：ｆｉｎｉｓｈＬｏａｄ−ｓｔａｒｔＬｏａｄ＝ロード時間。もしも、ロード時間が単一の画像で４秒を超える場合にはデジタルコンテンツの解像度を低くし、さらに、もしも、ロード時間が２秒未満である場合にはゲームデジタルコンテンツの解像度を高くする。
【０１２０】
従って、ユーザは合理的なバックグランドプリロード時間で最も高い解像度画像を経験する。効果として得られるのは、ユーザの帯域幅利用率に適合可能な最も高い解像度画像での瞬間的なショットからショットへの移行である。表２の方法１および方法２に示す別の方法では、これらの側面で最適化せず、プリロード時間が受け入れがたいほど大きいのでゲーム開始、ショット間の移行またはホール間の移行などで潜在的に重大な時間の遅れ、または、画像解像度が最適にならない。
【０１２１】
上記以外のスポーツゲーム例
ここに記載された技術は身体動作、投擲、打撃などをする多くのゲームに対して一般化可能である。さらなる例としては、ボウリング、テニス、野球などが挙げられる。しかしながら、本発明の方法およびシステムはゴルフや別のスポーツに限定されず、モータスポーツ、アメリカンフットボール、ホッケー、ラグビーなどの数多くの別のスポーツゲームに応用可能である。また、本発明の方法およびシステムはスポーツゲーム以外のジャンルにも応用可能であることを理解すべきである。
【０１２２】
（１）ボウリング
ボウリングゲームは二人対抗または相手チームとで競技する。各ユーザ（またはチーム）はボウリング場のフレーム、ピンに当たる時のクローズアップを「観る」が、さらに、ズームアウトして同時にプレイしている友達がいる横のレーンも観られる。いずれの場合も写真、アーチストによる２Ｄ表現、好ましくは、スコアボード、観客の歓声などにフラッシュライトを当てたシネマグラフであり得るが、または、メインの画像はフルスクリーンビデオであっても良い。
【０１２３】
本発明の方法の利点は、Ｎｉｎｔｅｎｄｏ  Ｗｉｉコントローラなどの先行技術と比べるとモバイルフォーンセンサーの方法がボウリングスイングの正確なモデル化に使用できる点である。また結果として、ボウリングボールにスピン速度を付与する投げ出し速度、および、角回転を測定できる。投げ出すたびに、ユーザは脇にある手から開始するフォーンをゼロに設定し、そして、表示デバイスの中心に向く。振動を感じたり、または、音響的な「スイング」を聞いたりしながらボウリングのスイング動作を行う。
【０１２４】
ゴルフと同様に、スイングはモバイルデバイス１０上で分析され、分析データはボウリングゲームサーバ１１０へ送信され、さらに、上記の方法の１つを使用して表示デバイス２０に送信される。ボウリングボールの軌跡は、ダウンロードされた表示デバイスグラフィックエンジン１２５によりダイナミックに描かれる。スプライトはモバイルフォーンスイング動作分析に送られたボールの速度、軌跡、スピン速度によって変わり、Ｗｅｂベースのゲームエンジン１２０にプログラムされたロジックに従っている様々なピンモーションおよびピン倒れのモデル化に使用する。前述のゴルフゲームと同様に、プリロードコンテンツで遅延を最小化する同じ方法を使用する。また、Ｊｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９、７７４号を受けて、ボウリング指示をゲーム環境に取り入れることができる。
【０１２５】
（２）テニス
テニスはネットを張ったコート上で二人ないし四人で競技する。二人の場合の実施例を説明するが、本方法は複数ゲームを異なるプレイヤーにより同時に競技する４人の場合にも一般化可能である。テニスコートの様々な場所を取った写真はプレイヤーからの視点である。環境にプリロードされた最小限の写真セットを使用することで、ユーザに瞬間的に表示可能になる。この２Ｄ写真は観客の歓声および流れる雲など、および、ネットに当たったボールを拾いにコート上を走るボールボーイのスプライトによりシネマグラフで強調される。または、フルスクリーンビデオをシネマグラフで強調された写真の代わりに使用できる。
【０１２６】
主要なショット、サーブ、フォアハンド、バックハンド、ロブショットなどを模倣するプレイヤーの分身（アバター）についてスプライトを作成する。このスプライトは表示デバイスＷｅｂページにダウンロードされたＷｅｂベースのテニスゲームエンジンで制御される。モバイルフォーン動作センサからの入力データにより、飛球はダウンロードされたグラフィック表示エンジンによりドラマチックに表現される。
【０１２７】
テニススイングはグローバル・ポジショニング・センサーと組み合わせているモバイルフォーンで動作センサを使用して分析する。ユーザがサーブするために手を挙げるサーブ開始時点でフォーンをゼロに設定する。次に、フォーンのピッチおよびロール、ならびに、仮想ボールを打撃するフォーンの速度を分析することができ、これらのデータが仮想ボールに付与される方向およびスピンを定義する。
【０１２８】
同様に、バックハンド、フォアハンド、ロブショット動作も分析される。これらのデータに対しては、仮想ボールがネットを超えてきたときには同期されたデータ中の特定の回転運動を検索する。また、プレイヤーのスクリーンに対する右か左へのシフト、前進、ネット際への寄りなどを知るためにＧＰＳデータを取り込む。これらのデータはテニスゲームエンジンに送信されるので、プレイヤーは自身の動きに反応してダイナミックにコートの変化が観られる。例えば、プレイヤーがスクリーンの右側方向に前進すれば、２Ｄ画像がコートの右側のネットに近づくのである。
【０１２９】
速いペースで動くので遅延最小化はテニスでは特に重要である。ショットから次のショットまでにはかなりの間があり、周期的に、ユーザのモバイルフォーンそれぞれの零点を再校正する。好ましい実施形態では、モバイルデバイス１０は局所Ｓｏｃｋｅｔ接続経由で同時にＷｅｂベースのゲームサーバ１１０および表示デバイス２０に接続される。この方法により、局所ゲーム部品の間の直接的なデータ送受信が可能になる。
【０１３０】
このことから、動作分析は、ほほ瞬間的に局所ゲームエンジン１２０に送信され飛球が表示される。ボールはネットを超えて相手方に落ちるまで約１秒かかるが、０．２秒のポーリングまたはＷｅｂＳｏｃｋｅｔ（図３）を採用してモバイルフォーンのデータを別のプレイヤーのグラフィカルな表示用に送信する。ボールの運動を予測し、また、例えば、「プリインパクト検出」データの送信ができるので、アバターはプリリターンスイング動作をするので最小限の遅延でプレイを同調させる。
【０１３１】
加えて、Ｊｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９、７７４号を受けて、テニス指示をゲーム環境に取り入れることができる。
【０１３２】
（３）野球
野球は特に本開示方法に適する。ゲームリソースデータベース１１７は、野球の内野での様々な位置で体系的に取られた２Ｄ写真またはビデオを含むことが可能である。写真は観衆、流れる雲などについてはシネマグラフにより強調可能である。さらに、スプライトを、例えば、打ち上げ花火や上空の飛行機の画像を強調するのに使用する。
【０１３３】
例えば、ゲームは仮想チームに対抗する単一のプレイヤーや、複数プレイヤーによる２つのチームでもよい。プレイヤーおよび位置それぞれについて、捕球および投球動作用スプライトに関するデータベース１１７を作る。例えば、一塁のアバターはベースに片足をつけて複数の方角からくるボールを主に捕球し、ピッチャーにボールを投げ返すが、時々は二塁、三塁、ホームへ投げても良い。このことから、スプライトは一連のゲーム次第でプリロードできる。
【０１３４】
ゲームルールエンジン１１５は複数プレイヤーのインターアクションを判断し、ゲームリソースデータベース１１７およびユーザデータベース１１６でインターフェイスするが、ウエブサイトゲームエンジン１２０およびグラフィックスエンジン１２５は特定のユーザの表示デバイス２０にダウンロードされる。スイングおよび投球の動作分析はユーザのモバイルデバイス１０で実施する。従って、例えば、バットのスイングはモバイルデバイスのスイングによりなされる。表示デバイスに仮想のストライクゾーンを定義し、このゾーンにピッチャーのアバターが投げ込んだ仮想ボールをユーザがスイングして打つ。本発明は、スイングとスイング軌道を定義する以下のセクションに記載の方法を使用する。スイングのタイミングはモバイルデバイス（バット）がストライクボールを打ち損じるか、または、潜在的にボールを打つかどうかを概算するのに使用する。ゲームルールエンジン１１５は一塁打、フライ、ホームランなど様々なヒットになったピッチャーの投球に対して一連のスイングを定義する。続けて、ゲームロジックエンジン１２０はモバイルデバイスのスイングに反応した飛球を判断する。プレイヤーらは仮想のチームメイトにより制御される可能性が有り、また、チームメイトは自身の場所で、プレイヤーのアバターがプレイするフィールドおよびスプライトに関して対応する２Ｄ写真またはビデオを見る。動作センサを使用して投球を分析するが、ここでは、スクリーン上の仮想グローブがボールをキャッチする。
【０１３５】
好ましい実施形態では、ストライクであるかヒットであるかは次の方法を使用して決定する。ピッチャーの仮想投球がプレイヤーに到達に要する時間ｔ打点は、時間ｔ打点＝ｄ／ｖから計算できるが、ここで、ｄはピッチャーからホームプレートまでの距離（メジャーリーグの場合は６０．５フィート、リトルリーグの場合は４５フィート）であり、ｖは投球の速度である。メジャーリーグの９５ｍｐｈの投球速度を仮定して、ピッチャーからホームプレートまでの飛球時間は０．４３秒である。つまり、時間ｔ打点＝０．４３秒であった。クラウドベースのエンジンは投球のタイムスタンプｔピッチプラスｔ飛球を、打点ｔ打点のタイムスタンプと比較する。これが、所定の時間間隔内であれば、これらは衝突し、
Δｔ＝［打点ｔ打点−（ｔピッチプラス＋ｔ飛球）］              （６）
例えば、δ秒、つまり、０．１５秒以下であれば、仮想バットで仮想ボールをヒットしたと仮定でき、クラウドベースのグラフィックエンジン１２５により飛球のアニメーションがＷｅｂ対応ディスプレイ２０上に表現される。しかしながら、もしも、Δｔ＞δ秒であれば、仮想バットは仮想ボールを打ち損じ、そして、スイングはストライクであると仮定できる。
【０１３６】
好ましくは、スポーツ動作分析および同期は、それぞれに０．１秒以下である忠実度をもつ同期されたモバイルデバイス１０、クラウドベースの（またはネットワークされた）ゲームサーバ１２０、Ｗｅｂ対応ディスプレイ２０を使用する。現在のブラウザのローカルクロックタイムスタンプは信頼性が無く、かつ、Ｊａｖａｓｃｒｉｐｔ呼び出しは内部時計に対して正確に等間隔でポーリングしない。好ましい実施形態では、ネットワーク時間プロトコール（ＮＴＰ）はパケット交換、変数−遅延データネットワーク上のコンピュータシステム同期のために使用できる。本発明は、Ｊａｖａｓｃｒｉｐｔ  ＮＴＰクライアントを使用してクライアント（モバイルデバイス１０および表示デバイス２０）ならびにサーバ（クラウドベースのソフトウエアエンジン）の時間オフセットを取得する。これにより、正確な外部時計に基づく初期の協調型時間を設定する。続けて、可能な限り信頼性の高い粒度で、Ｗｅｂブラウザ依存的であるｓｅｔＩｎｔｅｒｖａｌ（）を使用してＪａｖａＳｃｒｉｐｔのコールバックをスケジューリングする。信頼性の高い間隔でコールバックがコールされていると仮定はしないが、しかし、代わりに、コールバック内から新しいＤａｔｅ（）．ｇｅｔＴｉｍｅ（）コールを使用し、かつ、実際の協調型時間を得るためにオフセットを適用し、さらに続けて、ピッチの実際時間ｔピッチおよび仮想打点ｔ打点を見つけるために内挿する。これらのデータは式（６）を計算するのに使用する。
【０１３７】
このことから、本方法はスポーツ動作が野球またはテニスボールなどの可動仮想物体に影響する活用事例に対して一般化可能および拡張可能であり、かつ、可動仮想物体（例えば、ボール、パック、シャトルコック）が動き、スポーツ動作およびプレイヤーの仮想スポーツ器具により打撃され、投げられ、受け取られるテニス、バトミントン、卓球、ラケットボール、ホッケー、バスケットボール、アメリカンフットボール、その他の類似の全てのスポーツに同様に適用できる。
【０１３８】
Ｊｅｆｆｅｒｙらの２０１２年１０月２４日提出「モバイルデバイスの動きに合致する動的でカスタマイズされたスポーツ指導を提供する方法」と題する米国特許出願大１３／６５９，７７４号を受けて、特に、バッティングおよびピッチングに関する野球指示をゲーム環境に取り入れることができる。
【０１３９】
一般的なスポーツ動作分析
ゴルフスイング分析にモバイルデバイスの複数の動作センサからのデータを使用する本発明の方法は、別のタイプのスポーツ動作に一般化可能である。図１１（ａ）ないし（ｃ）はテニスのフォアハンドの場合の、または、座った位置での水平なゴルフスイングのサンプル動作データを示す。この実施例ではスイング軌道は水平面にあるが、前腕は回転し、かつ、インパクトで手首は曲げている。このことから、この動作シグネチャデータは立位でのゴルフスイングおよび図１１（ａ）の打点と異なり、かつ、ピッチはピッチデータがゼロ交差している。正しいゼロ交差の検出が課題となる。この実施例では、ヨーは打点近くの局所最小値である。このことから、図１１（ａ）および（ｂ）にあるピッチおよびヨーのそれぞれを参照しながら、２つのタイプの回転測定（ピッチおよびヨー）を使用して、この場合はピッチであるが単一センサのデータからより正確に打点を検出することができる。テニスのスイングの場合、図１１（ｃ）を参照しながら打点でのロールデータを使用してテニスボールに付与されたフックまたはスライススピンを計算できる。
【０１４０】
校正点はモバイルデバイス１０が、同じポジションで１秒間静止して保持されている特定に構えのポジションである必要はないことに留意する。テニスまたは卓球の場合では、校正点はプレイヤーがプレイの準備ができているポジションでの手が有るポイントから取得するか、および／または、前のスポーツ動作１００の終点または校正点として選択しても良い。
【０１４１】
スポーツ動作が可動仮想物体と交差し、かつ、放出点および打点が校正点とは異なる状態の好ましい実施態様の図示するために、野球およびボウリングの例を示す。
【０１４２】
野球のスイング動作センサデータを図１２（ａ）ないし（ｃ）に図示する。野球のスイングの場合、校正点は仮想のティー上にボールを備え、モバイルデバイス（仮想バット）は自然に並ぶように親指を向け、手は地面に対して垂直で、体の前にした構えている両手でモバイルデバイス１０を支持するポジションである。示したデータはプロのアスリートのデータであり、かつ、最適な野球のスイング動作の重要な特徴を示す野球のスポーツ動作の場合にはヨーが重要な変数であり、その理由は「バット」で仮想ボールに対して打点でスイングする時の理想の手の位置は、手のひらが地上に対して平行になる状態であり、これにより、インパクトでモバイルデバイスのヨーに急激な変化が起こる。校正点でのヨーはゼロであるから、モバイルデバイスは校正点に対して９０度回転するが、打点はヨーがゼロを交差する時である。図１３（ａ）参照。理想的な野球のスイングではバットのロールは打点の直ぐ後に起こる。図１３（ｂ）参照。次に、打点でロール値が最大値である場合、手首はバットをボールの上方向に上げる傾向があり、ゴロまたはボールに当たらない原因となり、これを「スイングバブル」と言う。
【０１４３】
まとめると、モバイルデバイス１０のピッチおよびヨーは打点でのバット角度について洞察を与える。例えば、図１２（ｃ）のピッチデータは打点でピッチは負であり、かつ、打点の後はゼロに戻らないので手が打点に対して下り勾配の状態であり、さらに、このことから、仮想のボールが校正点の下、つまり、ストライクゾーンの下半分のゾーンに投げられるとバットが仮想ボールに接触することを示す。
【０１４４】
最後の実施例では、放出点が校正点とも打点とも異なる場合での使用を考える。図１３（ａ）ないし（ｃ）はボウリングスポーツ動作でのモバイルデバイス動作センサのデータを図示する。この実施例では、校正点は休めの状態でリラックスしていて、プレイヤーの体側で伸ばし、手のひらを前方に向けた状態である。第１に、ボウリング動作は仮想のボウリングボールを顎の方向に動かして両手で抱き、次に、数歩の間にダウンスイングと前方スイングをする。ピッチデータはプレイヤーが歩き始める時に局所最小値で、モバイルデバイス１０が顎の方向に動くに従いモバイルデバイス１０のピッチが増加することを図示する。次に、ピッチはプレイヤーがダウンスイング動作中にダウンスイングすると減少するが、初期校正ゼロに対応するゼロのピッチがあり、続けて、仮想ボウリングボールの放出点である第２のゼロのピッチに向かう最後のダウンスイングへの動作の移行がある。
【０１４５】
前記のゴルフスイングと同様に、仮想のボウリングボールの速度は図８と同様に、または、積分方程式（３）により式（２）および３０と６０度のピッチポイントの時間差から計算できる。放出点を通じてのロールデータの変化率、ロールの微分は仮想のボウリングボールに与えられるスピン率に比例する。このことから、放出点での仮想のボウリングボールの速度およびスピンを計算できる。
【０１４６】
この実施例では、放出点は校正点からの空間で異なり、かつ、打点は放出点から更に離れることに留意する。この実施例では打点は仮想の空間に生じる。上述したように、クラウドベースのゲームプラットフォーム１００を使用して、仮想ボウリングボールの速度およびスピン、さらには、仮想ボウリングボールレーンの長さを考えに入れて、ボウリングボールおよび時間と空間でシュミレーションしたピンでのインパクトをウエブＴＶなどのＨＴＭＬ５対応ウエブディスプレイ上の仮想ボーリングレーンに表示できる。このことから、プレイヤーは仮想ボウリング動作を実施して、ウエブ対応ディスプレイ上で仮想ボウリングボールがレーンを転がりピンに当たるのを見るが、ここで、軌道とスピードはモバイルデバイスのスイングのシグネチャから計算した速度およびスピンにより判断され、かつ、連続動作のように時間でシンクロナイズさせる。
【０１４７】
本発明は上記に概説した種々の実施態様と共に記載されたが、多くの代替形態、修飾形態および変形形態が当事者に自明であることが明らかである。従って、上記に説明された本発明の例示的実施態様は、例示のみを目的とするもので、限定するものではない。本発明の精神と範囲から逸脱することなく様々な変更を為すことができる。
【図１】
0006313283.tif 000024
【図２】
0006313283.tif 000025
【図３】
0006313283.tif 000026
【図４】
0006313283.tif 000027
【図５】
0006313283.tif 000028
【図６】
0006313283.tif 000029
【図７】
0006313283.tif 000030
【図８】
0006313283.tif 000031
【図９】
0006313283.tif 000032
【図１０】
0006313283.tif 000033
【図１１】
0006313283.tif 000034
【図１２】
0006313283.tif 000035
【図１３】
0006313283.tif 000036