(57)【要約】  ユーザ入力を受け付けるように構成されるユーザ入力装置と、仮想カメラによって捕捉される画像を表示するように構成される表示装置とを含む仮想カメラ配置システムを提供する。仮想カメラ配置システムは、命令を記憶するように構成される不揮発性メモリと、命令を実行してユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成し、ユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートし、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御するように構成されるプロセッサとを更に含む。
2021524076.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ入力を受け付けるように構成されるユーザ入力装置と、
仮想カメラによって捕捉される画像を表示するように構成される表示装置と、
命令を記憶するように構成される不揮発性メモリと、
前記命令を実行して
ユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成し、
前記ユーザ入力に応答して前記チャレンジポイントを含む前記シミュレーションをナビゲートし、
前記チャレンジポイントの１つ又は複数をナビゲートした少なくとも前記ユーザ入力及び結果に基づいて複数のカメラステージにおいて前記シミュレーション内の前記仮想カメラを異なるように制御する
ように構成されるプロセッサと
を含む、仮想カメラ配置システム。
【請求項２】
前記複数のカメラステージが、
次に来るチャレンジポイントの広いビューを与える第１のステージ、
前記チャレンジポイントとの対話の近接ビューを与える第２のステージ、及び
前記対話の結果の映画ビューを与える第３のステージ
を含む第１のカメラの推移を含む、請求項１に記載の仮想カメラ配置システム。
【請求項３】
前記第３のステージが前記第２のステージの一部の映画リプレイを更に含む、請求項２に記載の仮想カメラ配置システム。
【請求項４】
前記シミュレーションの前記ナビゲーションが前記ユーザを表すオブジェクトによって印付けされ、
前記ユーザの前記オブジェクトが別のユーザのオブジェクト又はコンピュータ制御オブジェクトを追い越すことを前記結果が含む場合、前記第３のステージは前記追い越しを目立たせるビューを更に含む、
請求項２に記載の仮想カメラ配置システム。
【請求項５】
前記ユーザ入力が解除され再入力される単一入力に限定される、請求項１に記載の仮想カメラ配置システム。
【請求項６】
前記単一入力が速度を制御し、
前記命令が少なくとも前記シミュレーションの前記速度及び道に基づいてハンドル操作を制御するために前記プロセッサによって実行可能な人工知能（ＡＩ）ロジックを含む、
請求項５に記載の仮想カメラ配置システム。
【請求項７】
前記シミュレーションがレースゲームである、請求項１に記載の仮想カメラ配置システム。
【請求項８】
前記複数のチャレンジポイントが道中のカーブである、請求項７に記載の仮想カメラ配置システム。
【請求項９】
各チャレンジポイントがブレーキ段階、旋回段階、及び加速段階を含み、前記チャレンジポイントの前記結果は少なくとも１つの段階における成功度によって決定される、請求項８に記載の仮想カメラ配置システム。
【請求項１０】
ユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成すること、
ユーザ入力を受け付けること、
前記ユーザ入力に応答して前記チャレンジポイントを含む前記シミュレーションをナビゲートすること、
前記チャレンジポイントの１つ又は複数をナビゲートした少なくとも前記ユーザ入力及び結果に基づいて複数のカメラステージにおいて前記シミュレーション内の仮想カメラを異なるように制御すること、及び
前記仮想カメラによって捕捉される画像を表示すること
を含む、仮想カメラ配置方法。
【請求項１１】
前記複数のカメラステージが、
次に来るチャレンジポイントの広いビューを与える第１のステージ、
前記チャレンジポイントとの対話の近接ビューを与える第２のステージ、及び
前記対話の結果の映画ビューを与える第３のステージ
を含む第１のカメラの推移を含む、請求項１０に記載の仮想カメラ配置方法。
【請求項１２】
前記ユーザ入力が解除され再入力される単一入力に限定される、請求項１０に記載の仮想カメラ配置方法。
【請求項１３】
前記単一入力が速度を制御し、
前記方法が少なくとも前記シミュレーションの前記速度及び道に基づいて人工知能（ＡＩ）ロジックによってハンドル操作を制御することを更に含む、
請求項１２に記載の仮想カメラ配置方法。
【請求項１４】
前記シミュレーションがレースゲームである、請求項１１に記載の仮想カメラ配置方法。
【請求項１５】
前記複数のチャレンジポイントが道中のカーブであり、
各チャレンジポイントがブレーキ段階、旋回段階、及び加速段階を含み、
前記方法が少なくとも１つの段階における成功度を決定することで前記チャレンジポイントの前記結果を決定することを更に含む、
請求項１４に記載の仮想カメラ配置方法。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
[0001]  多くのビデオゲーム及び他の仮想シミュレーションはユーザが複数の入力を制御することを必要とする。例えばレースゲームは、典型的にはユーザが行うハンドル操作、加速、ブレーキ、及びカメラ操作を含み得る。複数の入力を一度に組み合わせることは、理解するだけの場合にさえ新規ユーザにとっての能力の障壁を伴う複雑なゲームの原因になり得る。かかる障壁は、新規ユーザがさもなければ楽しむであろう新作ゲームを試すことを妨げ得る。
【発明の概要】
【課題を解決するための手段】
【０００２】
概要
[0002]  ユーザ入力を受け付けるように構成されるユーザ入力装置と、仮想カメラによって捕捉される画像を表示するように構成される表示装置とを含む仮想カメラ配置システムを提供する。仮想カメラ配置システムは、命令を記憶するように構成される不揮発性メモリと、命令を実行してユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成し、ユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートし、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御するように構成されるプロセッサとを更に含む。
【０００３】
[0003]  この概要は、以下の詳細な説明の中で更に説明する一連の概念を単純化した形で紹介するために提供する。この概要は、特許請求の範囲に記載の内容の重要な特徴又は本質的な特徴を識別することも、特許請求の範囲に記載の内容の範囲を限定するために使用されることも意図しない。更に、特許請求の範囲に記載の内容は、本開示の任意の箇所に示す何れかの又は全ての不都合を解決する実装形態に限定されない。
【図面の簡単な説明】
【０００４】
図面の簡単な説明
【図１】[0004]本明細書の一実施形態による仮想カメラ配置システムの一例を示す。
【図２】[0005]図１のシステムによって生成された第１のステージにおけるシミュレーションを示す。
【図３】[0006]第２のステージにおけるシミュレーションを示す。
【図４】[0007]第３のステージにおけるシミュレーションを示す。
【図５】[0008]第３のステージの別のビューにおけるシミュレーションを示す。
【図６】[0009]シミュレーションを生成するためのカメラ位置決めグリッド及びカメラの推移の例を示す。
【図７】[0010]仮想カメラ配置方法の流れ図を示す。
【図８】[0011]本明細書の一実施形態による計算システムの一例を示す。
【図９】[0012]図６のカメラの推移の例を要約した表である。
【発明を実施するための形態】
【０００５】
詳細な説明
[0013]  人工知能（ＡＩ）制御を代わりに使うことでユーザによって制御される入力数を減らす場合、ユーザがカメラの方向を自分で決めることを必要とする代わりに又は所定のカメラ経路しか提供しない代わりに、ユーザ向けのシミュレート場面の視点を提供する仮想カメラをＡＩロジックによって直接のユーザ入力なしにプログラムで制御することができる。このようにして、ゲーム又はシミュレーションの興味を引くビュー又は指導的なビューを引き続き提供しながら、ゲーム又はシミュレーションの入力数及び複雑度を低下させることができる。知覚される任意の障壁を低下させることは、新規ユーザ及び経験の浅いユーザにシミュレーション又はゲームの使用を試みさせることを助け得る。
【０００６】
[0014]  従って、図１は本明細書の一実施形態による仮想カメラ配置システム１０の一例を示す。仮想カメラ配置システム１０は、ユーザ入力１４を受け付けるように構成されるユーザ入力装置１２と、仮想カメラ２０によって捕捉される画像１８を表示するように構成される表示装置１６と、命令を記憶するように構成される不揮発性メモリ２２とを含み得る。それらの命令の例は、以下で説明するシーンジェネレータ２４、カメラコントローラ２６、パラメータジェネレータ２８、及び非プレーヤオブジェクトコントローラ３０を含む。システム１０は、幾つか例を挙げるとスマートフォン又はタブレット等のモバイル計算装置、デスクトップコンピュータ又はラップトップコンピュータ等の大型計算装置、又はゲーム機とすることができる。表示装置は、例えばディスプレイモニタ又はタッチスクリーンであり得る。ユーザ入力装置は、例えばマウス、タッチスクリーン、加速度計及び／又はジャイロスコープ、ボタン及び／又はジョイスティックを有する手持ち式コントローラ、キーパッド、又はキーボードであり得る。システム１０は、例えばシステム１０を更新するために又はユーザ間のマルチプレーヤ或いは対話型交流を可能にするために、ネットワーク３８を介して別のユーザ装置３４及び／又はサーバ３６と通信するための通信装置３２も含むことができる。
【０００７】
[0015]  手短に言えば、システム１０は、命令を実行してユーザ向けの複数のチャレンジポイント４４を含む三次元シミュレーション４２を生成し、ユーザ入力１４に応答してチャレンジポイント４４を含むシミュレーション４２をナビゲートし、少なくともユーザ入力１４及びチャレンジポイント４４の１つ又は複数をナビゲートした結果４６に基づいて複数のカメラステージにおいてシミュレーション４２内の仮想カメラ２０を異なるように制御するように構成されるプロセッサ４０を更に含み得る。シミュレーション４２の生成は、不揮発性メモリ２２内に記憶される予め構築されたシミュレーションベースを使用する、又は新たなシミュレーション４２を作成するために命令に従って記憶済みのシミュレーション片を組み立てるシーンジェネレータ２４を実行することによって行われ得る。仮想カメラ２０の位置決めを含むシミュレーション４２のナビゲーションについては、図２〜図５のシミュレーション４２の例に関して以下で詳細に説明する。
【０００８】
[0016]  仮想カメラ２０は、カメラコントローラ２６のロジックを実行することにより、シミュレーション４２の全体を通して様々なやり方で制御することができる。一例では、複数のカメラステージが、次に来るチャレンジポイント４４の広いビューを与える第１のステージを含む第１のカメラの推移を含む。以下で３つのステージを記載するが、任意の適切なステージ数を選ぶことができる。図２は、図１のシステム１０によって生成された第１のステージにおけるシミュレーション４２を示す。シミュレーション４２は、表示装置１６によって表示されるために、例えば１つ又は複数の中央処理装置（ＣＰＵ）及び／又はグラフィックス処理装置（ＧＰＵ）を含み得るプロセッサ４０によってレンダリングされ得る。シミュレーション４２は以下に示すシミュレーション４２の例にあるようにビデオゲームとすることができるが、シミュレーション４２は二次元ビデオ又は三次元ビデオへとレンダリングされる任意の三次元シーンとすることができ、ゲーム又は娯楽目的である必要はない。例えばシミュレーション４２は構造モデル又は既存の建物の対話型ツアー、又は自動車若しくは他の車両の販売促進用のシミュレーションであり得る。そのような非ゲームの状況では、チャレンジポイント４４はユーザに非常に効果的に表示しようとする特徴点、異なる部屋又は廊下等とすることができる。
【０００９】
[0017]  ビデオゲームは例えばレースゲームとすることができるが、同様の原理は、ほんの数例を挙げるとアドベンチャーゲーム、ユーザがシーンを移動して目的物を集めるコレクション構築ゲーム、又はユーザが簡単な入力スキームを使用してルート及びフィールドイベント等のスポーツの様々な妙技を行うスポーツゲーム等の他の種類のビデオゲームに適用され得る。図２では、ユーザが複数のチャレンジポイント４４を含む走路又は道５０で車両４８を先へと制御している。ここでは、複数のチャレンジポイント４４は道中のカーブであり得る。他のチャレンジポイント４４は障害物、他のプレーヤのキャラクタ、ピット、ランプ等を含み得る。
【００１０】
[0018]  この例ではユーザは、解除され再入力される単一入力に限定されるユーザ入力１４によって車両４８を制御することができる。入力は、例えばマウスのボタン、タッチスクリーン上での単一のジェスチャ、加速度計及び／又はジャイロスコープのジェスチャ、コントローラボタン、又はキーであり得る。単一入力は速度等の単一のパラメータを制御することができる。従って、ユーザ入力１４が入力される（例えばタッチスクリーン上で接触が受け付けられ、保たれる）と車両４８が加速する。ユーザ入力１４が解除される（例えば接触が解除される）と車両４８は、車両４８が現在ある道５０の地点に基づいてブレーキをかけ又は自然減速する。つまりシステム１０は、ユーザ入力１４を解除することを常にアクセルペダルを離すことだと解釈するように設定され得るが、代わりにシステム１０は、以下に記載のブレーキ段階の予め設定された距離範囲内等のシミュレーション４２の或る既定領域内でブレーキをかけ、他の場所ではアクセルを離すことだと解除を解釈することができる。スタートラインにおいて、入力を保つことはエンジンをふかすことができる一方、入力を解除することは車両４８がまだ動いていなくてもエンジンがその速度を落とすことを可能にする。
【００１１】
[0019]  命令（例えばパラメータジェネレータ２８）は、少なくともシミュレーション４２の速度及び道５０に基づいてハンドル操作を制御するためにプロセッサ４０によって実行可能な人工知能（ＡＩ）ロジックを含み得る。ハンドル操作等の非ユーザ入力パラメータは、現在の、過去の、及び次に来る道５０の地形、チャレンジポイント４４をナビゲートする成功度、及び現在の速度、感度設定等の要因に基づいて生成され得る。ＡＩロジックは、可能な値をランク付けすること、上記の要因が各要因に関係する記憶済みの閾値に達することができないことに基づいて１つ又は複数の値の優先度を下げる又はかかる値を却下すること、並びにユーザについて学習した挙動、サーバ３６が収集した他のユーザの集約済みの挙動データ、及び／又はシミュレーション４２の難易度若しくは楽しさに関するユーザ若しくは他のユーザからのフィードバックに応じて時間と共にランク付けを調節することにより、複数の可能な値からハンドル操作に最適な値（例えば方向ベクトル）を選択するように構成され得る。
【００１２】
[0020]  従って、道５０がカーブ等の幾つかのチャレンジポイント４４を含むにもかかわらず、車両４８の速度に関する入力を行うだけでユーザがレースを完走できるようにすることができる。例えばパラメータジェネレータ２８は、チャレンジポイント４４として次に来るカーブを安全にナビゲートするには速過ぎる現在速度をユーザが有し、従って不揮発性メモリ２２又はサーバ３６内に記憶される既知の閾値を満たさないと判定することができる。それに応答し、パラメータジェネレータ２８はカーブの周りの外側車線に車両４８を導くことができ、更に速度が第１の閾値を上回る場合はユーザの速度が制御できない状態にあることをユーザに知らせることができる。速度が第２の閾値を上回る場合、例えば車両４８はカーブの周りでスピンアウトし得る。追加の特徴として、ユーザは特定の時点又は位置において入力を行うことによって「ブースト」を使用できてもよい。例えば通常の加速は車両４８上でのタッチ入力又はマウスクリックによって行うことができる一方、ブーストは同じ種類の入力によって表示装置１６上の別の位置において入力され得る。更に一部の事例では、ユーザ入力１４として単一の種類の入力を行うことができ、又は非常に少ない種類（例えば２、３種類）の別個の入力を代わりに行うことができる。
【００１３】
[0021]  チャレンジポイント４４に対するユーザの対話は、上記で述べたように複数のステージに分けることができる。ここでの３つのステージとは、次に来るチャレンジポイントのビューをユーザに与える、本明細書では「予期」と呼ぶプレビューステージ、チャレンジポイントに対するユーザの対話の近距離ビューをユーザに与える、本明細書では「対話」と呼ぶ詳細ビューステージ、及びチャレンジポイントに対するユーザの対話の結果をユーザに示すビューをユーザに与える、本明細書では「ペイオフ」と呼ぶ結果ステージである。これらのステージのそれぞれにおいて、レンダリングされるビデオ（即ち一連の画像１８）の視点を与える仮想カメラは、どのステージに入るのか、車両４８がどれ位速く走行しているのか、特定の道５０の形状、ユーザがどれ位上手にチャレンジポイント４４を終えるのか等に基づき、カメラコントローラ２６のＡＩロジックを使用してプログラムで制御することができる。図２は、ステージ１の予期を示す。予期では、現在の速度を判断し、速度調節を行い、チャレンジポイント４４と車両４８との遭遇のタイミングを計るために、次に来るチャレンジポイント４４の明確且つ広いビューが十分な時間にわたってユーザに与えられる。明確且つ広いビューは、道５０上で相対的にまっすぐに且つチャレンジポイント４４及び車両４８の位置の明確なビューを得るために相対的に高い位置で車両４８の位置に結び付けられる仮想カメラの配置によって実現することができる。但しこれは一例に過ぎず、カメラコントローラ２６はリアルタイムで上述の要因に基づいてＡＩロジックを使用してカメラ位置をプログラムで選択するように構成することができ、そのため同じ道のそれぞれの走行が一連の異なるカメラビューをもたらす場合がある。
【００１４】
[0022]  図２では、山形模様で印付けされたカーブ部分に達したとき、ユーザがブレーキをかける、つまりユーザ入力１４を解除するよう促されている。この予期ステージでは、ユーザは次のステージで生じるユーザ入力１４の解除のタイミングを計ることによってチャレンジポイント４４を迎える準備をする。図３では、チャレンジポイント４４との対話の近接ビューを与える第２のステージにユーザが突入している。ステージ２の対話では、車両４８がチャレンジポイント４４の途中にある。各チャレンジポイント４４との対話は、例えばブレーキ段階（例えば点のパターンで示す山形模様の最初の色）、旋回段階（例えば白色で示す山形模様の２番目の色）、及び加速段階（例えば山形模様の後）を含むことができ、チャレンジポイント４４の結果４６は少なくとも１つの段階における成功度によって決定され得る。図３では、山形模様の最初の色が終わって２番目の色が始まっており、カーブを上手く曲がるためにブレーキが必要である時が図示の瞬間よりも前に既に始まっていることを示している。
【００１５】
[0023]  段階１において、ブレーキが完璧に行われた場合、カメラ位置をズームインして外観上ユーザを車両４８の方に引き寄せることによってブレーキの感覚を強調することができる。「完璧なブレーキ」は、例えばゲーム内の±３フィート、チャレンジポイント４４の長さの±１０％、又は±０．３秒の誤り許容範囲を含み得る。ゲームの難易度を調節するために、これらの例示的な値は適切に調節することができる。そうではなくユーザがブレーキをかけるのが早すぎる場合がある。「完璧なブレーキ」の許容範囲よりも前にブレーキをかけることである「早いブレーキ」はカメラを全く引き付けない、或いは「完璧なブレーキ」に比べてカメラを僅かにしか引き付けないことをもたらし得る。「完璧なブレーキ」の許容範囲よりも後にブレーキをかけることである「遅いブレーキ」は、ユーザがカーブで速く運転し過ぎている効果を有することができ、従って例えばカーブ付近で制御不能に揺れながら走行する感覚を強調するためにカメラ位置を引き付けるのではなく広く揺らすことをもたらし得る。これらのブレーキの成功度は一例として示しており、３よりも少なくても多くてもよい。チャレンジをナビゲートすることにおけるユーザの成功はカメラの位置決めに影響を及ぼし得るが、ハンドル操作等の他のシミュレートパラメータにも影響を及ぼし得る。
【００１６】
[0024]  車両４８が旋回し始める段階２において、例えば旋回が進むのを見るためにカメラ位置が頂点位置まで上に移動することができ、又は遅いブレーキの場合は車両４８が制御不能になる若しくは壁に衝突するのを示すためにカメラ位置が外側に移動し得る。カーブの中から外への加速が道５０上の山形模様の終わり、又は他の通知方法とタイミングを合わせられる段階３での加速は、段階１のブレーキと同じように採点することができる。段階３で車両４８が再び加速させられると、仮想カメラ２０が車両４８の背後のデフォルトの準備完了位置に戻ってステージ３のペイオフに向けてセットアップし得る。加えて、カメラ位置がズームアウトすることは、車両４８が表示装置１６から離れて加速しているかのようにユーザに感じさせることができる。従って、チャレンジをナビゲートする成功度はブレーキ及び加速の両方を含むことができ、間の旋回を追加で含むことができる。従って、ユーザが旋回中に任意のユーザ入力１４を行わなければならない又は行ってはならない場合、任意の間違いを成功度、従ってチャレンジポイント４４をナビゲートする全体的な結果４６に反映させることができる。
【００１７】
[0025]  図４及び図５は、対話の結果の映画ビューを与える第３のステージであるペイオフのシミュレーション４２を示す。ペイオフは、チャレンジポイント４４を克服したこと、コンピュータ制御の若しくは他のプレーヤの車両５２を追い越したこと（図３参照）、及び／又は勝利に向けて走り去ることをユーザが満喫する楽しい瞬間である。非プレーヤオブジェクトコントローラ３０を実行することにより、コンピュータ制御車両を道５０の既定の道に配置することができ、又は車両４８による道５０のナビゲーションに応じて動的に設定することができる。コンピュータ制御車両は、例えばユーザのための競争相手として難易度の面で高く又は低く調節することができる。
【００１８】
[0026]  ペイオフのユーザエクスペリエンスを増強するために、映画カメラのパン、空中「ヘリコプタ撮影」、及びアクション映画の他のビュー回想が提示される。１つのシーンを使用することができ、又は図４及び図５に示すような複数のシーンが含まれてもよい。一部の事例では、例えば追い越しが離れて加速する間ではなく旋回中に生じた場合、第３のステージが第２のステージの一部の映画リプレイを更に含み得る。図４の正面斜視図又は図５に示すボンネットからのビューにあるように、ビューは審美的に美しいレースカーを誇示するように選択することができる。加えてビューは、他の車両５２に対する車両４８の近接度に依存し得る。シミュレーション４２のナビゲーションはユーザを表すオブジェクト、この事例では車両４８によって印付けすることができる。他の事例ではオブジェクトがアバター又は他のマーカであり得る。ユーザのオブジェクトが別のユーザのオブジェクト又はコンピュータ制御オブジェクト、この事例では他の車両５２を追い越すことを結果４６が含む場合、第３のステージはその追い越しを目立たせるビューを更に含み得る。従ってレースゲームの例では、別の車が追い越された場合、その瞬間を目立たせるのに最良のビューがカメラコントローラ２６のＡＩロジックによってプログラムで選択される。車両４８が移動するときクリップする（即ち別のオブジェクトのメッシュと衝突する又はかかるメッシュの内側に位置する）カメラ位置は潜在的なカメラ位置をランク付けする際に優先順位を下げ又は除外し、如何なる車両４８又は静止オブジェクトとも衝突しないように、従ってユーザのビューを分かりにくくしないように仮想カメラ２０は回避ロジックを含むことができる。例えば、両方ではなく車両４８だけ又は追い越された他の車両５２だけを示すカメラ位置は優先順位を下げることができる。２台の車両間の距離が変わるにつれて、使用する仮想カメラ２０もしかるべく変えることができる。要因の多くの組み合わせを使用することができるので、ランク付け及びカメラ位置の選択における要因は特に限定されるわけではない。特定のショットがいいか悪いかのユーザフィードバックを考慮することができ、それらのカメラ位置及び動きの優先順位を将来下げることができる。
【００１９】
[0027]  図６は、ステージ３の間のシミュレーション４２に関する例示的なカメラ位置決めグリッドを示す。道５０はＺ１〜Ｚ１４までの１４個のゾーンに分けてあり、これは例として示すに過ぎない。車両４８がグリッドの中央に配置されている。ゾーンＺ１及びＺ１４は後方及び前方それぞれの広角撮影用の遠方にあるゾーンであり、ゾーンＺ２及びＺ３は中距離撮影用の左後方及び右後方のゾーンである一方、ゾーンＺ１２及びＺ１３は中距離撮影用の左前方及び右前方のゾーンである。更に、ゾーンＺ４〜Ｚ１１は車両４８の周りの近接ゾーンである。
【００２０】
[0028]  図示のように、ペイオフ中の車両４８の場面をレンダリングするために仮想カメラ２０がゾーンＺ１１内に現在配置されている。レース内の様々な地点で又はスピンアウト等の共通トリガに応答して常に再生される予め設定された映画シーンとは対照的に、各ゾーンは、上記で論じたように複数の要因に応じてペイオフ中に切り替わる準備の整った複数のカメラ２０を有し得る。例えばゾーンＺ１１は、「ヘリコプタ撮影」用の仮想カメラ２０、車両４８に対して後方を向いた仮想カメラ２０、及び車両４８の側面を向いた仮想カメラ２０を含み得る。１台の「仮想カメラ２０」が突然位置を切り替えると考えることができ、又は画像１８は複数の「仮想カメラ２０」によって捕捉されると考えることができる。従って、カメラ位置は隣接ゾーン間で滑らかに移行することができ、或いは或るゾーンから別のゾーンまでカットすることができる。予期及び対話におけるカメラ位置は、車両４８の移動位置に対する三次元位置であり得る。ペイオフ用のカメラ位置の殆どは同様に車両４８に結び付くことができるが、一部の仮想カメラ２０は道５０沿いの固定位置に又はペイオフ用の所定のカメラ経路内に実装することもできる。
【００２１】
[0029]  カメラの推移の一例を図６内の破線で示し、図９の表で要約する。仮想カメラ２０の二次元方向が図６の破線沿いの矢印によって示されている。これはゲームをプレイすることにおけるユーザの成功、道５０の地形上の特徴、及び他の車両５２の活動等に応じてその場で生成され得る一例に過ぎない。他の無数の可能性が存在し、仮想カメラ２０は１つだけの推移に限定されないことが理解されよう。更に、推移はその場で生成され得るので、対応するトリガが発生する度に再生される予め設定されたシーンのストックされた場面を利用するのではなく、ゲームのプレイにおいてユーザを訓練する、チャレンジポイント４４の位置をユーザに知らせる、及び派手なスポーツカー等のゲームの特徴を誇示するのに最良のビューをカメラの推移にまとめることができる。
【００２２】
[0030]  この例では地点Ａから開始し、予期において、今度のブレーキコマンドのタイミングを判断するために、次に来るチャレンジポイント４４及び車両の一部の両方を見るのに適した視点に向けて仮想カメラ２０がゾーンＺ２内で移動し得る。Ｂにおいて、例えば道５０の曲率、周囲の風景、又は別の車両５２を理由に仮想カメラ２０がゾーンＺ６に切り替わり得る。ここではこの例のユーザが「完璧なブレーキ」を達成しており、従って本物の車両のブレーキの効果を模擬するためにカメラ２０がＢからＣまで車両４８上で引き付けられる。Ｃにおいて、カメラを車両４８に対して下方に向け、上方向に移動させてカーブを曲がっている車両４８の頂点ビューを与えることができる。Ｃの後、カメラ２０は位置をずらし、前方の向きを維持しながら、従って本物の車両を加速する効果を模擬しながらゾーンＺ３内のＤに向けて車両から離れることができる。Ｄにおいて、ペイオフのために、カメラ２０がゾーンＺ１３からの車両４８の正面ビューに切り替わることができ、カメラはＥにおいて横からの撮影に向きを同時に調節しながらゾーンＺ１０、Ｚ１１、及びＺ７を滑らかに移動する。Ｅから、車両がカメラ２０を通過するときの静止ビューを得るために、仮想カメラ２０は道５０を外れて広角撮影に移ることができる。上記で論じたように、ペイオフではヘリコプタ撮影、フィニッシュラインでの大勢のファンのパン、側面の近接ビュー等を含む様々なビューを使用して映画の推移を作成することができる。ペイオフが終わると、予期に備えて新たな推移が始まり得る。
【００２３】
[0031]  図７は、仮想カメラ配置方法７００の流れ図を示す。方法７００についての以下の説明は、上記で説明し図１に示す仮想カメラ配置システムに関して行う。方法７００は、他の適切なコンポーネントを使用して他の脈絡で実行できることも理解されよう。
【００２４】
[0032]  図７に関して、７０２で、方法７００はユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成することを含み得る。シミュレーションは、レースゲーム等のビデオゲームとすることができる。レースゲームでは、複数のチャレンジポイントは道のカーブとすることができ、又は障害物、穴、方向若しくは高度の変化等であり得る。或いは、モデリングされた作業を表示すること又は或る環境を仮想的に見て回ること等、シミュレーションはゲーム又は娯楽以外を目的としてもよい。
【００２５】
[0033]  ７０４で、方法７００はユーザ入力を受け付けることを含み得る。７０６で、方法７００はユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートすることを含み得る。一部の事例では、マウスをクリックすること、タッチスクリーンをタップ／ホールドすること、又はキーを押すこと等、ユーザ入力は解除され再入力される単一入力に限定され得る。この構成によって単一入力が速度を制御することができ、７１２で、方法７００は少なくともシミュレーションの速度及び道に基づいて人工知能（ＡＩ）ロジックによってハンドル操作を制御することを含み得る。上記で論じたように、ＡＩロジックは入力及び現在の状態を予め設定された閾値と比較し、可能な手順をランク付けし、最も高いランクの又は高くランク付けされたアクションを選択し、将来のランク付けを微調整するためにフィードバックを組み込むことを含み得る。
【００２６】
[0034]  ７０８で、方法７００は、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御することを含み得る。複数のカメラステージは、例えば次に来るチャレンジポイントの広いビューを与える第１のステージ（例えば上記で論じた予期）、チャレンジポイントとの対話の近接ビューを与える第２のステージ（例えば上記で論じた対話）、及び対話の結果の映画ビューを与える第３のステージ（例えば上記で論じたペイオフ）を含む第１のカメラの推移を含むことができる。第３のステージは、例えば第２のステージの一部の映画リプレイを更に含み得る。第１のカメラの推移はステージごとに単一の又は複数のビューを含むことができ、シミュレーションのチャレンジポイント以外の地点において他の適切なカメラの推移を利用することができる。
【００２７】
[0035]  一例では、各チャレンジポイントがブレーキ段階、旋回段階、及び加速段階を含む。この例では、７１４で、方法７００は少なくとも１つの段階における成功度を決定することでチャレンジポイントの結果を決定することを含み得る。成功度は、例えば実際に受け付けたユーザ入力に対する、ユーザ入力を受け付けるべき時点又は距離等の予め設定された成功の定義の比較であり得る。上記で論じたように、一例はブレーキのタイミングの評価及びアクセルのタイミングの評価を含む。但し、成功度は１つの、一部の、又は全ての段階において決定され得る。
【００２８】
[0036]  最後に７１０で、方法７００は、仮想カメラによって捕捉された画像を例えばビデオ出力として表示装置上で表示することを含み得る。シミュレーション又はゲームが続く限り方法７００は反復的プロセスであり得ることが理解され、シミュレーション又はゲームではシミュレーションをナビゲートするためにユーザ入力が受け付けられ、様々なカメラステージにおいて仮想カメラが異なるように制御され、画像／ビデオが表示され、シミュレーションを生成し、移動可能なオブジェクトを制御し、仮想カメラを制御する役割を担うＡＩロジックは履歴から又はサーバ経由で外部ソースから学習することができる。
【００２９】
[0037]  上記で説明したように、予期、対話、及びペイオフは、本明細書に記載のシステムの異なるカメラステージ又はカメラモードのための３つの用語である。これらのモードのそれぞれにおいて、典型的には最小限のユーザ入力及びユーザによる動作に応答し、ユーザが環境をナビゲートするときそれぞれのモードの目標を実現するように設計される異なるプログラミングロジックに従ってカメラがプログラムで移動させられる。予期モードの目標は、ゲーム内の次に来るチャレンジに備えるのに十分なビューをユーザに与えることである。連続したプレイにわたり、カメラが予期モードに従って振る舞い始めるときユーザは次に来るチャレンジを予期しそれに備えるよう条件付けされる。対話モードの目標は、運転されている車両とのユーザの対話の十分近いビューをユーザに与えて、チャレンジを成功裏にナビゲートするためにユーザ入力を適切に行ったかどうかに関する直接フィードバック、又はかかるユーザ入力を適切に行っていない場合はユーザの入力がどのようにチャレンジの最適ではないナビゲーションを招くのかに関する直接フィードバックをユーザが得ることを可能にすることである。最後にペイオフモードは、他の車両、障害物、ファン等との対話を含むチャレンジ全体を明らかにして見るのに最適なカメラアングルからチャレンジの自分のナビゲーションを再び見る時間をユーザに与える。従って、新規ユーザ及び関心の低いユーザにとっての能力の障壁を取り除くために難易度及び複雑度の両方を下げても、これらのモードが一緒になってエクスペリエンスへのリズムを確立し、ユーザが環境内の連続したチャレンジに準備し、かかるチャレンジを実行し、再現することを可能にし、シミュレーションにおけるユーザの関心を保つ。
【００３０】
[0038]  一部の実施形態では、本明細書に記載の方法及びプロセスは１つ又は複数の計算装置の計算システムに結び付けることができる。具体的には、かかる方法及びプロセスはコンピュータアプリケーションプログラム又はサービス、アプリケーションプログラミングインタフェース（ＡＰＩ）、ライブラリ、及び／又は他のコンピュータプログラム製品として実装することができる。
【００３１】
[0039]  図８は、上記の方法及びプロセスの１つ又は複数を遂行することができる計算システム８００の非限定的な実施形態を概略的に示す。計算システム８００は単純化した形で示してある。計算システム８００は、上記で説明し図１に示す仮想カメラ配置システム１０を実装することができる。計算システム８００は、１つ又は複数のパーソナルコンピュータ、サーバコンピュータ、タブレットコンピュータ、家庭用娯楽コンピュータ、ネットワーク計算装置、ゲーム機、モバイル計算装置、モバイル通信装置（例えばスマートフォン）、及び／又は他の計算装置、並びにスマートウォッチ及び頭部装着型拡張現実装置等のウェアラブルデバイスの形を取り得る。
【００３２】
[0040]  計算システム８００は、論理プロセッサ８０２、揮発性メモリ８０４、及び不揮発性記憶装置８０６を含む。計算システム８００は、ディスプレイサブシステム８０８、入力サブシステム８１０、通信サブシステム８１２、及び／又は図８に不図示の他のコンポーネントを任意選択的に含み得る。
【００３３】
[0041]  論理プロセッサ８０２は、命令を実行するように構成される１つ又は複数の物理装置を含む。例えば論理プロセッサは、１つ又は複数のアプリケーション、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、又は他の論理構造の一部である命令を実行するように構成され得る。かかる命令は、タスクを実行するために、データ型を実装するために、１つ又は複数のコンポーネントの状態を変えるために、技術的効果を実現するために、或いは所望の結果に到達するために実装され得る。
【００３４】
[0042]  論理プロセッサは、ソフトウェア命令を実行するように構成される１つ又は複数の物理プロセッサ（ハードウェア）を含み得る。加えて又は或いは、論理プロセッサはハードウェアによって実装されるロジック又はファームウェア命令を実行するように構成される１つ又は複数のハードウェア論理回路又はファームウェア装置を含むことができる。論理プロセッサ８０２のプロセッサはシングルコア又はマルチコアとすることができ、そこで実行される命令は逐次処理、並列処理、及び／又は分散処理に関して構成され得る。論理プロセッサの個々のコンポーネントは、離れて位置し及び／又は協調処理について構成され得る２つ以上の別個の装置間に任意選択的に分散され得る。論理プロセッサの側面は仮想化し、クラウドコンピューティング構成内で構成される遠隔アクセス可能なネットワーク化された計算装置によって実行され得る。
【００３５】
[0043]  不揮発性記憶装置８０６は、本明細書に記載の方法及びプロセスを実施するために論理プロセッサによって実行可能な命令を保持するように構成される１つ又は複数の物理装置を含む。かかる方法及びプロセスが実施されるとき、例えば様々なデータを保持するように不揮発性記憶装置８０６の状態を変えることができる。
【００３６】
[0044]  不揮発性記憶装置８０６は、脱着可能な及び／又は組み込み型の物理装置を含み得る。不揮発性記憶装置８０６は、光学メモリ（例えばＣＤ、ＤＶＤ、ＨＤ−ＤＶＤ、Blu-Rayディスク等）、半導体メモリ（例えばＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＦＬＡＳＨメモリ等）、及び／又は磁気メモリ（例えばハードディスクドライブ、フロッピディスクドライブ、テープドライブ、ＭＲＡＭ等）、又は他の大容量記憶装置技術を含み得る。不揮発性記憶装置８０６は、不揮発性、動的、静的、リード／ライト、読み取り専用、逐次アクセス、位置アドレス指定可能、ファイルアドレス指定可能、及び／又はコンテンツアドレス指定可能な装置を含み得る。不揮発性記憶装置８０６は、不揮発性記憶装置８０６への電力が切られているときでも命令を保持するように構成されることが理解されよう。
【００３７】
[0045]  揮発性メモリ８０４はランダムアクセスメモリを含む物理装置を含み得る。揮発性メモリ８０４は、典型的にはソフトウェア命令の処理中に情報を一時的に記憶するために論理プロセッサ８０２によって利用される。揮発性メモリ８０４は、典型的には揮発性メモリ８０４への電力が切られているとき命令を記憶し続けないことが理解されよう。
【００３８】
[0046]  論理プロセッサ８０２、揮発性メモリ８０４、及び不揮発性記憶装置８０６の側面は、１つ又は複数のハードウェア論理コンポーネントへと統合することができる。かかるハードウェア論理コンポーネントは、例えば書換可能ゲートアレイ（ＦＰＧＡ）、プログラム固有集積回路及び特定用途向け集積回路（ＰＡＳＩＣ／ＡＳＩＣ）、プログラム固有標準製品及び特定用途向け標準製品（ＰＳＳＰ／ＡＳＳＰ）、システムオンチップ（ＳＯＣ）、及び複合プログラム可能論理装置（ＣＰＬＤ）を含み得る。
【００３９】
[0047]  「命令」という用語は、典型的には揮発性メモリの一部を使用して特定の機能を実行するためにプロセッサによってソフトウェア内で実装される計算システム８００の側面を表すために使用する場合があり、その機能はその機能を実行するようにプロセッサを特別に構成する変形処理を含む。従って、命令は揮発性メモリ８０４の一部を使用して不揮発性記憶装置８０６によって保持される命令を実行する論理プロセッサ８０２によってインスタンス化され得る。同じアプリケーション、サービス、コードブロック、オブジェクト、ライブラリ、ルーチン、ＡＰＩ、機能等から異なる命令がインスタンス化され得ることが理解されよう。同様に、異なるアプリケーション、サービス、コードブロック、オブジェクト、ルーチン、ＡＰＩ、機能等によって命令がインスタンス化されてもよい。「命令」という用語は、実行可能ファイル、データファイル、ライブラリ、ドライバ、スクリプト、データベースレコード等のそれぞれ又はグループを包含し得る。
【００４０】
[0048]  含まれる場合、ディスプレイサブシステム８０８は不揮発性記憶装置８０６によって保持されるデータの可視表現を提示するために使用され得る。この可視表現はグラフィカルユーザインタフェース（ＧＵＩ）の形を取り得る。本明細書に記載の方法及びプロセスは不揮発性記憶装置によって保持されるデータを変更し、従って不揮発性記憶装置の状態を変えるので、基礎を成すデータの変化を視覚的に表すようにディスプレイサブシステム８０８の状態も同様に変えることができる。ディスプレイサブシステム８０８は、事実上あらゆる種類の技術を利用する１つ又は複数の表示装置を含み得る。かかる表示装置は、共用エンクロージャ内で論理プロセッサ８０２、揮発性メモリ８０４、及び／又は不揮発性記憶装置８０６と組み合わせることができ、又は周辺表示装置とすることができる。
【００４１】
[0049]  含まれる場合、入力サブシステム８１０はキーボード、マウス、タッチスクリーン、又はゲームコントローラ等の１つ又は複数のユーザ入力装置を含む、又はそれらとインタフェースすることができる。一部の実施形態では、入力サブシステムが選択されたナチュラルユーザ入力（ＮＵＩ）コンポーネントを含む、又はかかるＮＵＩコンポーネントとインタフェースすることができる。かかるコンポーネントは統合されたものでも周辺装置でもよく、入力アクションの変換及び／又は処理はオンボード又はオフボードで処理することができる。ＮＵＩコンポーネントの例は、会話及び／又は音声認識用のマイクロフォン、マシンビジョン及び／又はジェスチャ認識用の赤外線、カラー、立体、及び／又はデプスカメラ、運動検出及び／又は意図認識用のヘッドトラッカ、アイトラッカ、加速度計、及び／又はジャイロスコープ、並びに脳活動を評価するための電場感知コンポーネント、及び／又は他の任意の適切なセンサを含み得る。
【００４２】
[0050]  含まれる場合、通信サブシステム８１２は本明細書に記載の様々な計算装置を互いに、及び他の装置と通信可能に結合するように構成され得る。通信サブシステム８１２は、１つ又は複数の異なる通信プロトコルに適合する有線及び／又は無線通信装置を含み得る。非限定的な例として、HDMI over Wi-Fi接続等、通信サブシステムは無線電話網又は有線若しくは無線のローカルネットワーク若しくは広域ネットワークによる通信のために構成され得る。一部の実施形態では、通信サブシステムは、計算システム８００がインターネット等のネットワークを介して他の装置との間でメッセージを送受信することを可能にし得る。
【００４３】
[0051]  以下の段落は、本願の特許請求の範囲に対する追加の支援を与える。一態様は、ユーザ入力を受け付けるように構成されるユーザ入力装置と、仮想カメラによって捕捉される画像を表示するように構成される表示装置と、命令を記憶するように構成される不揮発性メモリと、命令を実行してユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成し、ユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートし、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御するように構成されるプロセッサとを含む、仮想カメラ配置システムを提供する。加えて又は或いはこの態様では、複数のカメラステージが、次に来るチャレンジポイントの広いビューを与える第１のステージ、チャレンジポイントとの対話の近接ビューを与える第２のステージ、及び対話の結果の映画ビューを与える第３のステージを含む第１のカメラの推移を含むことができる。加えて又は或いはこの態様では、第３のステージが第２のステージの一部の映画リプレイを更に含み得る。加えて又は或いはこの態様では、シミュレーションのナビゲーションはユーザを表すオブジェクトによって印付けすることができ、ユーザのオブジェクトが別のユーザのオブジェクト又はコンピュータ制御オブジェクトを追い越すことを結果が含む場合、第３のステージはその追い越しを目立たせるビューを更に含み得る。加えて又は或いはこの態様では、ユーザ入力が解除され再入力される単一入力に限定され得る。加えて又は或いはこの態様では、単一入力が速度を制御することができ、命令が少なくともシミュレーションの速度及び道に基づいてハンドル操作を制御するためにプロセッサによって実行可能な人工知能（ＡＩ）ロジックを含み得る。加えて又は或いはこの態様では、シミュレーションがビデオゲームであり得る。加えて又は或いはこの態様では、ビデオゲームがレースゲームであり得る。加えて又は或いはこの態様では、複数のチャレンジポイントが道中のカーブであり得る。加えて又は或いはこの態様では、各チャレンジポイントがブレーキ段階、旋回段階、及び加速段階を含むことができ、チャレンジポイントの結果は少なくとも１つの段階における成功度によって決定され得る。
【００４４】
[0052]  別の態様は、仮想カメラ配置方法を提供する。この方法は、ユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成すること、ユーザ入力を受け付けること、ユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートすること、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御すること、及び仮想カメラによって捕捉される画像を表示することを含み得る。加えて又は或いはこの態様では、複数のカメラステージが、次に来るチャレンジポイントの広いビューを与える第１のステージ、チャレンジポイントとの対話の近接ビューを与える第２のステージ、及び対話の結果の映画ビューを与える第３のステージを含む第１のカメラの推移を含むことができる。加えて又は或いはこの態様では、第３のステージが第２のステージの一部の映画リプレイを更に含み得る。加えて又は或いはこの態様では、ユーザ入力が解除され再入力される単一入力に限定され得る。加えて又は或いはこの態様では、単一入力が速度を制御することができ、この方法は少なくともシミュレーションの速度及び道に基づいてハンドル操作を人工知能（ＡＩ）ロジックによって制御することを更に含み得る。加えて又は或いはこの態様では、シミュレーションがビデオゲームであり得る。加えて又は或いはこの態様では、ビデオゲームがレースゲームであり得る。加えて又は或いはこの態様では、複数のチャレンジポイントが道中のカーブであり得る。加えて又は或いはこの態様では、各チャレンジポイントがブレーキ段階、旋回段階、及び加速段階を含むことができ、この方法は少なくとも１つの段階における成功度を決定することでチャレンジポイントの結果を決定することを更に含み得る。
【００４５】
[0053]  別の態様は、レースビデオゲーム用の仮想カメラ配置システムを提供する。このシステムは、ユーザ入力として解除され再入力される単一入力を受け付けるように構成されるユーザ入力装置と、仮想カメラによって捕捉される画像を表示するように構成される表示装置と、命令を記憶するように構成される不揮発性メモリと、命令を実行してユーザ向けの複数のチャレンジポイントを含む三次元シミュレーションを生成し、ユーザ入力に応答してチャレンジポイントを含むシミュレーションをナビゲートし、チャレンジポイントの１つ又は複数をナビゲートした少なくともユーザ入力及び結果に基づいて複数のカメラステージにおいてシミュレーション内の仮想カメラを異なるように制御するように構成されるプロセッサとを含み得る。複数のカメラステージは、次に来るチャレンジポイントの広いビューを与える第１のステージ、チャレンジポイントとの対話の近接ビューを与える第２のステージ、及び対話の結果の映画ビューを与える第３のステージを含む第１のカメラの推移を含むことができる。
【００４６】
[0054]  本明細書に記載の構成及び／又は手法は本質的に例示であり、数多くの改変形態があり得るので、これらの特定の実施形態又は例は限定的な意味で検討すべきではないことが理解されよう。本明細書に記載した特定のルーチン又は方法は任意の数の処理戦略のうちの１つ又は複数を表し得る。そのため、図示し及び／又は説明した様々な行為を図示し及び／又は説明した順序で実行することができ、他の順序で実行することができ、同時に実行することができ、又は省略することができる。同様に、上記のプロセスの順序は変更することができる。
【００４７】
[0055]  本開示の内容は、本明細書で開示した様々なプロセス、システム、及び構成、並びに他の特徴、機能、行為、及び／又は特性のあらゆる新規の及び非自明の組み合わせ及びサブコンビネーション、並びにその任意の及び全ての等価物を含む。
【図１】
2021524076.tif 000003
【図２】
2021524076.tif 000004
【図３】
2021524076.tif 000005
【図４】
2021524076.tif 000006
【図５】
2021524076.tif 000007
【図６】
2021524076.tif 000008
【図７】
2021524076.tif 000009
【図８】
2021524076.tif 000010
【図９】
2021524076.tif 000011
【国際調査報告】
2021524076.tif 000012
2021524076.tif 000013