JP2012033038A - 模擬映像生成装置、方法、プログラム - Google Patents

模擬映像生成装置、方法、プログラム Download PDF

Info

Publication number
JP2012033038A
JP2012033038A JP2010172630A JP2010172630A JP2012033038A JP 2012033038 A JP2012033038 A JP 2012033038A JP 2010172630 A JP2010172630 A JP 2010172630A JP 2010172630 A JP2010172630 A JP 2010172630A JP 2012033038 A JP2012033038 A JP 2012033038A
Authority
JP
Japan
Prior art keywords
video
visual field
field
displayed
unit
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.)
Granted
Application number
JP2010172630A
Other languages
English (en)
Other versions
JP5652037B2 (ja
Inventor
Ryosuke Miyata
亮介 宮田
Takushi Fujita
卓志 藤田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010172630A priority Critical patent/JP5652037B2/ja
Publication of JP2012033038A publication Critical patent/JP2012033038A/ja
Application granted granted Critical
Publication of JP5652037B2 publication Critical patent/JP5652037B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

【課題】シミュレーション映像の遅延による違和感を低減させる。
【解決手段】模擬映像生成装置10は、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部5と、前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出部1と、描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成部2と、映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正部3とを備える。
【選択図】図1

Description

本発明は、ユーザ操作入力に応じて仮想空間の映像を表示するシミュレーション技術に関する。
近年、コンピュータグラフィクスにより作り出された仮想世界を、ユーザがリアルタイムでウォークスルー、ドライブスルー、あるいはフライスルーすることのできる、リアルタイム映像シミュレーションの技術が開発されている。
このようなリアルタイム映像シミュレーションにおいては、より映像のリアリティや臨場感を高めるために、より詳細に作り込まれた複雑なシーンを表現したいというニーズがある。例えば、3Dゲームにおいては、より緻密にモデリングされた世界を表現することが望まれる。しかし、仮想世界をコンピュータグラフィクスにより描画するための描画用計算機には性能の限界がある。その限界を超えた複雑さを持つシーンを描画しようとすると、映像の一つのフレームを描画するのにかかる時間が増大し、フレームレート(単位時間あたりの描画フレーム数)が低下して映像の動きの滑らかさが失われる。それと同時に、操作入力に対して映像が遅延することにより、仮想世界内を移動するユーザの感覚に大きな違和感が生じる。
従来は、この違和感を防ぐために、描画用計算機が十分なフレームレートを維持できる限界を超えないように、データ削減作業を行ってシーンを単純化していた。つまり、単体の描画用計算機の性能の限界を超える複雑なシーンをそのまま描画することはできなかった。3Dゲームであれば、単体のゲーム機の描画性能の限界が仮想世界の表現の限界を決めていた。そのため、描画における時間遅れを改善するために、時間遅れによって生じる位置的な誤差を、画像を平行移動させて補正する方法が提案されている(例えば、特許文献1参照)。
特開平5−324799号公報
しかしながら、上記従来の方法で画像を平行移動させると、移動後に未描画領域が発生する場合がある。時間遅れによる描画領域の誤差が大きい程、この未描画領域も大きくなる。これにより、新たに違和感が生じかねない。
本発明は、上記課題を鑑みてなされたものであり、シミュレーション映像の遅延による違和感を低減させることが目的とする。
本願開示の模擬映像生成装置は、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出部と、前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成部と、前記映像の生成開始後に計算された新たな表示すべき視野とを用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正部とを備える。
本願明細書の開示によれば、シミュレーション映像の遅延による違和感を低減させることができる。
第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の一例を示す機能ブロック図である。 第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の変形例を示す機能ブロック図である。 第2の実施形態におけるシミュレーションシステムの構成例を示す機能ブロック図である。 図4Aは、時刻t=TNおよび時刻t=TN-nにおける仮想世界の車の位置および視野の一例を示す図である。 図4Bは、時刻t=TNにおける表示すべき視野の映像、および時刻t=TN-nにいて補正された映像の一例を示す図である。 図5Aは、時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。 図5Bは、時刻TN-nにおける視線方向ベクトルと平行移動された映像の関係、および平行移動された映像の一例を示す図である。 図6Aは、映像を球面への投影として捉えて処理する場合の、視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。 図6Bは、映像を球面への投影として捉えて処理する場合の、視線方向ベクトルおよび視野と移動後の映像の関係、および移動後の映像の一例を示す図である。 図7Aは、映像生成の時点における視野をそのまま描画し、補正した場合の補正前後の映像例を示す図である。 図7Bは、映像生成の時点における視野より広い描画すべき視野を計算し、補正した場合の補正前後の映像例を示す図である。 図8は、仮想世界の複数のオブジェクトが分けて描画された後に合成される映像の例を示す図である。 図3に示すシミュレーションシステムの動作例を示す処理フロー図である。
以下、本発明の実施形態について図面を参照して具体的に説明する。
(第1の実施形態)
[シミュレーション装置の構成例]
図1は、第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の一例を示す機能ブロック図である。図1に示すシミュレーション装置10は、ユーザからの操作入力または時間経過に応じて、仮想世界(仮想空間)を表すデータを更新し、仮想世界の映像をコンピュータグラフィックスにより生成して表示する装置である。シミュレーション装置10は、仮想世界における物体の位置、形状等の仮想世界を表すデータと、ユーザの視点(カメラ)の位置、向き、画角等の視野を表すデータを用いて、コンピュータにより表示すべき仮想世界の映像を自動的に生成する機能を有する。なお、シミュレーションの対象や用途は特定のものに限定されない。
シミュレーション装置10は、描画視野算出部1、映像生成部2、映像補正部3、表示部4、シミュレーション部5および入力部6を備える。シミュレーション部5は、入力部6を介して受け付けたユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算する。
ここで、表示すべき視野は、仮想世界におけるユーザまたはカメラの視野を特定するデータであり、表示すべき視野に含まれる仮想世界の映像がシミュレーション装置10により出力されることになる。表示すべき視野は、例えば、視点の位置、向き、画角および投影パラメータ等を含む。投影パラメータには、例えば、仮想空間の物体や背景等を投影する面を規定するパラメータが含まれる。
仮想世界を表すデータは、例えば、仮想世界における物体や平面等のオブジェクトの形状データ(例えば、ポリゴンデータ)と位置、姿勢、色、テクスチャなどの属性データの集合とすることができる。
例えば、ユーザが操作可能なハンドルやペダルを含む入力装置から入力部6を介して操作入力を受け付け、ユーザが仮想世界の車を運転するシミュレーションを実現する場合は、シミュレーション部5は、車の制御系や駆動系のデータを操作に応じて更新するシミュレーションを行って、仮想のドライバの視野を表示すべき視野として計算する。
あるいは、ユーザ頭部の位置姿勢を測定するセンサの測定結果を、入力部6を介して受け付けて、仮想世界内での首振りを実現する場合であれば、シミュレーション部5は、実世界におけるユーザ頭部の位置姿勢の測定結果を、仮想世界の人物の頭部の動きに対応付ける計算を行い、仮想の人物の視野を表示すべき視野として求めることができる。
なお、シミュ−ション部5は、ユーザからの操作入力を受け付けることなく、所定の周期で仮想世界のデータを自動的に更新してシミュレーションを実行することもできる。あるいは、他のシミュレーション装置の計算結果を、入力部6を介して受け付けてもよい。
描画視野算出部1は、前記表示すべき視野より広い視野である、描画すべき視野を計算する。描画すべき視野は、映像生成部2が生成する映像の視野を表すデータである。すなわち、描画視野算出部1は、シミュレーション部5が更新した表示すべき視野を基に、映像生成部2が生成する映像の視野を計算する。描画すべき視野も、表示すべき視野と同様に、例えば、視点の位置、向き、画角および投影パラメータ等を含むことができる。
ここで計算される描画すべき視野は、映像生成部2において、この描画すべき視野の映像生成が開始された後の時点で更新される表示すべき視野が含まれうる範囲の視野であることが好ましい。そのため、描画視野算出部1は、例えば、映像生成時点の表示すべき視野よりも広い範囲の視野を描画すべき視野として計算することができる。この場合、描画視野算出部1は、例えば、描画すべき視野を、表示すべき視野に対して、どの方向にどの程度拡張するかを、過去に計算された表示すべき視野の履歴データや、映像生成にかかる時間等を基に、計算することができる。このように、描画視野算出部1が、前記表示すべき視野より広い視野である描画すべき視野を計算し、この描画すべき視野の映像を生成することにより、後述する生成後の映像補正において、映像の遅延による違和感を低減することが可能になる。
描画視野算出部1は、一例として、シミュレーション部5によって計算された表示すべき視野の履歴に基づいて、映像の生成開始後に表示すべき視野となりうる範囲を計算し、当該範囲を含む視野を前記描画すべき視野とすることができる。このように、表示すべき視野の履歴に基づいて、映像生成開始後の表示すべき視野を正確に予測し、適切な描画すべき視野を求めることができる。
また、この構成に加えてまたは換えて、描画視野算出部1は、映像生成部2による映像の生成開始から映像の補正開始までにかかる時間の予測値を、映像の生成にかかった時間の履歴を用いて計算し、当該予測値に応じて、描画すべき視野の範囲を調整することもできる。これにより、映像生成開始後の表示すべき視野をより正確に予測し、より適切な描画すべき視野を求めることができる。
映像生成部2は、描画視野算出部1が算出した描画すべき視野の映像を、仮想世界を表すデータを基に生成する。本実施形態では、映像生成部2が、描画すべき視野を用いて仮想世界の映像を生成する際、映像の生成が開始された時点における表示すべき視野と描画すべき視野は、それぞれ表示視野保持部8と描画視野保持部7によって、生成される映像と関連付けて保持される。また、生成された映像は、映像補正部3へ送られる。この際、例えば、後述するように、映像生成部2と映像補正部3との間において、コーデックによる圧縮伸張やネットワークを経由して、映像が送られる構成であってもよい。
映像補正部3は、前記映像の生成開始後に計算された新たな表示すべき視野とを用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する。表示部4は、映像補正部3によって補正された映像をユーザに対して提示する。
一例として、映像補正部3は、映像生成部2から生成された映像を入力し、その入力タイミングにおける表示すべき視野(第一の視野とする)をシミュレーション部5から受け取る。この第一の視野は、映像生成部2による映像の生成開始後にシミュレーション部5で計算された新たな表示すべき視野の一例である。映像補正部3は、さらに、入力した映像に関連付けられた表示すべき視野(第二の視野とする)と描画すべき視野(第三の視野とする)をそれぞれ表示視野保持部8と描画視野保持部7から読み出す。そして、これら三つの視野を用いて入力された映像の補正を行う。
第一の視野はこれから表示するべき視野である。第二、第三の視野は、映像生成開始時の視野であるから、映像の生成およびその他の必要な処理(例えば、通信、コーデック等)にかかった時間分だけ古い視野となる。映像補正部3は、これら古い視野(第二と第三の視野)の映像を補正することにより、これから表示するべき視野(第一の視野)についての近似映像を生成する。この補正は、例えば、映像の二次元的な平行移動、拡大縮小、回転などによって行うことができるが、これらに限定されるものではない。
映像補正部3は、例えば、第三の視野(描画すべき視野)の映像のうち、この映像の生成開始後に計算された新たな第一の視野(新たな表示すべき視野)に対応する領域が表示映像となるように補正をすることができる。これにより、映像生成が視野の変化に対して遅延しても、視野の変化の対応するよう映像を補正することができる。また、第三の視野は第二の視野より広いので、第一の視野から見える範囲が第二の視野の範囲から逸脱する可能性が低くなり、補正によりさらなる違和感が発生するのが抑えられる。
より具体的には、映像補正部3は、第二の視野から第一の視野への変化の量および方向に応じて、生成された映像の表示位置を移動させる補正を実行することもできる。このように表示位置を移動させる補正により、簡単な処理で高速に補正をすることが可能になる。
なお、第二の視野から第一の視野へ視野が変化すると、第一の視野から見える範囲が第二の視野の範囲から逸脱する。このように、第一の視野から見える範囲が第二の視野の範囲から逸脱している場合、第二の視野を描画した映像を補正すると未描画部分が発生する。そこで、本実施形態では、第二の視野を第一の視野の範囲が含まれるように調整した第三の視野(描画すべき視野)を描画視野算出部1において求め、映像生成部2では第三の視野の映像を生成する構成となっている。
なお、第三の視野を求めるタイミングから見ると第一の視野は将来のものであるため、確実に第一の視野が含まれるように第三の視野を決定することは難しい。また、映像生成の負荷を抑える観点からは、第三の視野は極力狭くすることが望ましい。そこで、シミュレーション10が応用されるシミュレーションシステムの傾向などに基づいて、第二の視野を基準に第三の視野を算出する方法をあらかじめ決めておくことができる。例えば、ドライビングシミュレータのように視野が上下方向に動くことが少ないシステムにおいては、第二の視野の画角を主に横方向に拡張して第三の視野を求めるように決めておくことができる。さらに、視野の横方向の動きの最大値を見積もることにより、必要な横方向画角の拡張量も決めておくことができる。なお、第三の視野の、第二の視野に対する拡張方向および拡張量を、ユーザからの入力に基づいて更新することが可能な構成にすることもできる。
また、第二の視野と第三の視野の関係を固定にした場合、実際に視野が動いた方向以外については描画が無駄になる可能性が高い。そこで、描画視野算出部1は、表示すべき視野(第一の視野または第二の視野)の履歴から、映像補正時点における表示すべき視野(第一の視野)を予測し、予測した視野を含むように第三の視野を求めることで、描画の無駄を抑えることができる。例えば、上記の視野の横方向の動きの最大値は、第一の視野の履歴および/または映像生成部2による映像生成時間の履歴を基に見積もることができる。
[シミュレーション装置の変形例]
図2は、第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の変形例を示す機能ブロック図である。図2において、図1と同じ機能ブロックには同じ番号を付している。図2に示すシミュレーション装置10aは、図1のシミュレーション装置10の構成に加えて、第二の映像生成部11と、合成部9をさらに備える。映像生成部11は、第一の映像生成部2による映像の生成開始後にシミュレーション部5で計算された新たな表示すべき視野を基に、当該新たな表示すべき視野における仮想世界の一部の映像を生成する。合成部9は、映像補正3により補正された映像と、第二の映像生成部11により生成された映像とを合成する。表示部4は、合成部9で合成された映像を出力する。
この構成により、仮想世界の映像を、補正を行う部分と行わない部分を分けて描画し、一方を補正した後に合成を行うことができる。そのため、仮想世界におけるユーザの視野(カメラ)の動きに対する変化度合いが異なる部分を含む映像に対して、変化度合いの高い部分のみ補正して、時間遅れによる違和感を低減することができる。
例えば、ドライビングシミュレータにおける自車の車体の映像は、カメラ(ドライバ視野)に対して外界の映像とは異なる動きをする。このように視野に対して異なる動きをする部分がある場合には、補正によって外界と一緒に車体の映像を補正により動かしてしまうと却って違和感が増すことがある。そのため、このような場合は、外界の部分の映像は、第一の映像生成部2で生成して、生成された映像を、映像補正部3が、映像生成後の表示すべき視野に対応するように補正することができる。そして、車体の部分の映像は、映像生成後の表示すべき視野に対応するように、第二の映像生成部11が生成することができる。
具体的には、シミュレーション部5は、上記図1の場合と同様に、入力部6で受けたユーザからの操作入力に応じて、仮想世界のデータを更新する。その結果、仮想世界内部における表示すべき視野の情報(例えば、位置、向き、画角、投影パラメータ等)も更新される。描画視野算出部1は、上記図1の場合と同様に、表示すべき視野を基に、第一の映像生成部2で描画すべき視野を計算する。
第一の映像生成部2は、入力された描画すべき視野を用いて仮想世界のあらかじめ選択された一部の対象の映像を生成する。例えば、第一の映像生成部2は、メモリ等に予め記録された、対象とするオブジェクトを示すデータを参照し、映像を生成する対象の仮想世界におけるオブジェクトを選択することができる。生成された映像は、映像補正部3に送られる。
第一の映像生成部2が映像の生成を開始した時点における表示すべき視野と描画すべき視野は、それぞれ表示視野保持部8と描画視野保持部7によって、生成される映像と関連付けて保持される。
映像補正部3は第一の映像生成部2によって生成された映像を入力し、そのタイミングにおける表示すべき視野をシミュレーション部5から入力し、入力した映像に関連付けられた表示すべき視野と描画すべき視野をそれぞれ表示視野保持部8と描画視野保持部7から読み出す。そして、これら三つの視野を用いて入力された映像の補正を行い、補正した映像を合成部9に送る。補正は、上記図1の場合と同様にすることができる。
第二の映像生成部11は、表示すべき視野に応じて仮想世界のあらかじめ選択された一部の対象(補正の対象としないもの)の映像を生成し、合成部9に送る。この仮想世界において補正の対象としないものを特定するデータも、予めメモリ等に記録しておくことができる。第二の映像生成部11は、予め記録されたデータを参照して、仮想世界における映像を生成する対象を特定することができる。
合成部9は、映像補正部3、および第二の映像生成部11からの映像を合成し、表示部4に送る。合成は、例えば、二つの映像をあらかじめ決めておいた順番で重ね合わせることで行うことができる。それぞれの映像において、視野の中の対象が写っていない部分については透明としておいてもよい。
上記のシミュレーション装置10、10aでは、現在の視野と映像生成の開始時点における視野についての情報を用いて、遅延時間分だけ古い映像を補正し、現在の視野についての近似映像を求める構成である。これにより、操作入力に対する映像の応答性を擬似的に向上し、遅れに起因する違和感を低減可能としている。さらに、映像生成時に表示すべき視野より広い描画視野を算出する構成なので、補正された近似映像でさらに違和感が生じることを抑えること可能になる。
シミュレーション装置10、10aは、例えば、パーソナルコンピュータやサーバマシン等の汎用コンピュータに所定のプログラムをインストールすることによって実現することができる。また、汎用コンピュータに限らず、例えば、携帯型ゲーム機端末、車載情報端末、携帯電話、PDA(Personal Digital Assistant)、家電製品等の電子機器に組み込まれたコンピュータによってシミュレーション装置10、10aが形成されてもよい。
また、シミュレーション装置10、10aの持つ機能を複数のコンピュータに分散させることで、複数のコンピュータでシミュレーション装置10、10aを構成することもできる。例えば、ネットワークを介して接続された複数の汎用コンピュータにシミュレーション装置10、10aの機能を分散させてよい。あるいは、バスで接続されたCPUとDSP(Digital Signal Processor)によって、シミュレーション装置10、10aを構成することもできる。
上記の描画視野算出部1、映像生成部2、映像補正部3、表示部4、シミュレーション部5、第一の映像生成部2、第二の映像生成部11、合成部9および入力部6の各機能は、CPUまたはDSP(Digital Signal Processor)等のプロセッサが所定のプログラムを実行することによって実現される。したがって、上記の各機能をコンピュータで実現するためのプログラムまたはそれを記録した記録媒体も本発明の一実施態様である。この記録媒体は、一時的でない(non−transitory)記録媒体であり、信号のように一時的な媒体は含まない。また、描画視野保持部7、表示視野保持部8およびその他必要なデータを記録する手段は、コンピュータの内蔵記憶装置(例えば、ROM、RAM等のメモリ)またはこのコンピュータからアクセス可能な記憶装置によって具現化される。これらのことは、下記第2の実施形態における各機能部についても同様である。
[第2の実施形態]
図3は、第2の実施形態におけるシミュレーションシステムの構成例を示す機能ブロック図である。図3に示すシミュレーションシステムは、サーバ装置の一例であるシミュレータサーバ12(以下、単にサーバ12と称する)およびクライアント装置の一例であるシミュレータクライアント13(以下、単にクライアント13と称する)を含む。サーバ12とクライアント13は、互いに通信可能となっている。この通信は、有線通信のみに限らず、無線通信が含まれていてもよい。
サーバ12は、シミュレーション部5、描画視野算出部1、映像生成部2を備える。シミュレーション部5は、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算する。視野算出部1は、前記表示すべき視野より広い視野である、描画すべき視野を計算する。映像生成部2は、描画すべき視野の映像を、仮想世界を表すデータを基に生成する。これら、シミュレーション部5、描画視野算出部1、映像生成部2の機能は、上記第1の実施形態と同様にすることができる。
サーバ12は、さらに、映像生成部2が生成した映像と、この映像の描画すべき視野の基となった表示すべき視野と、この映像の生成開始後に計算された新たな表示すべき視野とをクライアント13へ送信する送信部として、描画結果送信部18および視野送信部16を備える。
クライアント13は、サーバ12の送信部から送られてきた映像と、この映像の生成開始後に計算された新たな表示すべき視野とを用いて、この映像を、新たな表示すべき視野に対応する映像に補正する映像補正部3を備える。
このように、サーバ12に、シミュレーション部5、映像生成部2、送信部(描画結果送信部18および視野送信部16)を設け、クライアント13に映像補正部3を設ける構成により、シミュレーションの映像生成および通信による遅延を原因とする映像の違和感を低減することができる。その結果、サーバ12による複雑なシーンの描画や、素早いレスポンスを必要とするアプリケーションを、ネットワークを介してクライアント13から利用可能することが可能になる。
図3に示す構成のシミュレーションシステムは、例えば、複数のクライアントから入力をサーバ受け付けてシミュレーション結果をクライアントへ返す業務用のシミュレーション装置や、ネットワークゲームに用いることができる。シミュレーションの用途や対象は特に限定されない。
[シミュレーションの例]
図3に示す例では、クライアント13が、ユーザから操作入力を受け付ける入力部6と、操作入力をサーバ12へ送信する操作入力送信部24を備える。
一例として、クライアント13にはハンドルやペダルなどに接続された入力部6と、ディスプレイ等の表示部4が備えられる。ユーザはディスプレイに表示される映像を見ながら、ハンドルなどの入力装置を操作し、仮想世界の中でドライビングを行うことができる。
クライアント13で入力された入力情報は、例えば、ネットワークを通じて送信され、サーバ12の操作入力受信部14で受信されてシミュレーション部5に送られる。入力情報はデータ量が小さいため、無視できる程度の小さな遅延で送ることができる。
シミュレーション部5は、一例として、仮想世界を構成する道路や車両、街並み等オブジェクトのデータをシミュレーション用データとして保持する。シミュレーション用データは、例えば、サーバ12内蔵メモリまたはアクセス可能なメモリに記録される。シミュレーション部5は、入力情報に基づいて各オブジェクトの挙動についてのシミュレーションを行って、仮想世界を表すシミュレーション用データをリアルタイムに更新する。更新の結果、例えば、仮想世界のオブジェクトの位置・姿勢や属性(色・テクスチャなど)が変更される。シミュレーションは通常、映像生成に比べて軽い処理であり、例えば、数ミリ〜数十ミリ秒周期の高い頻度で実行される。
シミュレーションの結果、仮想世界を表示するのに用いられる視野の情報(例えば、位置、姿勢、画角、投影方法とそのパラメータ)が決定する。例えば、ドライビングシミュレータの場合、視野は通常、仮想の車の運転席に乗っている仮想のドライバの視点に固定されるので、車の位置や姿勢が更新されるとそれに応じて表示すべき視野も更新される。視点(カメラ)は必要に応じて、車の他の場所や他の車、あるいは路上のオブジェクトや建物など、任意の場所に置くことができる。
このようにして、シミュレーション部5が表示すべき視野を更新すると、描画視野算出部1が、表示すべき視野に基づいて映像生成部2で描画すべき視野を算出する。視野送信部16は、シミュレーション部5が表示すべき視野を更新する度に、リアルタイムで更新された表示すべき視野をクライアント13へ送信することが好ましい。これにより、クライアント13の映像補正部3が、古い映像を更新された新たな表示すべき視野に対応させる補正が可能になる。
[並列描画の例]
映像生成部2は、図3に示すように、複数のフレームを並列に描画する複数の描画部を備える構成であってもよい。本実施形態では、一例として、映像生成部2は、並行して描画(映像生成)処理を実行することができる複数の描画部22a、22b、22cと、描画視野算出部1が算出した描画すべき視野を、これらの複数の描画部22a、22b、22cに渡して、描画すべき視野の映像を生成する処理を実行させる並列描画制御部21、複数の描画部22a、22b、22cそれぞれを監視し、それぞれで生成された映像を、表示すべき視野および描画すべき視野とともに受け取る並列描画統合部23とを含む。この構成により、例えば、並列に接続された描画部22a、22b、22cに順番にフレームを割り当てて時間差で並列に描画を行うことができる。いわゆる交互フレーム描画方式で描画することができる。
具体的には、サーバ12の映像生成部2(並列描画部と称することもできる)は、下記のように、描画視野算出部1が求めた描画すべき視野に従って仮想世界の映像を生成する。例えば、映像のフレーム毎に描画部22a、22b、22cのいずれかを割り当てて並列に描画を実行することができる。これにより、高速に映像が生成される。各描画部22a、22b、22cは、メモリの描画データ(例えば、仮想世界を構成するオブジェクトのモデルデータやテクスチャデータ)に、シミュレーション部5から送られる仮想世界の更新情報を加味したものを用いて仮想世界の映像を生成することができる。このように、フレーム単位で描画部を割り当てる場合、単一の描画部で描画を行うのに比べて、単位時間当たりに生成できるフレーム数を描画部の数倍(図3に示す例では3倍)に向上することができる。すなわち、フレームレートは、用意した計算機(描画部)の台数倍にまで向上することができる。
ただし、一つのフレームを描画するのにかかる時間は単一の場合と変わりがない。そのため、フレームレートは向上しても、表示すべき視野の情報が映像生成部2へ入力されてから映像が出力されるまでの遅延は単一の描画部の場合と変わらない。この遅延による影響は、描画視野算出部1およびクライアント13の映像補正部3を含む機能により低減することができる。
並列描画制御部21は、各描画部22a、22b、22cの実行状態を監視する。前のフレームの描画が完了した描画部があれば、シミュレーション部5から仮想世界の更新情報と表示すべき視野とを受け取り、描画視野算出部1から描画すべき視野の情報を受け取ってその描画部に渡し、次の映像の生成を実行させる。これにより、全ての描画部が常に並行して映像の生成を行っている状態になる。各描画部は、受け取った表示すべき視野と描画すべき視野とを、映像生成を行っている間、記憶する。
並列描画統合部23は、各描画部の実行状態を監視し、フレームの描画が完了した描画部があればその描画部から、描画されたフレームの映像と、表示すべき視野および描画すべき視野を受け取る。描画されたフレーム映像は、映像エンコーダ17に渡される。これにより、描画部22a、22b、22cそれぞれによって時間差をもって並列描画されたフレームの映像が順次映像エンコーダ17へ送られる。
なお、上記の映像生成部2においては、描画用計算機として3台の描画部を有しているが、描画用計算機の台数は、求められるピーク性能に合わせて変えることができる。しかし、描画用計算機の台数をピーク性能に合わせると、描画用計算機を含む装置全体が大規模化し、かつ、ピーク性能が不要な場合の無駄が大きくなる傾向にある。そのため、複数の描画用計算機をネットワーク経由で共有利用できる構成にすることができる。例えば、本実施形態のように、複数の描画部で並列処理された映像を外部へ送信し、送信した先で補正をする構成とすることで、並列構成の描画装置による複雑なシーンの描画を必要とするアプリケーションのネットワーク利用が可能になる。また、描画結果の映像をネットワーク経由でクライアントに伝送する際に、さらにコーデックや通信自体における遅延が加算される問題に対しても、本実施形態の構成により対処することができる。
[サーバ−クライアント間の通信]
映像生成部2で描画された映像は映像エンコーダ17に送られて圧縮され圧縮映像となる。圧縮映像は、描画結果送信部18において対応する視野情報(表示すべき視野および描画すべき視野)と関連付けられた上で、クライアント13へネットワークを通じて送信される。
送信された圧縮映像と視野情報はクライアント13の描画結果受信部28によって受信される。映像は映像デコーダ27に送られて伸張される。表示すべき視野と描画すべき視野の視野情報は、映像補正部3へ送られる。映像の圧縮・伸張とネットワーク送信には、例えば、数十〜数百ミリ秒単位の時間を要する。
映像補正部3は、映像を受け取ると、その映像に対応する視野情報、すなわち映像生成開始時の表示すべき視野および描画すべき視野も受け取る。さらにその映像を受けたタイミングにおける新しい表示すべき視野を視野受信部26から受け取る。映像補正部3は、この新しい表示すべき視野を基に、映像の補正を行う。そのタイミング、すなわち映像補正直前時点における表示すべき視野は、シミュレーション部5から視野送信部16、視野受信部26を介して、ネットワーク経由で取得される。この表示すべき視野を示す視野情報はデータ量が小さいため、無視できる程度の小さな遅延で送ることができる。
このように、本実施形態では、サーバ12は、クライアント13へ、生成された映像と、映像生成後に更新される可能性のある表示すべき視野とを、それぞれ独立してリアルタイムに送信する仕組みを備える。これにより、クライアント13において、映像生成後にシミュレーション部5で更新された表示すべき視野を用いて、映像を補正することができる。また、サーバ12において、表示すべき視野より広い描画すべき視野を計算し、描画すべき視野の映像を生成することで、クライアント13における補正で新たに違和感が生じることが抑えられる。次に、クライアント13における映像補正部3の補正処理と、サーバ12における描画すべき視野の計算の具体例について説明する。
[映像補正部3による補正処理の具体例]
例えば、ユーザが素早く右方向に視線を動かすことにより、仮想世界において、表示されるべき視野が素早く右にシフトした場合、表示される映像は即座に左方向に流れなければならない。しかし、映像の生成と伝送による遅延がある場合、映像は、視野の動きに対して少し遅れて左方向に流れる。この遅れが映像に対するユーザの違和感となり、VR(バーチャルリアリティ)酔いなどの原因にもなる。
そこで、映像補正部3は、例えば、以下のように、映像の補正処理を実行することができる。映像補正部3は、描画の完了している少し古い映像に対し、現在分かっている視野の動きに合わせて二次元的に映像を動かすという補正を行うことができる。
ここで、図4Aおよび図4Bを参照して映像の補正例を説明する。図4Aは、時刻t=TNおよび時刻t=TN-nにおける仮想世界の車の位置および視野の一例を示す図である。図4Bは、時刻t=TNにおける表示すべき視野の映像、および時刻t=TN-nにいて補正された映像の一例を示す図である。図4Aに示す例では、線D1と線D2の間が道路であり、道路の脇にはオブジェクトの一例である建物Cがある。車Kは、建物に対して斜め右方向へ進んでいる。車Kの視野は点線で示されており、この視野が表示すべき視野となる。ここでは、映像生成部2が、時刻TN-nにおける表示すべき視野に基づいて映像の生成を開始し、図4Bの上段に示す映像を生成する。その後、映像補正部3が時刻TNにおいて、この映像と、時刻TNにおける表示すべき視野を受け取って、補正を実行する。この例の場合、映像補正部3は、左方向への映像を平行移動する。このように、映像補正部3は、時刻TN-nにおける表示すべき視野から、時刻TNにおける表示すべき視野への視野の変化の量および方向に応じて、映像の表示領域を移動させることができる。このときの映像の移動方向および移動距離の計算例については後述する。
この映像の平行移動により、仮想世界での視線を右へ動かす操作入力に対し、見かけ上映像の遅延が隠蔽されて、映像が即座に応答して左方向へ流れる。そのため、応答性に関する違和感が大きく軽減される。なお、映像を平行移動しただけの補正の場合、映像の内容は本来あるべき映像と若干異なる。しかし、視野の動きが大きい場合には、映像の内容のズレよりも映像全体の動きのズレによる違和感の方が支配的であるため、このように映像を平行移動するだけの補正でも、違和感の低減効果を得ることができる。
映像補正の方法は視線方向の変化に応じた映像の平行移動に限らない。視点のさまざまな動き方に対応して、平行移動、拡大縮小、回転、アフィン変換などを行うこともできる。なお、映像補正によって新たに大きな遅延が発生しては意味がないので、映像の補正はなるべく簡便であることが望ましい。以下に、視野の変化に応じた映像補正の具体例を説明する。
(視野回転に対応する映像補正)
ここで、描画結果受信部28から送られる表示すべき視野(古い視野)に対応する時刻(ここでは、一例として映像生成開始時の時刻)をTN-n、視野受信部26から送られる表示すべき視野(新しい視野)に対応する時刻をTNとする。時刻TNは、映像生成開始後の時刻であり、例えば、ほぼ現在時刻とすることができる。
視野の回転運動に着目すると、時刻TN-nおよび時刻TNにおける視野の視線方向ベクトル(視点から視野の中心へ向かうベクトル)の差を、TN-nにおける視点位置を基準にしたパン(垂直軸周りの左右回転)、ティルト(左右軸(水平軸)周りの上下回転)、ロール(視線方向ベクトル周りの回転)に分解することができる。それぞれの回転角度を、θpan、θtilt、θrollとする。
ここで、視野の横方向(水平方向)の画角をφfovH、映像の幅をWピクセルとし、視線方向ベクトルが水平方向にθpan回転した場合を考える。この場合、視野中心付近にあるオブジェクトは映像の中で、例えば、下記式(1)で表されるピクセル数DHだけ横方向に移動する。
Figure 2012033038
図5Aは、時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。図5Aの上側は、映像の投影面に垂直な面における視線方向と視野の一例を表す図である。図5Aの下側は、時刻TNにおける映像の例を示す。図5Bは、時刻TN-nにおける視線方向ベクトルと平行移動された映像の関係、および平行移動された映像の一例を示す図である。図5Aに示す映像は、視線ベクトルの水平方向の回転によって、図5Bに示すように、視線ベクトルの移動方向と逆方向へ、視線ベクトルの移動量に対応する映像上の長さ(DHピクセル)だけ平行移動される。すなわち、視線ベクトルが垂直軸を中心に時計周りにθpanだけ回転すると、映像の投影面において表示するべき範囲は、線S1で挟まれた範囲から点線S2で挟まれた範囲にずれる。映像補正部3は、このずれにあわせて、映像を平行移動させることができる。
同様に、視野の縦方向(垂直方向)の画角をφfovV、映像の高さをHピクセルとし、視線方向ベクトルが垂直方向にθtilt回転した場合を考える。この場合、視野中心付近にあるオブジェクトは映像の中で、下記式(2)で表されるピクセル数Dvだけ縦方向に移動する。
Figure 2012033038
従って、TN-n時点の映像を、視野中心の移動と逆の方向に、横にDH、縦にDVだけ平行移動すれば、視野中心のオブジェクトの画面内での位置をTN時点のものと一致させることができる。さらに、θrollが0でなければ、TN-n時点の映像を映像中心周りにθrollだけ回転させることにより、視野中心のオブジェクトの画面内の向きもTN時点のものと一致させることができる。これらにより、視野中央付近のオブジェクトが、操作入力に正しく対応して画面内を動くことになる。
上記の補正では、補正後の映像は、厳密には視野中心付近についてのみ正しく、それ以外の部分については近似となっている。この近似でも違和感を低減する効果が得られるが、より近似の精度を高めるためには、映像を平面への投影ではなく、円柱または球面への投影として捉えて処理を実行する方法がある。映像補正部3は、例えば、球面または円柱などの三次元空間における投影面に貼り付けられた画像を表すデータを、映像として受け取り、視野の変化に応じて補正した上で、球面の画像を平面に投影した映像を出力することができる。
図6Aおよび図6Bは、映像を球面への投影として捉えて処理する場合の、時刻TNおよび時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。図6Aおよび図6Bにおいて、上側は、投影面に垂直な面における視線方向ベクトルおよび視野の例を示し、下側は、映像の例を示す。
図6Aおよび図6Bに示す例では、映像補正部3は、平面上での平行移動ではなく、投影面である円柱面や球面上での映像を移動させる。図6Aに示す、円柱または球面などの三次元の投影面に貼り付けたTN-n時点の視野(2本の線S1で挟まれる範囲)の映像を、図6Bに示すように、TN時点の視野(2本の点線S2で挟まれる範囲)にあうように球面または円柱面上を移動させる。移動量は、TN-n時点の視線ベクトルとTN時点の視線ベクトルとの角度により決定することができる。あるいは、映像補正部3は、球面または円柱面に貼り付けられた映像のうち、映像生成後に更新された新たな表示すべき視野(例えばTN時点の視野)の範囲の映像を取り出して、補正後の映像として出力してもよい。
球面または円柱面上の映像を平面の映像に変換する処理は、映像補正部3が実行してもよいし、映像補正部3の外部に設けられた専用プロセッサが実行してもよい。このように球面または円柱面上で移動後の映像を再度平面に投影することでTN時点の近似映像を生成することができる。
なお、視野の回転がパンだけであれば投影面は円柱とすることができるが、ティルトやロールがあるなら球面で処理を行うことが好ましい。また、投影面は、球面または円柱面に限られず、例えば、立方体や直方体、その他の3次元空間における面であってもよい。このように、映像の変形処理を三次元で行うと計算負荷が高くなるが、例えば、昨今の標準的なグラフィクス用ハードウェアにおけるテクスチャマッピングの能力を活用すれば負荷を低減することができる。
(視野並進の補正)
視野が並進する場合(特に前後に移動する場合)には、視野が回転する場合に比べて、操作入力に対して映像が遅れていることはユーザに気付かれづらい。そのため、視野の回転についての補正を行うだけでも映像の違和感を低減する効果は得られる。
視点位置の視線方向と同じ方向の移動すなわち、前後移動について映像の補正を行う場合には、映像補正部3は、映像の拡大縮小により補正を行うことができる。例えば、映像生成後の補正を開始する時刻TNで、映像生成開始の時刻TN-nよりも視点位置が視線方向前方へ進んでいた場合、映像補正部3は、その移動距離に応じて映像を拡大することができる。
このときの拡大率は、奥行き方向(視線方向)のどの距離に着目するかに依存する。つまり、近くのオブジェクトに着目すればより拡大率を大きくすることが好ましく、逆に遠くに着目すれば拡大率を小さくすることが好ましい。このように、全ての距離のオブジェクトに対して正しい拡大率というものは存在しない。そのため、アプリケーションの特性に応じてもっとも違和感が少なくなるように、あらかじめ着目する距離(基準となる距離)を決め、メモリ等に記録しておくことができる。例えば、シミュ−ション装置がドライビングシミュレータであれば、仮想世界の視野前方において最も近い距離にある建物を基準(距離にして例えば十数メートル)にすることが考えられる。基準とする距離をD、視野の前方への移動距離をdとすると、拡大率Mは、例えば、下記式(3)を用いて計算できる。
Figure 2012033038
上下や左右移動など、視線方向に垂直な方向の視野移動について補正を行う場合には、映像の上下または左右への平行移動により補正を行うことができる。この場合も、映像補正部3は、補正量は着目する基準距離を決めてから、平行移動の量を決定することができる。例えば、基準とする距離をD、視野の右方向への移動距離をd、視点から映像の投影面までの距離をhとすると、映像を投影面上で左方向に平行移動する量sは、例えば下記式(4)により計算することができる。左への移動や上下の移動についても同様に補正量を計算することができる。この場合、映像補正部3は、視野の移動方向と逆の方向にsだけ映像を平行移動させる。
Figure 2012033038
以上、補正処理の具体例を説明したが、映像補正部3による補正処理は、上記例に限定されない。例えば、映像補正部3は、バッファメモリに記録された描画すべき視野の映像のうち、映像生成後に変化した視野に対応する領域のアドレスを特定し、この領域の映像を取り出して、表示する映像として出力するといった補正処理を実行することもできる。
[描画視野算出の具体例]
上記のように映像補正によってTN時点の近似映像を生成すると、映像を移動した後に未描画領域が発生する場合がある。例えば、TN時点の視野の範囲が、TN-n時点の視野に基づいて決定された描画すべき視野の範囲を超えている場合、超えた領域については映像データが生成されていないので未描画領域となる。視線移動が大きい場合にはこの未描画領域も大きくなり、それが別の違和感を引き起こしかねない。また、補正によって表示されなくなる領域については、逆に描画が無駄になってしまう。
例えば、図7Aは、映像生成の時点TN-nにおける表示すべき視野をそのまま描画し、TN時点の表示すべき視野を基に補正した場合の補正前後の映像例を示す図である。図7Aに示す例では、補正後の映像(下側の映像)は、視野の変化に応じて左へ平行移動しているため、右側が未描画領域Pとなっている。 そこで、第1および第2の実施形態では、描画視野算出部1を設けることにより、描画すべき視野の範囲を可変にしている。例えば、描画視野算出部1は、映像補正時点における表示すべき視野がなるべく含まれるように、映像生成時において描画すべき視野を計算し、映像生成部2に、その時点の表示すべき視野より余分に描画させることができる。これにより、補正によって映像が移動されても、余分に描画した分が新たに画面内に入ってくるため未描画領域が発生しにくくなる。また、補正によって不要になりそうな部分を描画しないよう制御することもできる。そのため、描画処理の無駄を減らすことができる。
例えば、図7Bは、映像生成の時点TN-nにおける表示すべき視野を基にそれより広い描画すべき視野を計算してその視野の範囲を描画し、TN時点の表示すべき視野を基に補正した場合の補正前後の映像例を示す図である。図7Bに示す例では、補正後の映像(下側の映像)は、視野の変化に応じて左へ平行移動している。しかし、平行移動分をカバーする程度に、元の視野の範囲R1より広い範囲R2について描画しているので、未描画領域は発生していない。
描画視野算出部1において描画すべき視野を求めるタイミングにおいては、映像補正時点は将来にあたる。そのため、将来の補正時点における表示すべき視野が、いかなる場合でも確実に描画すべき視野に含まれるようにすることは困難である。そこで、シミュレータにおける視野移動の傾向に基づいて、描画開始時点における表示すべき視野を基に描画すべき視野を求めるためのデータを予め決めてメモリに記録しておくことができる。例えば、描画開始時点の表示すべき視野から描画すべき視野への拡張の方向と、拡張の程度を示すパラメータを予めメモリに記録しておくことができる。このパラメータを用いて、描画視野算出部1は、シミュレータの特性に応じた視野移動範囲を予測し、適切な描画範囲を設定することができる。例えば、ドライビングシミュレータにおいては一般に視野が横方向にのみ移動し、視野の上下移動は主に車の揺れによるものに限られる傾向がある。この傾向を考慮して、描画すべき視野は、表示すべき視野を主に横方向に拡張することによって求めることができる。例えば、描画視野算出部1は、拡張は横方向の画角を一定量増やすことによって行っても良いし、画面上で描画範囲を横方向に一定ピクセル数だけ拡げるようにして行っても良い。画角や描画範囲の拡張方向および拡張量は、予め記録しておくこともできる。予め記録される拡張量は、例えば、シミュレーション部5の計算結果から、視野の横方向の動きの最大値を見積もることで計算することができる。
(視野の予測)
描画の無駄を減らすためには、表示すべき視野がどの方向に移動するかを予測して、それが含まれて、かつ、なるべく狭くなるように描画すべき視野を求めることが望ましい。そのために、描画視野算出部1において、例えば、下記の処理により、映像補正が行われる時刻と、その映像補正の時刻における表示すべき視野とを予測することができる。
例えば、描画部22a、22b、22cでの映像生成にかった時間の履歴を記録しておき、描画視野算出部1が、それらを用いて予測計算を行って映像生成にかかる時間の予測値を計算することができる。次の映像補正が行われる時刻については、予測計算を行って求めた値に、映像の圧縮伸張と送受信にかかる時間と、現在時刻を加算することで求めることができる。予測計算としては、例えば、描画にかかった時間の履歴データを、線形関数や多項式関数を当てはめる方法がある。あるいは、描画にかかった時間の値の平均値を、予測値として計算することもできる。
映像補正時点での表示すべき視野については、表示すべき視野の履歴を記録しておき、それらの履歴を用いて予測計算を行い、上記で求めた映像補正の予測時刻における視野を求めることができる。表示すべき視野は、例えば、視点位置、視線ベクトル、視野角、投影パラメータ等の要素の組み合わせで定義することができる。そのため、表示すべき視野を決める要素の値の時系列データを履歴として記録することができる。予測計算としては、例えば、履歴に対して線形関数や多項式関数を当てはめる方法がある。また、表示すべき視野を決める各要素の値の平均値を、それぞれ予測値として計算することもできる。このように、視野は視点位置、視線ベクトル、視野角などの要素の組み合わせによって表すことができるので、それぞれの要素について個別に予測値を計算することもできる。
精度のよい予測が計算できるのは、ある程度時間的に長いスパンにおける視野の変化であり、短時間の素早い視野の動きを正確に予測することは難しい。従って、例えば、数秒間単位の大まかな動きに対しては、描画視野算出部1による視野の予測計算によって追従し、無駄の少ない描画すべき視野を設定することができる。1秒前後やそれ以下の素早い視野の動きに対しては、描画すべき視野の内部で映像補正を行えるよう、描画視野算出部が描画すべき視野を設定することによってレスポンス良く対応することができる。
例えば、描画視野算出部1は、映像生成時の表示すべき視野を全ての方向に一定量拡張した視野に、過去の表示すべき視野の履歴を基に予測計算された視野を加えた範囲の視野を、描画すべき視野として算出することができる。このように、表示すべき視野を全ての方向に一定量拡張することで、短時間の素早い視野の動きをカバーし、かつ、履歴から予測される視野の範囲で、比較的長い時間の視野の動きをカバーすることができる。
なお、上記の補正処理および描画視野算出処理は、上記第1の実施形態にも適用することができる。
(補正を行う部分と行わない部分への分割)
表示すべき視野の中に、視点位置からの距離が大きく異なる複数のオブジェクトが含まれる場合、映像補正部3が、複数のオブジェクトを含む映像を一括して補正すると、映像中の複数のオブジェクト画像を同じ量だけ動かすことになる。その結果、却って違和感が増すことがある。例えば、ドライビングシミュレータにおいて、表示すべき視野の中に自車の車体(内装を含む)のように外界とは異なる動きをする部分が含まれる場合、映像の補正を行うと視野に対して車体や内装が外界と一体になって動いてしまう。その結果、却って違和感が増すことがある。
そこで、表示すべき視野に含まれる仮想世界の一部のオブジェクトの映像を生成する映像生成部と、前記一部のオブジェクトとは視点からの距離が異なる他のオブジェクトの映像を生成する第二の映像生成部とを設けることができる。そして、映像生成部で生成された映像を補正した上で、第二の生成部で生成された映像と合成することができる。これにより、視点からの距離が異なるオブジェクトが含まれる映像であっても違和感を増すことなく、補正することができる。本実施形態では、一例として、サーバ12が映像生成部2を有し、クライアント13が第二の映像生成部の一例であるローカル描画部11aを有する構成となっている。
例えば、上記ドライビングシミュレータでは、外界と車体とを分けて描画し、補正を行った後に両者を合成することができる。図8は、仮想世界の複数のオブジェクトが分けて描画された後に合成される映像の例を示す図である。図8に示す例では、車体のオブジェクトを前景Zとして描画したフレームP2と、外界の建物を近景Kとし山を遠景(背景)Eとして描画したフレームP1とがそれぞれ独立して生成されている。フレームP1は、映像補正部3により補正された後、フレームP2と合成される。その結果、フレームP3が生成される。
図8に示す例の場合、仮想世界の主体である外界をサーバ12側の描画部22で描画し、描画負担の小さい車体をクライアント13側のローカル描画部11aで描画することができる。このようにすると、サーバ12側の映像は遅延するので補正する必要があるが、クライアント13側の映像については映像生成にかかる時間が短く映像伝送による遅延の影響も少ないために補正する必要がない。
本実施形態では、クライアント13に、ローカル描画部11aが設けられる。また、例えば、車体を描画するためのモデルデータやテクスチャデータを含むローカル描画データがクライアント13に記録される。なお、ローカル描画データはあらかじめクライアント13側に記録しておいてもよいし、サーバ12と接続した後で必要な分だけサーバ12からダウンロードしてもよい。シミュレーション部5によって更新されたオブジェクトの情報(位置、姿勢、属性など)は、サーバ12の映像生成部2と、クライアント13のローカル描画部11aへ送られる。一例として、映像生成部2へは、近景および遠景の映像を生成するための外界に関する情報が、ローカル描画部11aへは車体と内装を描画するための情報が送られることになる。ローカル描画部11aへ送られる更新情報は、更新情報送信部15および更新情報受信部25を通して送られる。更新情報は、例えば、ローカル描画部11aの描画対象のオブジェクトの属性のうち更新された属性を示すデータとすることができる。更新情報のデータサイズは、映像情報に比べて、送受信の遅延時間は無視できる程度である小さいことが好ましい。
ローカル描画部11aは、シミュレーション部5から、視野送信部16および視野受信部26を介して送られてきた最新の表示すべき視野と、更新情報送信部15、更新情報受信部25を介して送られてきたローカル描画データとを用いて映像生成を行う。そして、合成部9が、映像補正部3によって補正された映像と、ローカル描画部11aによって生成された映像とを重ね合わせて合成する。ローカル描画部11aは、描画を担当するオブジェクトが写っていない映像の領域(図8の例では、車体以外の領域)を透明としておくことにより、分担して描画した結果を重ね合わせることによって一つの映像に合成することができる。図8の例では、車体と、その向こう側に見える外界とが正しく合成される。
図8に示す車体と外界に分ける例のように、オブジェクトを前後に交わらないように分けられる場合には、合成部9による映像の合成は単純な重ね合わせでよい。しかし、車体の上に乗ってくるオブジェクトがある場合など、奥行き方向に重なりが出てくると、単純な重ね合わせによる合成では正しく合成できない場合が出てくる。その場合、合成部9は、それぞれの映像を描画する時に用いられたZバッファの内容を活用することで、正しい合成が可能になる。Zバッファは映像の奥行き方向の情報を記録するメモリ領域である。例えば、描画結果受信部28および更新情報受信部25は、それぞれの映像にZバッファの内容を付属させて受信し、合成部9では、各ピクセルのZバッファの値を比較して手前にある方のピクセルの色を採用しながら重ね合わせ合成を行うことができる。サーバ12側で描画した映像については、合成の前に、映像そのものと全く同じ補正をZバッファの内容についても行うことができる。これにより、単純な重ね合わせだけでは奥行き方向の位置関係を正しく表示できない場合でも、適切に映像を合成することができる。
なお、本実施形態における第二の映像生成の処理および合成処理の例は、上記第1の実施形態にも適用することができる。
[遅延の隠蔽]
図9は、図3に示すシミュレーションシステムの動作例を示す処理フロー図である。図9に示す例では、シミュレーション部5が、操作入力があった時点TN-4、TN-3、TN-2、TN-1、TNで仮想世界のオブジェクトデータの更新と、表示すべき視野の更新を実行する。なお、シミュレーション部5は操作入力のタイミングとは別に、一定周期で更新処理を実行してもよい。
例えば、時刻TN-4における更新処理(Op1)においてシミュレーション部5は、更新した表示すべき視野を描画視野算出部1へ通知する。描画視野算出部1は、シミュレーション部5から表示すべき視野を受けると、描画すべき視野の計算(Op2)を開始する。描画視野算出部1が計算した描画すべき視野は、描画部22aに渡され、描画部22aが描画すべき視野の映像を生成する(Op3)。生成された映像は、映像エンコーダ17による圧縮、描画結果送信部18によるクライアント13への送信、クライアント13の描画結果受信部28による受信、映像デコーダ27による伸長を経て(Op4)、映像補正部3へ渡される。映像補正部3は、映像を受けると、ほぼ同時に、Op5においてシミュレーション部5により時刻TNにおいて更新された最新の表示すべき視野も受け取る。映像補正部3は、最新の表示すべき視野の範囲が表示されるよう映像を補正する(Op6)。
図9に示す処理では、実際には、時刻TN-4におけるシミュレーション部5の更新処理開始から、映像補正部3による補正完了までの時間TD1だけ遅延が発生している。しかし、映像補正部3で補正された映像は、時刻TNにおいて更新された表示すべき視野の映像に近いものとなっている。そのため、補正後の映像を見たユーザが感じる遅延、すなわち見かけの遅延は、時刻TNから補正完了までの時間TD2になる。
このように、本実施形態では、映像の生成や転送にある程度の遅延があっても、ユーザの操作入力に対して映像が遅れずに応答しているように見せかけることができる。そのため、映像の遅延による違和感を大幅に低減することができる。これにより、例えば、並列描画を行う大規模なサーバで映像生成を行い、映像をクライアントからネットワークを介してリアルタイムで利用するシステムを構築することが可能になる。すなわち、高品質あるいは大量のデータを用いた映像生成が可能だが遅延が避けられないシミュレータにおいて、これまで困難であったリアルタイム・高レスポンスでのネットワークを介した利用が可能になる。
例えば、仮想世界の映像生成をサーバコンピュータで行い、結果の映像を、ネットワークを通じてクライアントコンピュータへ転送する構成を採ることにより、高い描画性能や大量のデータをサーバコンピュータ側に集約することができるようになる。これにより、クライアントコンピュータに必要とされる性能が低減され、シミュレータを多数の利用者へ展開することが、コストや手間の面で容易になる。オンラインの3Dゲームであれば、各プレーヤの用意するコンピュータが安価で標準的な性能のものであっても、その性能を超えた高品質な映像を楽しめるようになる。
このようなネットワークを介して利用可能なシミュレータでは、サーバコンピュータが描画した映像を、フレームレートの低下を防ぐためにコーデックによる圧縮・伸張を行いつつネットワークを通じて伝送すると、ユーザの操作に対する映像の遅延を避けることができない。本実施形態によれば、この遅延を隠蔽し、出力の映像の違和感を低減することができる。そのため、操作に対する素早いレスポンスが必要なアプリケーションをネットワーク経由で利用することが可能になる。また、オンラインの3Dゲームについても、高品質な描画をサーバコンピュータで行い、クライアントで映像を表示する構成が実現できる。
[コンピュータ構成]
図3に示すシミュレーションシステムのサーバ12およびクライアント13は、それぞれ独立したコンピュータにより構成することができる。それぞれのコンピュータは、第1の実施形態と同様、汎用コンピュータであってもよいし、専用機でもよい。また、コンピュータは、CPUのほか、DSPのような画像処理専用プロセッサを含んでもよい。例えば、サーバ12の映像生成部2における描画部22a、22b、22cは、それぞれ3台の独立したプロセッサで構成することができる。
また、シミュレーション部5、描画視野算出部1と、映像生成部2に、映像生成部2が生成した映像と、前記映像の前記描画すべき視野の基となった前記表示すべき視野と、前記映像の生成開始後に計算された新たな表示すべき視野とを、映像補正部3を有するクライアント装置へ送信する送信部を備えた模擬映像生成装置も本発明の実施形態に含まれる。
さらに、シミュレーション部5を有するサーバ装置から、映像生成時の表示すべき視野より広い視野である描画すべき視野と、仮想世界を表すデータを基に生成された当該描画すべき視野の映像と、当該映像の生成開始後に計算された新たな表示すべき視野とを受信する受信部と、映像補正部3と、映像補正部3で補正された映像を表示する表示部4(出力部の一例)を備えた模擬映像表示装置も本発明の実施形態に含まれる。
1 描画視野算出部
2 映像生成部
3 映像補正部
4 表示部
5 シミュレーション部
6 入力部
7 描画視野保持部
8 表示視野保持部
9 合成部
10、10a シミュレーション装置
11 第二の映像生成部
12 シミュレータサーバ(サーバ装置)
13 シミュレータクライアント(クライアント装置)

Claims (11)

  1. ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
    前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出部と、
    前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成部と、
    前記映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正部と、を備える、模擬映像生成装置。
  2. 前記描画視野算出部は、シミュレーション部によって計算された前記表示すべき視野の履歴に基づいて、前記映像の生成開始後に表示すべき視野となりうる範囲を計算し、当該範囲を含む視野を前記描画すべき視野とする、請求項1に記載の模擬映像生成装置。
  3. 前記映像の生成開始後に計算された新たな表示すべき視野を基に、当該新たな表示すべき視野における仮想世界の一部の映像を生成する第二の映像生成部と、
    前記映像補正部により補正された映像と、前記第二の映像生成部により生成された映像とを合成する合成部とをさらに備える、請求項1または2に記載の模擬映像生成装置。
  4. 前記描画算出部は、前記映像の生成開始から前記映像の補正開始までにかかる時間の予測値を、前記映像の生成にかかった時間の履歴を用いて計算し、当該予測値に応じて、前記描画すべき視野の範囲を調整する、請求項1〜3のいずれか1項に記載の模擬映像生成装置。
  5. 映像補正部は、前記描画すべき視野の映像のうち、前記映像の生成開始後に計算された新たな表示すべき視野に対応する領域の映像を、表示する映像とする補正をする、請求項1〜4のいずれか1項に記載の模擬映像生成装置。
  6. 前記補正部は、前記映像の前記描画すべき視野の基になった前記表示すべき視野から、前記映像の生成開始後に計算された新たな表示すべき視野への変化の量および方向に応じて、前記描画すべき視野の映像の表示位置を移動させる、請求項1〜5のいずれか1項に記載の模擬映像生成装置。
  7. サーバ装置およびクライアント装置を含むシミュレーションシステムであって、
    前記サーバ装置は、
    ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
    前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出部と、
    前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成部と、
    前記映像と、前記映像の前記描画すべき視野の基となった前記表示すべき視野と、前記映像の生成開始後に計算された新たな表示すべき視野とを前記クライアント装置へ送信する送信部と、を有し、
    前記クライアント装置は、
    前記映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正部を有する、シミュレーションシステム。
  8. ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
    前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出部と、
    前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成部と、
    前記映像と、前記映像の前記描画すべき視野の基となった前記表示すべき視野と、前記映像の生成開始後に計算された新たな表示すべき視野とを、前記映像を当該新たな表示すべき視野に対応する映像に補正する映像補正部を有するクライアント装置へ送信する送信部とを備えた、模擬映像生成装置。
  9. ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部を備えたサーバ装置から、前記表示すべき視野より広い視野である描画すべき視野と、前記仮想世界を表すデータを基に生成された当該描画すべき視野の映像と、当該映像の生成開始後に計算された新たな表示すべき視野とを受信する受信部と、
    前記映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正部と、
    前記補正された映像を表示する出力部とを備えた、模擬映像表示装置。
  10. ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション処理と、
    前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出処理と、
    前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成処理と、
    前記映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正処理と、コンピュータに実行させる、模擬映像生成プログラム。
  11. コンピュータのプロセッサが、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション工程と、
    プロセッサが、前記表示すべき視野より広い視野である、描画すべき視野を計算する描画視野算出工程と、
    プロセッサが、前記描画すべき視野の映像を、前記仮想世界を表すデータを基に生成する映像生成工程と、
    プロセッサが、前記映像の生成開始後に計算された新たな表示すべき視野を用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する映像補正工程と含む、模擬映像生成方法。
JP2010172630A 2010-07-30 2010-07-30 模擬映像生成装置、方法、プログラム Expired - Fee Related JP5652037B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010172630A JP5652037B2 (ja) 2010-07-30 2010-07-30 模擬映像生成装置、方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010172630A JP5652037B2 (ja) 2010-07-30 2010-07-30 模擬映像生成装置、方法、プログラム

Publications (2)

Publication Number Publication Date
JP2012033038A true JP2012033038A (ja) 2012-02-16
JP5652037B2 JP5652037B2 (ja) 2015-01-14

Family

ID=45846359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010172630A Expired - Fee Related JP5652037B2 (ja) 2010-07-30 2010-07-30 模擬映像生成装置、方法、プログラム

Country Status (1)

Country Link
JP (1) JP5652037B2 (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206188A (ja) * 2012-03-28 2013-10-07 Fujitsu Ltd シミュレーション方法、シミュレーション装置およびシミュレーションプログラム
JP2014109972A (ja) * 2012-12-04 2014-06-12 Mitsubishi Precision Co Ltd 画像生成装置
JP2015095045A (ja) * 2013-11-11 2015-05-18 株式会社ソニー・コンピュータエンタテインメント 画像生成装置および画像生成方法
JP2016162033A (ja) * 2015-02-27 2016-09-05 株式会社ソニー・インタラクティブエンタテインメント 画像生成システム、画像生成方法、プログラム及び情報記憶媒体
WO2017208957A1 (ja) * 2016-06-01 2017-12-07 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成システム、および画像生成方法
WO2017221784A1 (ja) * 2016-06-21 2017-12-28 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成システム、および画像生成方法
JP2018142344A (ja) * 2013-03-15 2018-09-13 マジック リープ, インコーポレイテッドMagic Leap,Inc. 表示システムおよび方法
WO2019116994A1 (ja) * 2017-12-12 2019-06-20 株式会社ソニー・インタラクティブエンタテインメント 画像補正装置、画像補正方法およびプログラム
KR20190133716A (ko) * 2017-03-27 2019-12-03 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 후기 재투사 전력을 최적화하기 위한 레이어 서브영역들에 대한 재투사 프로세싱의 선택적 적용
WO2019229816A1 (ja) * 2018-05-28 2019-12-05 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成方法、およびプログラム
JP2020195154A (ja) * 2016-08-22 2020-12-03 マジック リープ, インコーポレイテッドMagic Leap,Inc. 仮想現実、拡張現実、および複合現実システムおよび方法
JPWO2021192271A1 (ja) * 2020-03-27 2021-09-30
WO2021199184A1 (ja) * 2020-03-30 2021-10-07 株式会社ソニー・インタラクティブエンタテインメント 画像表示システム、画像処理装置、画像表示方法、およびコンピュータプログラム
WO2021199128A1 (ja) * 2020-03-30 2021-10-07 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像生成方法およびコンピュータプログラム
US11736672B2 (en) 2018-12-27 2023-08-22 Faurecia Clarion Electronics Co., Ltd. Image processor and method for virtual viewpoint synthesis in a vehicle-based camera system
JP7442608B2 (ja) 2016-08-26 2024-03-04 マジック リープ, インコーポレイテッド 仮想現実および拡張現実ディスプレイシステムのための連続時間ワーピングおよび両眼時間ワーピングおよび方法
US12034786B2 (en) 2020-03-30 2024-07-09 Sony Interactive Entertainment Inc. Image processing device, image data transfer device, and image generation method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324799A (ja) * 1992-05-15 1993-12-07 Hitachi Ltd バーチャルリアリティ制御方法および装置
JPH09190547A (ja) * 1996-01-11 1997-07-22 Hitachi Ltd 画像合成表示装置および方法
JPH11153987A (ja) * 1997-11-19 1999-06-08 Olympus Optical Co Ltd グラフィック表示装置
JP2004109994A (ja) * 2002-08-30 2004-04-08 Olympus Corp 頭部装着型画像表示システム装置及びその画像処理方法
JP2005309638A (ja) * 2004-04-20 2005-11-04 Sony Corp サーバ装置、表示装置、表示システム、表示方法及びそのプログラム
JP2009070215A (ja) * 2007-09-14 2009-04-02 Making:Kk シミュレーション装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324799A (ja) * 1992-05-15 1993-12-07 Hitachi Ltd バーチャルリアリティ制御方法および装置
JPH09190547A (ja) * 1996-01-11 1997-07-22 Hitachi Ltd 画像合成表示装置および方法
JPH11153987A (ja) * 1997-11-19 1999-06-08 Olympus Optical Co Ltd グラフィック表示装置
JP2004109994A (ja) * 2002-08-30 2004-04-08 Olympus Corp 頭部装着型画像表示システム装置及びその画像処理方法
JP2005309638A (ja) * 2004-04-20 2005-11-04 Sony Corp サーバ装置、表示装置、表示システム、表示方法及びそのプログラム
JP2009070215A (ja) * 2007-09-14 2009-04-02 Making:Kk シミュレーション装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
佐藤誠, 外1名: ""高臨場感VR環境とマルチモーダルインタラクション"", 映像情報メディア学会技術報告, vol. 第32巻, 第49号, JPN6014014873, 13 November 2008 (2008-11-13), JP, pages 1 - 6, ISSN: 0002920732 *

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206188A (ja) * 2012-03-28 2013-10-07 Fujitsu Ltd シミュレーション方法、シミュレーション装置およびシミュレーションプログラム
JP2014109972A (ja) * 2012-12-04 2014-06-12 Mitsubishi Precision Co Ltd 画像生成装置
JP2018142344A (ja) * 2013-03-15 2018-09-13 マジック リープ, インコーポレイテッドMagic Leap,Inc. 表示システムおよび方法
US11854150B2 (en) 2013-03-15 2023-12-26 Magic Leap, Inc. Frame-by-frame rendering for augmented or virtual reality systems
KR102560629B1 (ko) * 2013-03-15 2023-07-26 매직 립, 인코포레이티드 디스플레이 시스템 및 방법
KR20220144892A (ko) * 2013-03-15 2022-10-27 매직 립, 인코포레이티드 디스플레이 시스템 및 방법
KR102458124B1 (ko) * 2013-03-15 2022-10-21 매직 립, 인코포레이티드 디스플레이 시스템 및 방법
KR20210129277A (ko) * 2013-03-15 2021-10-27 매직 립, 인코포레이티드 디스플레이 시스템 및 방법
US11016297B2 (en) 2013-11-11 2021-05-25 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method
EP3070680A4 (en) * 2013-11-11 2017-07-12 Sony Interactive Entertainment Inc. Image-generating device and method
RU2638776C1 (ru) * 2013-11-11 2017-12-15 Сони Интерактив Энтертейнмент Инк. Устройство генерирования изображения и способ
US10133073B2 (en) 2013-11-11 2018-11-20 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method
US11914147B2 (en) 2013-11-11 2024-02-27 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method using frequency lower than display frame rate
JP2015095045A (ja) * 2013-11-11 2015-05-18 株式会社ソニー・コンピュータエンタテインメント 画像生成装置および画像生成方法
EP4235367A3 (en) * 2013-11-11 2023-11-15 Sony Interactive Entertainment Inc. Image-generating device and method
CN111696213B (zh) * 2013-11-11 2023-10-20 索尼互动娱乐股份有限公司 图像生成装置、图像生成方法以及计算机可读介质
CN106062826B (zh) * 2013-11-11 2020-05-15 索尼互动娱乐股份有限公司 图像生成装置以及图像生成方法
US10684475B2 (en) 2013-11-11 2020-06-16 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method
US11592668B2 (en) 2013-11-11 2023-02-28 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method using frequency lower than display frame rate
CN111696213A (zh) * 2013-11-11 2020-09-22 索尼互动娱乐股份有限公司 图像生成装置、图像生成方法以及计算机可读介质
US20160282619A1 (en) * 2013-11-11 2016-09-29 Sony Interactive Entertainment Inc. Image generation apparatus and image generation method
CN106062826A (zh) * 2013-11-11 2016-10-26 索尼互动娱乐股份有限公司 图像生成装置以及图像生成方法
JP2016162033A (ja) * 2015-02-27 2016-09-05 株式会社ソニー・インタラクティブエンタテインメント 画像生成システム、画像生成方法、プログラム及び情報記憶媒体
WO2017208957A1 (ja) * 2016-06-01 2017-12-07 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成システム、および画像生成方法
WO2017221784A1 (ja) * 2016-06-21 2017-12-28 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成システム、および画像生成方法
US10871822B2 (en) 2016-06-21 2020-12-22 Sony Interactive Entertainment Inc. Image generation apparatus, image generation system, and image generation method
US11823360B2 (en) 2016-08-22 2023-11-21 Magic Leap, Inc. Virtual, augmented, and mixed reality systems and methods
JP2020195154A (ja) * 2016-08-22 2020-12-03 マジック リープ, インコーポレイテッドMagic Leap,Inc. 仮想現実、拡張現実、および複合現実システムおよび方法
JP7442608B2 (ja) 2016-08-26 2024-03-04 マジック リープ, インコーポレイテッド 仮想現実および拡張現実ディスプレイシステムのための連続時間ワーピングおよび両眼時間ワーピングおよび方法
KR20190133716A (ko) * 2017-03-27 2019-12-03 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 후기 재투사 전력을 최적화하기 위한 레이어 서브영역들에 대한 재투사 프로세싱의 선택적 적용
JP7158404B2 (ja) 2017-03-27 2022-10-21 マイクロソフト テクノロジー ライセンシング,エルエルシー 後期再投影パワーを最適化するためのレイヤサブ領域に対する再投影処理の選択的適用
KR102663558B1 (ko) * 2017-03-27 2024-05-09 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 후기 재투사 전력을 최적화하기 위한 시스템, 디바이스, 및 방법
JP2020518885A (ja) * 2017-03-27 2020-06-25 マイクロソフト テクノロジー ライセンシング,エルエルシー 後期再投影パワーを最適化するためのレイヤサブ領域に対する再投影処理の選択的適用
US10969591B2 (en) 2017-12-12 2021-04-06 Sony Interactive Entertainment Inc. Image correction apparatus, image correction method and program
WO2019116994A1 (ja) * 2017-12-12 2019-06-20 株式会社ソニー・インタラクティブエンタテインメント 画像補正装置、画像補正方法およびプログラム
JP2019106628A (ja) * 2017-12-12 2019-06-27 株式会社ソニー・インタラクティブエンタテインメント 画像補正装置、画像補正方法およびプログラム
JP7047085B2 (ja) 2018-05-28 2022-04-04 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成方法、およびプログラム
JPWO2019229816A1 (ja) * 2018-05-28 2021-05-13 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成方法、およびプログラム
US11270673B2 (en) 2018-05-28 2022-03-08 Sony Interactive Entertainment Inc. Image generation apparatus, image generation method, and program
WO2019229816A1 (ja) * 2018-05-28 2019-12-05 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置、画像生成方法、およびプログラム
US11736672B2 (en) 2018-12-27 2023-08-22 Faurecia Clarion Electronics Co., Ltd. Image processor and method for virtual viewpoint synthesis in a vehicle-based camera system
JPWO2021192271A1 (ja) * 2020-03-27 2021-09-30
JP7324935B2 (ja) 2020-03-27 2023-08-10 株式会社安川電機 ロボット制御システム、ロボット制御方法、およびロボット制御プログラム
WO2021192271A1 (ja) * 2020-03-27 2021-09-30 株式会社安川電機 ロボット制御システム、ロボット制御方法、およびロボット制御プログラム
JP7441936B2 (ja) 2020-03-30 2024-03-01 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像生成方法およびコンピュータプログラム
WO2021199184A1 (ja) * 2020-03-30 2021-10-07 株式会社ソニー・インタラクティブエンタテインメント 画像表示システム、画像処理装置、画像表示方法、およびコンピュータプログラム
WO2021199128A1 (ja) * 2020-03-30 2021-10-07 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像生成方法およびコンピュータプログラム
JP7496412B2 (ja) 2020-03-30 2024-06-06 株式会社ソニー・インタラクティブエンタテインメント 画像表示システム、画像処理装置、画像表示方法、およびコンピュータプログラム
US12034786B2 (en) 2020-03-30 2024-07-09 Sony Interactive Entertainment Inc. Image processing device, image data transfer device, and image generation method

Also Published As

Publication number Publication date
JP5652037B2 (ja) 2015-01-14

Similar Documents

Publication Publication Date Title
JP5652037B2 (ja) 模擬映像生成装置、方法、プログラム
US11592668B2 (en) Image generation apparatus and image generation method using frequency lower than display frame rate
JP6898430B2 (ja) 仮想現実および拡張現実ディスプレイシステムのための連続時間ワーピングおよび両眼時間ワーピングおよび方法
US10410562B2 (en) Image generating device and image generating method
EP3760287A1 (en) Method and device for generating video frames
JP4989417B2 (ja) 画像表示システム、画像表示装置及びその制御方法、コンピュータプログラム
CN109479114A (zh) 光场捕获
JP7030010B2 (ja) 立体映像奥行き圧縮装置および立体映像奥行き圧縮プログラム
TWI653551B (zh) 虛擬實境影像傳輸方法、播放方法及利用其的程式
CN114401414A (zh) 沉浸式直播的信息显示方法及系统、信息推送方法
JP2003153263A (ja) 映像表示システムおよびその方法
KR20170031676A (ko) 가상현실영상 전송방법, 재생방법 및 이를 이용한 프로그램
JP2017062279A (ja) 画像処理装置および画像処理方法
JP2020509706A (ja) 仮想現実映像の再生方法及びこれを用いたプログラム
CN111345037B (zh) 虚拟现实影像提供方法及利用其的程序
JP2020071718A (ja) 情報処理装置、情報処理方法及びプログラム
JP2017134775A (ja) 画像処理装置、画像処理方法及びプログラム
KR102192153B1 (ko) 가상현실 영상 제공 방법 및 이를 이용한 프로그램
JP2020106655A (ja) 情報処理装置、情報処理方法及びプログラム
JP7354186B2 (ja) 表示制御装置、表示制御方法および表示制御プログラム
EP4336459A1 (en) Information processing device, information processing method, and program
JP2011048545A (ja) 画像合成装置及びプログラム
JP2023028330A (ja) 情報処理装置、情報処理方法及びプログラム
JP2022032838A (ja) 送信装置、受信装置、ネットワークノード、及びプログラム
JP2020071394A (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130604

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140722

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140908

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141021

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141103

R150 Certificate of patent or registration of utility model

Ref document number: 5652037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees